Jelajahi Sumber

added volume to config.def.h

KlemensMaentele 3 tahun lalu
induk
melakukan
b13dc55568
2 mengubah file dengan 6 tambahan dan 260 penghapusan
  1. 6 0
      chadwm/config.def.h
  2. 0 260
      chadwm/config.h

+ 6 - 0
chadwm/config.def.h

@@ -126,9 +126,15 @@ static const char *term[]  = {  "st", NULL }; // change this to your term
 static const char *rofi[] = {"rofi", "-show", "drun", NULL };
 static const char *xi[] = {"xbacklight", "-inc", "7", NULL};
 static const char *xd[] = {"xbacklight", "-dec", "7", NULL};
+static const char *rv[] = {"pamixer", "-i", "5", NULL};
+static const char *lv[] = {"pamixer", "-d", "5", NULL};
+static const char *tv[] = {"pamixer", "-t", NULL};
 
 static Key keys[] = {
     /* modifier                         key         function        argument */
+    {0,                     XF86XK_AudioMute,       spawn,          {.v = tv}},
+    {0,              XF86XK_AudioRaiseVolume,       spawn,          {.v = rv}},
+    {0,              XF86XK_AudioLowerVolume,       spawn,          {.v = lv}},
     {0,             XF86XK_MonBrightnessDown,       spawn,          {.v = xd}},
     {0,               XF86XK_MonBrightnessUp,       spawn,          {.v = xi}},
     {MODKEY|ControlMask,                XK_u,       spawn,

+ 0 - 260
chadwm/config.h

@@ -1,260 +0,0 @@
-/* See LICENSE file for copyright and license details. */
-
-#define XF86MonBrightnessDown 0x1008ff03
-#define XF86MonBrightnessUp 0x1008ff02
-
-/* appearance */
-static const unsigned int borderpx  = 0;        /* border pixel of windows */
-static const unsigned int default_border = 0;  // to switch back to default border after dynamic border resizing via keybinds
-static const unsigned int snap      = 32;       /* snap pixel */
-static const unsigned int gappih    = 5;       /* horiz inner gap between windows */
-static const unsigned int gappiv    = 5;       /* vert inner gap between windows */
-static const unsigned int gappoh    = 5;       /* horiz outer gap between windows and screen edge */
-static const unsigned int gappov    = 5;       /* vert outer gap between windows and screen edge */
-static       int smartgaps          = 0;        /* 1 means no outer gap when there is only one window */
-static const unsigned int systraypinning = 0;   /* 0: sloppy systray follows selected monitor, >0: pin systray to monitor X */
-static const unsigned int systrayspacing = 2;   /* systray spacing */
-static const int systraypinningfailfirst = 1;   /* 1: if pinning fails,display systray on the 1st monitor,False: display systray on last monitor*/
-static const int showsystray        = 1;     /* 0 means no systray */
-static const int showbar            = 1;        /* 0 means no bar */
-enum showtab_modes { showtab_never, showtab_auto, showtab_nmodes, showtab_always };
-static const int showtab            = showtab_auto;
-static const int toptab             = True;
-static const int topbar             = 1;        /* 0 means bottom bar */
-static const int horizpadbar        = 5;
-static const int vertpadbar         = 11;
-static const int vertpadtab         = 33;
-static const int horizpadtabi       = 15;
-static const int horizpadtabo       = 15;
-static const int scalepreview       = 4;
-static       int tag_preview        = 0;        /* 1 means enable, 0 is off */
-
-static const char *fonts[]          = { "JetBrainsMono Nerd Font:style:medium:size=10",
-                                        "Material Design Icons-Regular:size=10",
-                                      };
-static const int colorfultag        = 1;  /* 0 means use SchemeSel for selected non vacant tag */
-
-// theme
-#include "themes/onedark.h"
-
-static const char *colors[][3]      = {
-    /*               fg         bg         border   */
-    [SchemeNorm]       = { gray3, black, gray2 },
-    [SchemeSel]        = { gray4, blue,  blue  },
-    [TabSel]           = { blue, gray2,  black  },
-    [TabNorm]          = { gray3, black, black },
-    [SchemeTag]        = { gray3, black, black },
-    [SchemeTag1]       = { blue,  black, black },
-    [SchemeTag2]       = { red,   black, black },
-    [SchemeTag3]       = { orange, black,black },
-    [SchemeTag4]       = { green, black, black },
-    [SchemeTag5]       = { pink,  black, black },
-    [SchemeLayout]     = { green, black, black }, 
-    [SchemeBtnPrev]    = { green, black, black }, 
-    [SchemeBtnNext]    = { yellow, black, black }, 
-    [SchemeBtnClose]   = { red, black, black }, 
-};
-
-/* tagging */
-static char *tags[] = {"", "", "", "", ""};
-
-static const char* eww[]      = { "eww", "open" , "eww", NULL };
-
-static const Launcher launchers[] = {
-       /* command       name to display */
-	{ eww,         "" },
-};
-
-static const int tagschemes[] = { SchemeTag1, SchemeTag2, SchemeTag3,
-                                  SchemeTag4, SchemeTag5
-                                };
-
-static const unsigned int ulinepad	= 5;	/* horizontal padding between the underline and tag */
-static const unsigned int ulinestroke	= 2;	/* thickness / height of the underline */
-static const unsigned int ulinevoffset	= 0;	/* how far above the bottom of the bar the line should appear */
-static const int ulineall 		= 0;	/* 1 to show underline on all tags, 0 for just the active ones */
-
-static const Rule rules[] = {
-    /* xprop(1):
-     *	WM_CLASS(STRING) = instance, class
-     *	WM_NAME(STRING) = title
-     */
-       	/* class      instance    title       tags mask     iscentered   isfloating   monitor */
-	{ "Gimp",     NULL,       NULL,       0,            0,           1,           -1 },
-	{ "Firefox",  NULL,       NULL,       1 << 8,       0,           0,           -1 },
-      	{ "eww",      NULL,       NULL,       0,            0,           1,           -1 },
-};
-
-/* layout(s) */
-static const float mfact     = 0.50; /* factor of master area size [0.05..0.95] */
-static const int nmaster     = 1;    /* number of clients in master area */
-static const int resizehints = 0;    /* 1 means respect size hints in tiled resizals */
-static const int lockfullscreen = 1; /* 1 will force focus on the fullscreen window */
-
-#define FORCE_VSPLIT 1  /* nrowgrid layout: force two clients to always split vertically */
-#include "functions.h"
-
-
-static const Layout layouts[] = {
-    /* symbol     arrange function */
-    { "[]=",      tile },    /* first entry is default */
-    { "[M]",      monocle },
-    { "[@]",      spiral },
-    { "[\\]",     dwindle },
-    { "H[]",      deck },
-    { "TTT",      bstack },
-    { "===",      bstackhoriz },
-    { "HHH",      grid },
-    { "###",      nrowgrid },
-    { "---",      horizgrid },
-    { ":::",      gaplessgrid },
-    { "|M|",      centeredmaster },
-    { ">M>",      centeredfloatingmaster },
-    { "><>",      NULL },    /* no layout function means floating behavior */
-};
-
-/* key definitions */
-#define MODKEY Mod4Mask
-#define TAGKEYS(KEY,TAG) \
-	{ MODKEY,                       KEY,      view,           {.ui = 1 << TAG} }, \
-	{ MODKEY|ControlMask,           KEY,      toggleview,     {.ui = 1 << TAG} }, \
-	{ MODKEY|ShiftMask,             KEY,      tag,            {.ui = 1 << TAG} }, \
-	{ MODKEY|ControlMask|ShiftMask, KEY,      toggletag,      {.ui = 1 << TAG} },
-
-/* helper for spawning shell commands in the pre dwm-5.0 fashion */
-#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
-
-/* commands */
-static const char *term[]  = {  "st", NULL }; // change this to your term
-static const char *rofi[] = {"rofi", "-show", "drun", NULL };
-static const char *xi[] = {"xbacklight", "-inc", "7", NULL};
-static const char *xd[] = {"xbacklight", "-dec", "7", NULL};
-
-static Key keys[] = {
-    /* modifier                     key        function        argument */
-    { MODKEY,                       XK_c,      spawn,          {.v = rofi } },
-    { MODKEY,                       XK_Return, spawn,          SHCMD("st") },  
-    // { MODKEY,                       XK_Return, spawn,          SHCMD("st_pad && st")},  
-    { MODKEY,			    XK_w,	spawn,		SHCMD("brave") },
-    {MODKEY | ControlMask, XK_u, spawn, SHCMD("maim | xclip -selection clipboard -t image/png")},
-    {MODKEY, XK_u, spawn,   SHCMD("maim --select | xclip -selection clipboard -t image/png")},
-    {MODKEY,			    XK_r,	spawn,		SHCMD("st -e ranger") },
-    {0, XF86MonBrightnessDown, spawn, {.v = xd}},
-    {0, XF86MonBrightnessUp, spawn, {.v = xi}},
-    { MODKEY,                       XK_space,   spawn,           SHCMD("rofi -show run") },
-    { MODKEY,                       XK_t,      togglebar,      {0} },
-    { MODKEY|ControlMask,                       XK_w,      tabmode,        { -1 } },
-    { 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|ShiftMask,             XK_h,      setcfact,       {.f = +0.25} },
-    { MODKEY|ShiftMask,             XK_l,      setcfact,       {.f = -0.25} },
-    { MODKEY|ShiftMask,             XK_o,      setcfact,       {.f =  0.00} },
-    { MODKEY|ShiftMask,             XK_j,      movestack,      {.i = +1 } },
-    { MODKEY|ShiftMask,             XK_k,      movestack,      {.i = -1 } },
-    { MODKEY,                       XK_Return, zoom,           {0} },
-    { MODKEY,                       XK_Tab,    view,           {0} },
-    { MODKEY|ShiftMask,             XK_space,  spawn           ,SHCMD("/usr/bin/setxkbmap -query | grep 'layout:[[:blank:]]*us' && setxkbmap de || setxkbmap us && kill -46 $(pidof dwmblocks)")},
-    // overall gaps
-    { MODKEY|ControlMask,           XK_i,      incrgaps,       {.i = +1 } },
-    { MODKEY|ControlMask,           XK_d,      incrgaps,       {.i = -1 } },
-
-    // inner gaps
-    { MODKEY|ShiftMask,                XK_i,      incrigaps,      {.i = +1 } },
-    { MODKEY|ControlMask|ShiftMask,    XK_i,      incrigaps,      {.i = -1 } },
-
-    // outer gaps
-    { MODKEY|ControlMask,              XK_o,      incrogaps,      {.i = +1 } },
-    { MODKEY|ControlMask|ShiftMask,    XK_o,      incrogaps,      {.i = -1 } },
-
-    { MODKEY|ControlMask,              XK_6,      incrihgaps,     {.i = +1 } },
-    { MODKEY|ControlMask|ShiftMask,    XK_6,      incrihgaps,     {.i = -1 } },
-    { MODKEY|ControlMask,              XK_7,      incrivgaps,     {.i = +1 } },
-    { MODKEY|ControlMask|ShiftMask,    XK_7,      incrivgaps,     {.i = -1 } },
-    { MODKEY|ControlMask,              XK_8,      incrohgaps,     {.i = +1 } },
-    { MODKEY|ControlMask|ShiftMask,    XK_8,      incrohgaps,     {.i = -1 } },
-    { MODKEY|ControlMask,              XK_9,      incrovgaps,     {.i = +1 } },
-    { MODKEY|ControlMask|ShiftMask,    XK_9,      incrovgaps,     {.i = -1 } },
-
-    { MODKEY|ControlMask,           XK_t,      togglegaps,     {0} },
-    { MODKEY|ControlMask|ShiftMask,             XK_d,      defaultgaps,    {0} },
-
-    { MODKEY,                       XK_q,      killclient,     {0} },
-    { MODKEY,                       XK_t,      setlayout,      {.v = &layouts[0]} },
-    { MODKEY|ShiftMask,             XK_f,      setlayout,      {.v = &layouts[1]} },
-    { MODKEY,                       XK_m,      setlayout,      {.v = &layouts[2]} },
-    { MODKEY|ControlMask,           XK_g,      setlayout,      {.v = &layouts[10]} },
-    { MODKEY|ControlMask|ShiftMask, XK_t,      setlayout,      {.v = &layouts[13]} },
-    { MODKEY,                       XK_space,  setlayout,      {0} },
-    { MODKEY|ControlMask,		XK_comma,  cyclelayout,    {.i = -1 } },
-    { MODKEY|ControlMask,           XK_period, cyclelayout,    {.i = +1 } },
-    { MODKEY|ShiftMask,             XK_space,  togglefloating, {0} },
-    { MODKEY,                       XK_f,      togglefullscr,  {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 } },
-    { MODKEY|ShiftMask,             XK_minus, 		setborderpx,    {.i = -1 } },
-    { MODKEY|ShiftMask,             XK_p, 	        setborderpx,    {.i = +1 } },
-    { MODKEY|ShiftMask,             XK_w, 	        setborderpx,    {.i = default_border } },
-
-    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|ControlMask,           XK_q,      quit,           {0}
-    },
-    { MODKEY|ShiftMask,             XK_r,      quit,           {1} },
-    { MODKEY,                       XK_e,      hidewin,        {0} },
-    { MODKEY|ShiftMask,             XK_e,      restorewin,     {0} },
-
-};
-
-/* button definitions */
-/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
-static Button buttons[] = {
-    /* click                event mask      button          function        argument */
-    { ClkLtSymbol,          0,              Button1,        setlayout,      {0} },
-    { ClkLtSymbol,          0,              Button3,        setlayout,      {.v = &layouts[2]} },
-    { ClkWinTitle,          0,              Button2,        zoom,           {0} },
-    { ClkStatusText,        0,              Button2,        spawn,          {.v = term } },
-
-		/* Keep movemouse? */
-    /* { ClkClientWin,         MODKEY,         Button1,        movemouse,      {0} }, */
-
-		/* placemouse options, choose which feels more natural:
-		 *    0 - tiled position is relative to mouse cursor
-		 *    1 - tiled postiion is relative to window center
-		 *    2 - mouse pointer warps to window center
-		 *
-		 * The moveorplace uses movemouse or placemouse depending on the floating state
-		 * of the selected client. Set up individual keybindings for the two if you want
-		 * to control these separately (i.e. to retain the feature to move a tiled window
-		 * into a floating position).
-		 */
-		{ ClkClientWin,         MODKEY,         Button1,        moveorplace,    {.i = 0} },
-    { ClkClientWin,         MODKEY,         Button2,        togglefloating, {0} },
-    { ClkClientWin,         MODKEY,         Button3,        resizemouse,    {0} },
-    { ClkClientWin,         ControlMask,    Button1,        dragmfact,      {0} },
-    { ClkClientWin,         ControlMask,    Button3,        dragcfact,      {0} },
-    { ClkTagBar,            0,              Button1,        view,           {0} },
-    { ClkTagBar,            0,              Button3,        toggleview,     {0} },
-    { ClkTagBar,            MODKEY,         Button1,        tag,            {0} },
-    { ClkTagBar,            MODKEY,         Button3,        toggletag,      {0} },
-    { ClkTabBar,            0,              Button1,        focuswin,       {0} },
-    { ClkTabBar,            0,              Button1,        focuswin,       {0} },
-    { ClkTabPrev,           0,              Button1,        movestack,      { .i = -1 } },
-    { ClkTabNext,           0,              Button1,        movestack,      { .i = +1 } },
-    { ClkTabClose,          0,              Button1,        killclient,     {0} },
-};