diff options
-rw-r--r-- | config.def.h | 53 | ||||
-rw-r--r-- | dwm.1 | 3 | ||||
-rw-r--r-- | dwm.c | 8 |
3 files changed, 54 insertions, 10 deletions
diff --git a/config.def.h b/config.def.h index a2ac963..676a47d 100644 --- a/config.def.h +++ b/config.def.h @@ -1,5 +1,7 @@ /* See LICENSE file for copyright and license details. */ +#include <X11/XF86keysym.h> + /* appearance */ static const unsigned int borderpx = 1; /* border pixel of windows */ static const unsigned int snap = 32; /* snap pixel */ @@ -7,15 +9,21 @@ static const int showbar = 1; /* 0 means no bar */ static const int topbar = 1; /* 0 means bottom bar */ static const char *fonts[] = { "monospace:size=10" }; static const char dmenufont[] = "monospace:size=10"; -static const char col_gray1[] = "#222222"; -static const char col_gray2[] = "#444444"; -static const char col_gray3[] = "#bbbbbb"; -static const char col_gray4[] = "#eeeeee"; -static const char col_cyan[] = "#005577"; + +/* + * Base16 dwm template by Daniel Mulford + * Tomorrow Night scheme by Chris Kempson (http://chriskempson.com) + */ +static const char col_base00[] = "#1d1f21"; +static const char col_base01[] = "#282a2e"; +static const char col_base02[] = "#373b41"; +static const char col_base04[] = "#b4b7b4"; +static const char col_base0C[] = "#8abeb7"; +static const char col_base0D[] = "#81a2be"; static const char *colors[][3] = { - /* fg bg border */ - [SchemeNorm] = { col_gray3, col_gray1, col_gray2 }, - [SchemeSel] = { col_gray4, col_cyan, col_cyan }, + /* fg bg border */ + [SchemeNorm] = { col_base04, col_base01, col_base02 }, + [SchemeSel] = { col_base00, col_base0D, col_base0C }, }; /* tagging */ @@ -57,8 +65,8 @@ static const Layout layouts[] = { /* commands */ static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */ -static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", col_gray1, "-nf", col_gray3, "-sb", col_cyan, "-sf", col_gray4, NULL }; -static const char *termcmd[] = { "st", NULL }; +static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", col_base01, "-nf", col_base04, "-sb", col_base0D, "-sf", col_base00, NULL }; +static const char *termcmd[] = { "alacritty", NULL }; static Key keys[] = { /* modifier key function argument */ @@ -79,6 +87,7 @@ static Key keys[] = { { MODKEY, XK_m, setlayout, {.v = &layouts[2]} }, { MODKEY, XK_space, setlayout, {0} }, { MODKEY|ShiftMask, XK_space, togglefloating, {0} }, + { MODKEY|ShiftMask, XK_f, togglefullscr, {0} }, { MODKEY, XK_0, view, {.ui = ~0 } }, { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } }, { MODKEY, XK_comma, focusmon, {.i = -1 } }, @@ -95,6 +104,30 @@ static Key keys[] = { TAGKEYS( XK_8, 7) TAGKEYS( XK_9, 8) { MODKEY|ShiftMask, XK_q, quit, {0} }, + + { 0, XF86XK_AudioLowerVolume, spawn, SHCMD("amixer set Master 5%-; kill -RTMIN+1 \"$(cat \"$XDG_CACHE_HOME/pidofbar\")\"") }, + { 0, XF86XK_AudioMute, spawn, SHCMD("amixer set Master toggle; kill -RTMIN+1 \"$(cat \"$XDG_CACHE_HOME/pidofbar\")\"") }, + { 0, XF86XK_AudioNext, spawn, SHCMD("playerctl next") }, + { 0, XF86XK_AudioPlay, spawn, SHCMD("playerctl play-pause") }, + { 0, XF86XK_AudioPrev, spawn, SHCMD("playerctl previous") }, + { 0, XF86XK_AudioRaiseVolume, spawn, SHCMD("amixer set Master 5%+; kill -RTMIN+1 \"$(cat \"$XDG_CACHE_HOME/pidofbar\")\"") }, + { 0, XK_Caps_Lock,spawn, SHCMD("sleep 0.2; kill -RTMIN+3 \"$(cat \"$XDG_CACHE_HOME/pidofbar\")\"") }, + { 0, XK_Print, spawn, SHCMD("ffmpeg -f x11grab -i \"$DISPLAY\" -vframes 1 \"$XDG_PICTURES_DIR/screenshots/$(time.uuid).png\"") }, + { MODKEY, XF86XK_AudioMute, spawn, SHCMD("amixer set Capture toggle; kill -RTMIN \"$(cat \"$XDG_CACHE_HOME/pidofbar\")\"") }, + { MODKEY, XK_Print, spawn, SHCMD("xrectsel '%w %h %x %y' | xargs sh -c 'ffmpeg -f x11grab -s \"$1x$2\" -i \"$DISPLAY+$3,$4\" -vframes 1 \"$XDG_PICTURES_DIR/screenshots/$(time.uuid).png\"' shell") }, + { MODKEY, XK_n, spawn, SHCMD("dunstctl close") }, + { MODKEY, XK_r, spawn, SHCMD("xsel -ob | rev | xsel -ib") }, + { MODKEY, XK_s, spawn, SHCMD("shufwall") }, + { MODKEY, XK_w, spawn, SHCMD("$BROWSER") }, + { MODKEY, XK_y, spawn, SHCMD("mpvy -s") }, + { MODKEY|ControlMask, XK_y, spawn, SHCMD("tsp mpvy -A -u \"$(xsel -ob)\"") }, + { MODKEY|ShiftMask, XK_Print, spawn, SHCMD("reco") }, + { MODKEY|ShiftMask, XK_n, spawn, SHCMD("alarm 12 'Boiling Water!'") }, + { MODKEY|ShiftMask, XK_w, spawn, SHCMD("mullvad-exclude $BROWSER") }, + { MODKEY|ShiftMask, XK_y, spawn, SHCMD("mpvy -a") }, + + //{ MODKEY, XK_q, spawn, SHCMD("mullvad connect -w; kill -RTMIN+4 \"$(cat \"$XDG_CACHE_HOME/pidofbar\")\"; qbittorrent") }, + //{ MODKEY, XK_v, spawn, SHCMD("if mullvad status | grep -q 'Disconnect'; then mullvad connect -w; else killall qbittorrent weechat; mullvad disconnect -w; fi; kill -RTMIN+4 \"$(cat \"$XDG_CACHE_HOME/pidofbar\")\"") }, }; /* button definitions */ @@ -116,6 +116,9 @@ Zooms/cycles focused window to/from master area (tiled layouts only). .B Mod1\-Shift\-c Close focused window. .TP +.B Mod1\-Shift\-f +Toggle fullscreen for focused window. +.TP .B Mod1\-Shift\-space Toggle focused window between tiled and floating state. .TP @@ -212,6 +212,7 @@ static void tagmon(const Arg *arg); static void tile(Monitor *); static void togglebar(const Arg *arg); static void togglefloating(const Arg *arg); +static void togglefullscr(const Arg *arg); static void toggletag(const Arg *arg); static void toggleview(const Arg *arg); static void unfocus(Client *c, int setfocus); @@ -1726,6 +1727,13 @@ togglefloating(const Arg *arg) } void +togglefullscr(const Arg *arg) +{ + if(selmon->sel) + setfullscreen(selmon->sel, !selmon->sel->isfullscreen); +} + +void toggletag(const Arg *arg) { unsigned int newtags; |