Support prelude/start-process

If you refer to the previous commit where I change shell-command usages to
start-process function calls, you'll see the rationale for why I prefer
start-process.

This commit introduces a more ergonomic API for start-process that fits most of
my current use-cases of it. This cleans up the code. I have introduced a bug in
the way that I'm tokenizing the COMMAND value. I've tracked that with a
TODO. For now it only affects the `xmodmap -e '<command-string>'` calls, which
isn't too disruptive.
This commit is contained in:
William Carroll 2019-12-23 17:31:42 +00:00
parent c078f04526
commit 5785a5d126
8 changed files with 93 additions and 62 deletions

View file

@ -10,6 +10,7 @@
;; Dependencies
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'prelude)
(require 'fs)
(require 'cycle)
(require 'string)
@ -34,12 +35,9 @@
"Set computer wallpaper to image at `PATH' using `feh` under-the-hood.
`PATH' can be absolute or relative since `f-expand' is called in the function
body to ensure feh can resolve the path."
(start-process "*feh<wallpaper/set>*"
nil
"feh"
"--bg-scale"
"--no-feh-bg"
(f-expand path)))
(prelude/start-process
:name "wallpaper/set"
:command (string/format "feh --bg-scale --no-feh-bg %s" (f-expand path))))
(defun wallpaper/whitelist-set (wallpaper)
"Focuses the WALLPAPER in the `wallpaper/whitelist' cycle."