dot/e16-bindings, dot/xinitrc: Fix shell quoting for `pavucontrol'.
authorMark Wooding <mdw@distorted.org.uk>
Thu, 17 Feb 2022 19:36:27 +0000 (19:36 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Thu, 17 Feb 2022 19:36:27 +0000 (19:36 +0000)
This is a hopeless mess.  Hack around it by invoking a shell explicitly
to do the redirection.  Get `xinitrc' to help by using `eval' to
handle quotes correctly when splitting into words.

dot/e16-bindings
dot/xinitrc

index 8c12e38..5d604c8 100644 (file)
@@ -59,7 +59,7 @@ KeyDown   C5        v wop * th available
 KeyDown   C5        w menus show winops.menu
 KeyDown   C5        x wop * close
 KeyDown   C5        y exec xfce4-find-cursor
-KeyDown   C5 numbersign exec xinitcmd pavucontrol >/dev/null 2>&1
+KeyDown   C5 numbersign exec xinitcmd "sh -c 'pavucontrol >/dev/null 2>&1'"
 KeyDown   C5 apostrophe exec xinitcmd disobedience -u$(realpath $HOME/.disorder/passwd)
 KeyDown   C5 semicolon exec disorder-notify next-config
 KeyDown   C5     plus exec disorder-notify volume-up
index 4e03412..89105c1 100755 (executable)
@@ -441,7 +441,7 @@ EOF
        eval "${line#!}"
        ;;
       *)
-       set -- $line
+       eval "set -- $line"
        run bgclients "$@"
        ;;
     esac