c00kiemon5ter / monsterwm

tiny but monstrous tiling window manager
https://github.com/c00kiemon5ter/monsterwm
Other
335 stars 44 forks source link

Cannot spawn() amixer #15

Closed vixus0 closed 11 years ago

vixus0 commented 12 years ago

When I have amixer commands bound to MOD4+XK_F# they don't seem to run. The commands are declared as follows:

static const char vol_mt[] = { "amixer sset Master,0 toggle", NULL }; static const char vol_up[] = { "amixer sset Master,0 5%+", NULL }; static const char *vol_dn[] = { "amixer sset Master,0 5%-", NULL };

and bound like so:

{ MOD4, XK_F3, spawn, {.com = vol_mt}}, { MOD4, XK_F5, spawn, {.com = vol_dn}}, { MOD4, XK_F6, spawn, {.com = vol_up}},

all other spawn bindings work so I'm not sure why these won't. Maybe because they need to run in a shell? I don't want to run urxvtc -e because it temporarily opens up a window and messes my layout up.

c00kiemon5ter commented 11 years ago

hello,

the command must in the format:

... = { "cmd", "arg1", "arg2", .., NULL };

this should fix your problem.

vixus0 commented 11 years ago

Thank you, but this doesn't work for amixer. Instead, I had to create bashscript that runs these commands for me. That seems to work.

On 9 November 2012 00:23, Ivan Kanakarakis notifications@github.com wrote:

hello,

the command must in the format:

... = { "cmd", "arg1", "arg2", .., NULL };

this should fix your problem.

— Reply to this email directly or view it on GitHubhttps://github.com/c00kiemon5ter/monsterwm/issues/15#issuecomment-10211065.

c00kiemon5ter commented 11 years ago

I'm fairly certain that if you try it like this it will work:

static const char *vol_mt[]  = { "amixer", "sset", "Master,0", "toggle", NULL };

that is the syntax I showed you above.