add music control to dwm
authorMart Lubbers <mart@martlubbers.net>
Fri, 27 Jul 2018 06:08:36 +0000 (08:08 +0200)
committerMart Lubbers <mart@martlubbers.net>
Fri, 27 Jul 2018 06:08:36 +0000 (08:08 +0200)
config.h/dwm/config.h

index 84eda27..77868b1 100644 (file)
@@ -71,53 +71,58 @@ static const char *brightdown[] = { "xbacklight", "-inc", "5", NULL };
 static const char *volume_mute[] = {"pactl", "set-sink-mute", "@DEFAULT_SINK@", "toggle", NULL};
 static const char *volume_dec[] = {"pactl", "set-sink-volume", "@DEFAULT_SINK@", "-5%", NULL};
 static const char *volume_inc[] = {"pactl", "set-sink-volume", "@DEFAULT_SINK@", "+5%", NULL};
+static const char *toggle_music[] = {"quodlibet", "--play-pause", NULL};
 
 static Key keys[] = {
        /* modifier                     key        function        argument */
-       { MODKEY,                       XK_p,      spawn,          {.v = dmenucmd } },
-       { MODKEY|ShiftMask,             XK_Return, spawn,          {.v = termcmd } },
-       { MODKEY,                       XK_y,      spawn,          {.v = passmenu } },
-       { MODKEY|ShiftMask,             XK_y,      spawn,          {.v = passmenu_type } },
-       { MODKEY,                       XK_Print,  spawn,          {.v = scr } },
-       { MODKEY|ShiftMask,             XK_Print,  spawn,          {.v = scr_sel } },
-       { MODKEY|ShiftMask,             XK_l,      spawn,          {.v = lock } },
-       { 0 ,        XF86XK_MonBrightnessUp,   spawn,          {.v = brightup } },
-       { 0 ,        XF86XK_MonBrightnessDown, spawn,          {.v = brightdown } },
-       { 0 ,        XF86XK_AudioLowerVolume,  spawn,          {.v = volume_dec } },
-       { 0 ,        XF86XK_AudioMute,         spawn,          {.v = volume_mute } },
-       { 0 ,        XF86XK_AudioRaiseVolume,  spawn,          {.v = volume_inc } }, 
-       { MODKEY,                       XK_b,      togglebar,      {0} },
-       { MODKEY,                       XK_j,      focusstack,     {.i = +1 } },
-       { MODKEY,                       XK_k,      focusstack,     {.i = -1 } },
-       { MODKEY,                       XK_i,      incnmaster,     {.i = +1 } },
-       { MODKEY,                       XK_d,      incnmaster,     {.i = -1 } },
-       { MODKEY,                       XK_h,      setmfact,       {.f = -0.05} },
-       { MODKEY,                       XK_l,      setmfact,       {.f = +0.05} },
-       { MODKEY,                       XK_Return, zoom,           {0} },
-       { MODKEY,                       XK_Tab,    view,           {0} },
-       { MODKEY|ShiftMask,             XK_c,      killclient,     {0} },
-       { MODKEY,                       XK_t,      setlayout,      {.v = &layouts[0]} },
-       { MODKEY,                       XK_f,      setlayout,      {.v = &layouts[1]} },
-       { MODKEY,                       XK_m,      setlayout,      {.v = &layouts[2]} },
-       { MODKEY,                       XK_space,  setlayout,      {0} },
-       { MODKEY|ShiftMask,             XK_space,  togglefloating, {0} },
-       { MODKEY,                       XK_0,      view,           {.ui = ~0 } },
-       { MODKEY|ShiftMask,             XK_0,      tag,            {.ui = ~0 } },
-       { MODKEY,                       XK_comma,  focusmon,       {.i = -1 } },
-       { MODKEY,                       XK_period, focusmon,       {.i = +1 } },
-       { MODKEY|ShiftMask,             XK_comma,  tagmon,         {.i = -1 } },
-       { MODKEY|ShiftMask,             XK_period, tagmon,         {.i = +1 } },
-       TAGKEYS(                        XK_1,                      0)
-       TAGKEYS(                        XK_2,                      1)
-       TAGKEYS(                        XK_3,                      2)
-       TAGKEYS(                        XK_4,                      3)
-       TAGKEYS(                        XK_5,                      4)
-       TAGKEYS(                        XK_6,                      5)
-       TAGKEYS(                        XK_7,                      6)
-       TAGKEYS(                        XK_8,                      7)
-       TAGKEYS(                        XK_9,                      8)
-       { MODKEY,                       XK_q,      quit,           {0} },
-       { MODKEY|ShiftMask,             XK_q,      spawn,          {.v = quitcmd } },
+       { MODKEY,           XK_p,      spawn,          {.v = dmenucmd } },
+       { MODKEY|ShiftMask, XK_Return, spawn,          {.v = termcmd } },
+       { MODKEY,           XK_y,      spawn,          {.v = passmenu } },
+       { MODKEY|ShiftMask, XK_y,      spawn,          {.v = passmenu_type } },
+       { MODKEY|ShiftMask, XK_l,      spawn,          {.v = lock } },
+       { MODKEY,           XK_b,      togglebar,      {0} },
+       { MODKEY,           XK_j,      focusstack,     {.i = +1 } },
+       { MODKEY,           XK_k,      focusstack,     {.i = -1 } },
+       { MODKEY,           XK_i,      incnmaster,     {.i = +1 } },
+       { MODKEY,           XK_d,      incnmaster,     {.i = -1 } },
+       { MODKEY,           XK_h,      setmfact,       {.f = -0.05} },
+       { MODKEY,           XK_l,      setmfact,       {.f = +0.05} },
+       { MODKEY,           XK_Return, zoom,           {0} },
+       { MODKEY,           XK_Tab,    view,           {0} },
+       { MODKEY|ShiftMask, XK_c,      killclient,     {0} },
+       { MODKEY,           XK_t,      setlayout,      {.v = &layouts[0]} },
+       { MODKEY,           XK_f,      setlayout,      {.v = &layouts[1]} },
+       { MODKEY,           XK_m,      setlayout,      {.v = &layouts[2]} },
+       { MODKEY,           XK_space,  setlayout,      {0} },
+       { MODKEY|ShiftMask, XK_space,  togglefloating, {0} },
+       { MODKEY,           XK_0,      view,           {.ui = ~0 } },
+       { MODKEY|ShiftMask, XK_0,      tag,            {.ui = ~0 } },
+       { MODKEY,           XK_comma,  focusmon,       {.i = -1 } },
+       { MODKEY,           XK_period, focusmon,       {.i = +1 } },
+       { MODKEY|ShiftMask, XK_comma,  tagmon,         {.i = -1 } },
+       { MODKEY|ShiftMask, XK_period, tagmon,         {.i = +1 } },
+       //Tags
+       TAGKEYS(            XK_1,                      0)
+       TAGKEYS(            XK_2,                      1)
+       TAGKEYS(            XK_3,                      2)
+       TAGKEYS(            XK_4,                      3)
+       TAGKEYS(            XK_5,                      4)
+       TAGKEYS(            XK_6,                      5)
+       TAGKEYS(            XK_7,                      6)
+       TAGKEYS(            XK_8,                      7)
+       TAGKEYS(            XK_9,                      8)
+       //Quit
+       { MODKEY,           XK_q,      quit,           {0} },
+       { MODKEY|ShiftMask, XK_q,      spawn,          {.v = quitcmd } },
+       //Without mod
+       { 0, XF86XK_MonBrightnessUp,   spawn,          {.v = brightup } },
+       { 0, XF86XK_MonBrightnessDown, spawn,          {.v = brightdown } },
+       { 0, XF86XK_AudioLowerVolume,  spawn,          {.v = volume_dec } },
+       { 0, XF86XK_AudioMute,         spawn,          {.v = volume_mute } },
+       { 0, XF86XK_AudioRaiseVolume,  spawn,          {.v = volume_inc } },
+       { 0,                XK_Print,  spawn,          {.v = scr } },
+       { ShiftMask,        XK_Print,  spawn,          {.v = scr_sel } },
+       { 0,                XK_Pause,  spawn,          {.v = toggle_music } },
 };
 
 /* button definitions */