This commit is contained in:
Marcin Wozniak 2019-10-05 23:18:46 +02:00
parent 66d808ed23
commit 6e03958841
2 changed files with 78 additions and 75 deletions

124
config.h
View File

@ -1,4 +1,3 @@
/* appearance */
static const unsigned int borderpx = 4; /* border pixel of windows */ static const unsigned int borderpx = 4; /* border pixel of windows */
static const unsigned int gappx = 20; /* gaps between windows */ static const unsigned int gappx = 20; /* gaps between windows */
static const unsigned int snap = 32; /* snap pixel */ static const unsigned int snap = 32; /* snap pixel */
@ -8,50 +7,44 @@ static const unsigned int systraypinning = 0; /* 0: sloppy systray follows sel
static const unsigned int systrayspacing = 2; /* systray spacing */ static const unsigned int systrayspacing = 2; /* systray spacing */
static const int systraypinningfailfirst = 1; /* 1: if pinning fails, display systray on the first monitor, False: display systray on the last monitor*/ static const int systraypinningfailfirst = 1; /* 1: if pinning fails, display systray on the first monitor, False: display systray on the last monitor*/
static const int showsystray = 1; /* 0 means no systray */ static const int showsystray = 1; /* 0 means no systray */
static const char *fonts[] = { "mono:size=16", "Font Awesome 5 Free Solid:size=16"}; static const char *fonts[] = { "mono:size=15" /*"Font Awesome 5 Free Solid:size=15"*/};
static const char dmenufont[] = "mono:size=16"; static const char dmenufont[] = "mono:size=15";
static const char col_gray1[] = "#222222"; static const char col_gray1[] = "#222222";
static const char col_gray2[] = "#444444"; static const char col_gray2[] = "#444444";
static const char col_gray3[] = "#bbbbbb"; static const char col_gray3[] = "#bbbbbb";
static const char col_gray4[] = "#eeeeee"; static const char col_gray4[] = "#eeeeee";
static const char col_cyan[] = "#005577"; static const char col_cyan[] = "#005577";
static const char *colors[][3] = { static const char *colors[][3] = {
/* fg bg border */
[SchemeNorm] = { col_gray3, col_gray1, col_gray2 }, [SchemeNorm] = { col_gray3, col_gray1, col_gray2 },
[SchemeSel] = { col_gray4, col_cyan, col_cyan }, [SchemeSel] = { col_gray4, col_cyan, col_cyan },
}; };
/* tagging */
/*static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };*/ /*static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };*/
static const char *tags[] = { "", "", "", "", "", "", "", "", "" }; static const char *tags[] = { "", "", "", "", "", "", "", "", "" };
static const Rule rules[] = { static const Rule rules[] = {
{ "Opera", NULL, NULL, 1 << 1, False, 0 }, { "Opera", NULL, NULL, 1 << 1, False, 0 },
{ "firefox", NULL, NULL, 1 << 1, False, 0 }, { "firefox", NULL, NULL, 1 << 1, False, 0 },
{ "Thunderbird", NULL, NULL, 1 << 2, False, 0 }, { "Thunderbird", NULL, NULL, 1 << 2, False, 0 },
{ "Steam", NULL, NULL, 1 << 3, False, 0 }, { "Steam", NULL, NULL, 1 << 3, False, 0 },
{ "Lutris", NULL, NULL, 1 << 3, False, 0 }, { "Lutris", NULL, NULL, 1 << 3, False, 0 },
{ "League of Legends", NULL, NULL, 1 << 3, True, 0 }, { "League of Legends", NULL, NULL, 1 << 3, True, 0 },
{ "TeamSpeak 3", NULL, NULL, 1 << 3, False, 0 }, { "TeamSpeak 3", NULL, NULL, 1 << 3, False, 0 },
{ "keepassxc", NULL, NULL, 1 << 7, False, 0 }, { "keepassxc", NULL, NULL, 1 << 7, False, 0 },
{ "obs", NULL, NULL, 1 << 8, False, 0 }, { "obs", NULL, NULL, 1 << 8, False, 0 },
}; };
/* layout(s) */
static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */ static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */
static const int nmaster = 1; /* number of clients in master area */ 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 resizehints = 0; /* 1 means respect size hints in tiled resizals */
static const Layout layouts[] = { static const Layout layouts[] = {
/* symbol arrange function */
{ "[]=", tile }, /* first entry is default */ { "[]=", tile }, /* first entry is default */
{ "><>", NULL }, /* no layout function means floating behavior */ { "><>", NULL }, /* no layout function means floating behavior */
{ "[M]", monocle }, { "[M]", monocle },
}; };
/* key definitions */
#define MODKEY Mod4Mask #define MODKEY Mod4Mask
#define TAGKEYS(KEY,TAG) \ #define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \ { MODKEY, KEY, view, {.ui = 1 << TAG} }, \
@ -59,10 +52,8 @@ static const Layout layouts[] = {
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \ { MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.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 } } #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
/* commands */
static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */ static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
static const char *dmenucmd[] = { "dmenu_run", NULL }; static const char *dmenucmd[] = { "dmenu_run", NULL };
static const char *termcmd[] = { "st","-ce", "/bin/zsh" , NULL }; static const char *termcmd[] = { "st","-ce", "/bin/zsh" , NULL };
@ -81,58 +72,57 @@ static const char *pavucontrol[] = {"pavucontrol", "NULL" };
static const char *screenswitcher[] = { "screen-switcher", "NULL" }; static const char *screenswitcher[] = { "screen-switcher", "NULL" };
static Key keys[] = { static Key keys[] = {
/* modifier key function argument */ {0, 0x1008ff02, spawn, SHCMD ("sudo light -A 10")},
{0, 0x1008ff02, spawn, SHCMD ("sudo light -A 10")}, {0, 0x1008ff03, spawn, SHCMD ("sudo light -U 10")},
{0, 0x1008ff03, spawn, SHCMD ("sudo light -U 10")}, {0, 0x1008ff11, spawn, SHCMD ("ponymix decrease 5")},
{0, 0x1008ff11, spawn, SHCMD ("ponymix decrease 5")}, {0, 0x1008ff12, spawn, SHCMD ("ponymix toggle")},
{0, 0x1008ff12, spawn, SHCMD ("ponymix toggle")}, {0, 0x1008ff13, spawn, SHCMD ("ponymix increase 5")},
{0, 0x1008ff13, spawn, SHCMD ("ponymix increase 5")}, { MODKEY, XK_F2, spawn, SHCMD ("ponymix decrease 5")},
{ MODKEY, XK_F2, spawn, SHCMD ("ponymix decrease 5")}, { MODKEY, XK_F1, spawn, SHCMD ("ponymix toggle")},
{ MODKEY, XK_F1, spawn, SHCMD ("ponymix toggle")}, { MODKEY|ShiftMask, XK_F2, spawn, SHCMD ("cmus-remote -v -5%")},
{ MODKEY|ShiftMask, XK_F2, spawn, SHCMD ("cmus-remote -v -5%")}, { MODKEY|ShiftMask, XK_F3, spawn, SHCMD ("cmus-remote -v +5%")},
{ MODKEY|ShiftMask, XK_F3, spawn, SHCMD ("cmus-remote -v +5%")}, { MODKEY, XK_F3, spawn, SHCMD ("ponymix increase 5")},
{ MODKEY, XK_F3, spawn, SHCMD ("ponymix increase 5")}, { MODKEY, XK_F10, spawn, {.v = screenswitcher} },
{ MODKEY, XK_F10, spawn, {.v = screenswitcher} }, {0, XK_Print, spawn, {.v = print_screen_cmd } },
{0, XK_Print, spawn, {.v = print_screen_cmd } }, { MODKEY, XK_l, spawn, {.v = cmdlock } },
{ MODKEY, XK_l, spawn, {.v = cmdlock } }, { MODKEY, XK_d, spawn, {.v = dmenucmd } },
{ MODKEY, XK_d, spawn, {.v = dmenucmd } }, { MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } }, { MODKEY, XK_b, togglebar, {0} },
{ MODKEY, XK_b, togglebar, {0} }, { MODKEY, XK_Left, focusstack, {.i = +1 } },
{ MODKEY, XK_Left, focusstack, {.i = +1 } }, { MODKEY, XK_Right, focusstack, {.i = -1 } },
{ MODKEY, XK_Right, focusstack, {.i = -1 } }, { MODKEY|ShiftMask, XK_e, spawn, {.v = shutdownpress } },
{ MODKEY|ShiftMask, XK_e, spawn, {.v = shutdownpress } }, { MODKEY, XK_o, spawn, {.v = pavucontrol } },
{ MODKEY, XK_o, spawn, {.v = pavucontrol } }, { MODKEY|ShiftMask, XK_Left, setmfact, {.f = -0.05} },
{ MODKEY|ShiftMask, XK_Left, setmfact, {.f = -0.05} }, { MODKEY|ShiftMask, XK_Right, setmfact, {.f = +0.05} },
{ MODKEY|ShiftMask, XK_Right, setmfact, {.f = +0.05} }, { MODKEY, XK_Return, zoom, {0} },
{ MODKEY, XK_Return, zoom, {0} }, { MODKEY, XK_Tab, view, {0} },
{ MODKEY, XK_Tab, view, {0} }, { MODKEY|ShiftMask, XK_q, killclient, {0} },
{ MODKEY|ShiftMask, XK_q, killclient, {0} }, { MODKEY, XK_f, fullscreen, {0} },
/*{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },*/ { MODKEY, XK_space, setlayout, {.v = &layouts[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 } },
{ MODKEY, XK_k, spawn, SHCMD ("qalculate-gtk")},
{ MODKEY, XK_r, spawn, {.v = ranger }},
{ MODKEY, XK_m, spawn, {.v = cmusshell }},
{ MODKEY, XK_F4, spawn, {.v = dmenumount }},
{ MODKEY, XK_F5, spawn, {.v = dmenuumount }},
{ MODKEY|ShiftMask, XK_apostrophe, spawn, {.v = cmusplay }},
{ MODKEY|ShiftMask, XK_bracketright, spawn, {.v = cmusnext }},
{ MODKEY|ShiftMask, XK_bracketleft, spawn, {.v = cmusprev }},
{ 0, 0x1008ff14, spawn, {.v = cmusplay }},
{ 0, 0x1008ff17, spawn, {.v = cmusnext }},
{ 0, 0x1008ff16, spawn, {.v = cmusprev }},
/*{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },*/
/*{ MODKEY|ShiftMask, XK_f, setlayout, {.v = &layouts[1]} },*/ /*{ MODKEY|ShiftMask, XK_f, setlayout, {.v = &layouts[1]} },*/
/*{ MODKEY, XK_f, setlayout, {.v = &layouts[2]} },*/ /*{ MODKEY, XK_f, setlayout, {.v = &layouts[2]} },*/
{ MODKEY, XK_f, fullscreen, {0} }, /* { MODKEY|ShiftMask, XK_q, spawn, {.v = dwmkill } }, */
/*{ MODKEY, XK_space, setlayout, {0} },*/ /*{ MODKEY, XK_space, setlayout, {0} },*/
{ MODKEY, XK_space, setlayout, {.v = &layouts[0]} }, TAGKEYS( XK_1, 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 } },
/* { MODKEY|ShiftMask, XK_q, spawn, {.v = dwmkill } }, */
{ MODKEY, XK_k, spawn, SHCMD ("qalculate-gtk")},
{ MODKEY, XK_r, spawn, {.v = ranger }},
{ MODKEY, XK_m, spawn, {.v = cmusshell }},
{ MODKEY, XK_F4, spawn, {.v = dmenumount }},
{ MODKEY, XK_F5, spawn, {.v = dmenuumount }},
{ MODKEY|ShiftMask, XK_apostrophe, spawn, {.v = cmusplay }},
{ MODKEY|ShiftMask, XK_bracketright, spawn, {.v = cmusnext }},
{ MODKEY|ShiftMask, XK_bracketleft, spawn, {.v = cmusprev }},
{ 0, 0x1008ff14, spawn, {.v = cmusplay }},
{ 0, 0x1008ff17, spawn, {.v = cmusnext }},
{ 0, 0x1008ff16, spawn, {.v = cmusprev }},
TAGKEYS( XK_1, 0)
TAGKEYS( XK_2, 1) TAGKEYS( XK_2, 1)
TAGKEYS( XK_3, 2) TAGKEYS( XK_3, 2)
TAGKEYS( XK_4, 3) TAGKEYS( XK_4, 3)

View File

@ -5,7 +5,6 @@ xset b off&
xset s off& xset s off&
xset -dpms& xset -dpms&
redshift -l 52.2327:18.3036 -t 6500:3200& redshift -l 52.2327:18.3036 -t 6500:3200&
#compton&
nm-applet --sm-disable& nm-applet --sm-disable&
/usr/local/bin/st -e /bin/sh -c "tmux new-session -s BASE -n HOME '/bin/zsh'\; new-window -n HTOP 'htop'\; new-window -n MUSIC 'cmus'"& /usr/local/bin/st -e /bin/sh -c "tmux new-session -s BASE -n HOME '/bin/zsh'\; new-window -n HTOP 'htop'\; new-window -n MUSIC 'cmus'"&
firefox& firefox&
@ -13,10 +12,10 @@ thunderbird&
"/mnt/mega/Systems/Linux/apps/KeePass.AppImage"& "/mnt/mega/Systems/Linux/apps/KeePass.AppImage"&
megasync& megasync&
dunst -config& dunst -config&
#/usr/bin/ibus-daemon -d& /usr/bin/ibus-daemon -d&
transmission-daemon& transmission-daemon&
pl& #pl&
#(sleep 30 && getforecast)& (sleep 30 && getforecast)&
print_torrent(){ print_torrent(){
@ -115,7 +114,6 @@ usageData() {
echo -e " $cpuUse%  $ramUseB%" echo -e " $cpuUse%  $ramUseB%"
} }
playerCmus(){ playerCmus(){
cmus=$(cmus-remote -Q | grep status) cmus=$(cmus-remote -Q | grep status)
case "$cmus" in case "$cmus" in
@ -123,10 +121,24 @@ case "$cmus" in
echo "" echo ""
;; ;;
"status paused"*) "status paused"*)
echo "|  |" echo ""
;; ;;
'status playing'*) 'status playing'*)
echo "|  |" INFO_CMUS=$(cmus-remote -Q 2>/dev/null)
if [[ $? -eq 0 ]]; then
INFO_TITLE=$(echo "${INFO_CMUS}" | sed -n -e 's/^.*title//p' | head -n 1)
INFO_ALBUM=$(echo "${INFO_CMUS}" | sed -n -e 's/^.*album//p' | head -n 1)
INFO_ARTIST=$(echo "${INFO_CMUS}" | sed -n -e 's/^.*artist//p' | head -n 1)
else
exit
fi
if [[ "${INFO_ARTIST}" ]] && [[ "${INFO_TITLE}" ]]; then
OUT_TEXT="${INFO_ARTIST} -${INFO_TITLE}"
elif [[ "${INFO_TITLE}" ]]; then
OUT_TEXT="${INFO_TITLE}"
fi
echo -e ""
#echo -e "${OUT_TEXT}"
;; ;;
"") "")
echo "" echo ""
@ -134,9 +146,10 @@ case "$cmus" in
esac esac
} }
while true while true
do do
#xsetroot -name "$(print_torrent)$(print_temp) | $(usageData) | $(testweather) | $(print_wifi) | $(batLevel) | $(print_volume) | $(print_date)" #xsetroot -name "$(print_torrent)$(print_temp) | $(usageData) | $(testweather) | $(print_wifi) | $(batLevel) | $(print_volume) | $(print_date)"
xsetroot -name "$(print_temp) | $(usageData) | $(print_wifi) | $(batLevel) | $(print_volume) | $(print_date)" xsetroot -name "$(print_wifi) | $(batLevel) | $(print_volume) | $(print_date)"
sleep 2 sleep 2
done done