From a8388bb566837476ad697ed6f65c6544e57d3958 Mon Sep 17 00:00:00 2001 From: Tucker Johnson Date: Sat, 31 May 2025 09:49:36 -0400 Subject: [PATCH] bindings --- TuCLS.7 | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ config.h | 66 +++++++++++++++++++++++++++---------------------------- 2 files changed, 100 insertions(+), 33 deletions(-) diff --git a/TuCLS.7 b/TuCLS.7 index 2c9c4bb..1560a00 100644 --- a/TuCLS.7 +++ b/TuCLS.7 @@ -86,6 +86,7 @@ Mod + U|deck|[sdck] Mod + i|center main|[cntr] Mod + I|center, floating main|[fcntr] Mod + o/O|decrease/increase main window count| +Mod + b|show/hide status bar .TE . .TP @@ -100,5 +101,71 @@ Mod + Tab|switch to previous tag Mod + Left/Right|switch displays Mod + Shift + Left/Right|send current window to another display .TE +. +.TP +.B Multiple Displays +.TS +tab(|) nospaces; +l l. +Mod + left/right|navigate to another display +Mod + Shift + left/right|send current window to another display +.TE +. +.SS System and Program Bindings +.TP +.B System +NB media keys are not mapped, but could be adjusted in source. +.TS +tab(|) nospaces; +l l. +Mod + backspace|dmenu system functions +Mod + Q|dmenu system functions +Mod + -/+|default audio volume +Mod + M|mute audio +Mod + F1|dmenu display selection +Mod + F2|pulsemixer +Mod + F3|qpwgraph +Mod + F4|htop +Mod + F5|dmenu drive mounter +Mod + F6|dmenu cifs mounter +Mod + F7|dmenu unmounter +Mod + F9|dmenu screen select (maim) +Mod + F10|dmenu screen recording (ffmpeg) +Mod + F11|open webcam +Mod + F12|remap keyboard +Mod + W|Network Manager +.TE +. +.TP +.B Programs +.TS +tab(|) nospaces; +l l. +Mod + enter|terminal window +Mod + shift + enter|drop-down terminal +Mod + d|dmenu program launcher +Mod + D|dmenu pass (password manager) +Mod + S|dmenu stream select (see dmenu scripts) +Mod + e|neomutt +Mod + E|abook +Mod + w|web browser +Mod + n|notes (see notes) +Mod + N|newsboat +Mod + M|ncmpcpp (see music and media) +.TE +. +.TP +.B Media +using the programs mpd and mpv +.TS +tab(|) nospaces; +l l. +Mod + P|pause mpd and end any mpv instance +Mod + ,|mpd previous track +Mod + .|mpd next track +Mod + <|mpd restart track +Mod + >|mpd repeat +.TE +. .SH Author Tucker Johnson (tucker@newer.systems, https://newer.systems) diff --git a/config.h b/config.h index c47cfb4..9835519 100644 --- a/config.h +++ b/config.h @@ -167,8 +167,8 @@ static const Key keys[] = { { MODKEY|ShiftMask, XK_w, spawn, {.v = (const char*[]){ TERMINAL, "-e", "sudo", "nmtui", NULL } } }, { MODKEY, XK_e, spawn, SHCMD(TERMINAL " -e neomutt ; pkill -RTMIN+12 dwmblocks; rmdir ~/.abook 2>/dev/null") }, { MODKEY|ShiftMask, XK_e, spawn, SHCMD(TERMINAL " -e abook -C ~/.config/abook/abookrc --datafile ~/.config/abook/addressbook") }, - { MODKEY, XK_r, spawn, {.v = (const char*[]){ TERMINAL, "-e", "lfub", NULL } } }, /* change this */ - { MODKEY|ShiftMask, XK_r, spawn, {.v = (const char*[]){ TERMINAL, "-e", "htop", NULL } } }, /* change this */ + /* { MODKEY, XK_r, spawn, {.v = (const char*[]){ TERMINAL, "-e", "lf", NULL } } }, */ + /* { MODKEY|ShiftMask, XK_r, spawn, {.v = (const char*[]){ TERMINAL, "-e", "htop", NULL } } }, */ { MODKEY, XK_t, setlayout, {.v = &layouts[0]} }, /* tile */ { MODKEY|ShiftMask, XK_t, setlayout, {.v = &layouts[1]} }, /* bstack */ { MODKEY, XK_y, setlayout, {.v = &layouts[2]} }, /* spiral */ @@ -214,7 +214,7 @@ static const Key keys[] = { { MODKEY, XK_x, incrgaps, {.i = -3 } }, /* { MODKEY|ShiftMask, XK_x, spawn, {.v = (const char*[]){ TERMINAL, "-e", "calendar", NULL } } }, */ /* { MODKEY, XK_c, spawn, SHCMD("") }, */ - { MODKEY|ShiftMask, XK_c, spawn, SHCMD(TERMINAL " -e nvim $CALENDAR") }, + /* { MODKEY|ShiftMask, XK_c, spawn, SHCMD(TERMINAL " -e nvim $CALENDAR") }, */ /* V is automatically bound above in STACKKEYS */ { MODKEY, XK_b, togglebar, {0} }, /* { MODKEY|ShiftMask, XK_b, spawn, SHCMD("") }, */ @@ -240,13 +240,13 @@ static const Key keys[] = { /*{ MODKEY, XK_Insert, spawn, SHCMD("xdotool type $(grep -v '^#' ~/.local/share/larbs/snippets | dmenu -i -l 50 | cut -d' ' -f1)") }, */ { MODKEY, XK_F1, spawn, {.v = (const char*[]){ "dm-displayselect", NULL } } }, - { MODKEY, XK_F2, spawn, SHCMD(TERMINAL " -e pulsemixer; kill -44 $(pidof dwmblocks)")}, - { MODKEY, XK_F3, spawn, {.v = (const char*[]){ TERMINAL, "-e", "htop", NULL } } }, - { MODKEY, XK_F4, spawn, {.v = (const char*[]){ "qpwgraph", NULL } } }, + { MODKEY, XK_F2, spawn, SHCMD(TERMINAL " -e pulsemixer; kill -44 $(pidof dwmblocks)") }, + { MODKEY, XK_F3, spawn, {.v = (const char*[]){ "qpwgraph", NULL } } }, + { MODKEY, XK_F4, spawn, {.v = (const char*[]){ TERMINAL, "-e", "htop", NULL } } }, { MODKEY, XK_F5, spawn, {.v = (const char*[]){ "dm-mounter", NULL } } }, { MODKEY, XK_F6, spawn, {.v = (const char*[]){ "dm-mountcifs", NULL } } }, { MODKEY, XK_F7, spawn, {.v = (const char*[]){ "dm-unmounter", NULL } } }, - { MODKEY, XK_F8, spawn, {.v = (const char*[]){ "dm-unmounter", NULL } } }, + /* { MODKEY, XK_F8, spawn, {.v = (const char*[]){ "dm-unmounter", NULL } } }, */ { MODKEY, XK_F9, spawn, {.v = (const char*[]){ "dm-maimpick", NULL } } }, { MODKEY, XK_F10, spawn, {.v = (const char*[]){ "dm-record", NULL } } }, { MODKEY, XK_F11, spawn, SHCMD("mpv --untimed --no-cache --no-osc --no-input-default-bindings --profile=low-latency --input-conf=/dev/null --title=webcam $(ls /dev/video[0,2,4,6,8] | tail -n 1)") }, @@ -261,34 +261,34 @@ static const Key keys[] = { { MODKEY, XK_Delete, spawn, {.v = (const char*[]){ "dmenurecord", "kill", NULL } } }, { MODKEY, XK_Scroll_Lock, spawn, SHCMD("killall screenkey || screenkey &") }, - { 0, XF86XK_AudioMute, spawn, SHCMD("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle; kill -44 $(pidof dwmblocks)") }, - { 0, XF86XK_AudioRaiseVolume, spawn, SHCMD("wpctl set-volume @DEFAULT_AUDIO_SINK@ 0%- && wpctl set-volume @DEFAULT_AUDIO_SINK@ 3%+; kill -44 $(pidof dwmblocks)") }, - { 0, XF86XK_AudioLowerVolume, spawn, SHCMD("wpctl set-volume @DEFAULT_AUDIO_SINK@ 0%+ && wpctl set-volume @DEFAULT_AUDIO_SINK@ 3%-; kill -44 $(pidof dwmblocks)") }, - { 0, XF86XK_AudioPrev, spawn, {.v = (const char*[]){ "mpc", "prev", NULL } } }, - { 0, XF86XK_AudioNext, spawn, {.v = (const char*[]){ "mpc", "next", NULL } } }, - { 0, XF86XK_AudioPause, spawn, {.v = (const char*[]){ "mpc", "pause", NULL } } }, - { 0, XF86XK_AudioPlay, spawn, {.v = (const char*[]){ "mpc", "play", NULL } } }, - { 0, XF86XK_AudioStop, spawn, {.v = (const char*[]){ "mpc", "stop", NULL } } }, - { 0, XF86XK_AudioRewind, spawn, {.v = (const char*[]){ "mpc", "seek", "-10", NULL } } }, - { 0, XF86XK_AudioForward, spawn, {.v = (const char*[]){ "mpc", "seek", "+10", NULL } } }, - { 0, XF86XK_AudioMedia, spawn, {.v = (const char*[]){ TERMINAL, "-e", "ncmpcpp", NULL } } }, - { 0, XF86XK_AudioMicMute, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") }, + /* { 0, XF86XK_AudioMute, spawn, SHCMD("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle; kill -44 $(pidof dwmblocks)") }, */ + /* { 0, XF86XK_AudioRaiseVolume, spawn, SHCMD("wpctl set-volume @DEFAULT_AUDIO_SINK@ 0%- && wpctl set-volume @DEFAULT_AUDIO_SINK@ 3%+; kill -44 $(pidof dwmblocks)") }, */ + /* { 0, XF86XK_AudioLowerVolume, spawn, SHCMD("wpctl set-volume @DEFAULT_AUDIO_SINK@ 0%+ && wpctl set-volume @DEFAULT_AUDIO_SINK@ 3%-; kill -44 $(pidof dwmblocks)") }, */ + /* { 0, XF86XK_AudioPrev, spawn, {.v = (const char*[]){ "mpc", "prev", NULL } } }, */ + /* { 0, XF86XK_AudioNext, spawn, {.v = (const char*[]){ "mpc", "next", NULL } } }, */ + /* { 0, XF86XK_AudioPause, spawn, {.v = (const char*[]){ "mpc", "pause", NULL } } }, */ + /* { 0, XF86XK_AudioPlay, spawn, {.v = (const char*[]){ "mpc", "play", NULL } } }, */ + /* { 0, XF86XK_AudioStop, spawn, {.v = (const char*[]){ "mpc", "stop", NULL } } }, */ + /* { 0, XF86XK_AudioRewind, spawn, {.v = (const char*[]){ "mpc", "seek", "-10", NULL } } }, */ + /* { 0, XF86XK_AudioForward, spawn, {.v = (const char*[]){ "mpc", "seek", "+10", NULL } } }, */ + /* { 0, XF86XK_AudioMedia, spawn, {.v = (const char*[]){ TERMINAL, "-e", "ncmpcpp", NULL } } }, */ + /* { 0, XF86XK_AudioMicMute, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") }, */ /* { 0, XF86XK_PowerOff, spawn, {.v = (const char*[]){ "sysact", NULL } } }, */ - { 0, XF86XK_Calculator, spawn, {.v = (const char*[]){ TERMINAL, "-e", "bc", "-l", NULL } } }, - { 0, XF86XK_Sleep, spawn, {.v = (const char*[]){ "sudo", "-A", "zzz", NULL } } }, - { 0, XF86XK_WWW, spawn, {.v = (const char*[]){ BROWSER, NULL } } }, - { 0, XF86XK_DOS, spawn, {.v = termcmd } }, - { 0, XF86XK_ScreenSaver, spawn, SHCMD("slock & xset dpms force off; mpc pause; pauseallmpv") }, - { 0, XF86XK_TaskPane, spawn, {.v = (const char*[]){ TERMINAL, "-e", "htop", NULL } } }, - { 0, XF86XK_Mail, spawn, SHCMD(TERMINAL " -e neomutt ; pkill -RTMIN+12 dwmblocks") }, - { 0, XF86XK_MyComputer, spawn, {.v = (const char*[]){ TERMINAL, "-e", "lfub", "/", NULL } } }, + /* { 0, XF86XK_Calculator, spawn, {.v = (const char*[]){ TERMINAL, "-e", "bc", "-l", NULL } } }, */ + /* { 0, XF86XK_Sleep, spawn, {.v = (const char*[]){ "sudo", "-A", "zzz", NULL } } }, */ + /* { 0, XF86XK_WWW, spawn, {.v = (const char*[]){ BROWSER, NULL } } }, */ + /* { 0, XF86XK_DOS, spawn, {.v = termcmd } }, */ + /* { 0, XF86XK_ScreenSaver, spawn, SHCMD("slock & xset dpms force off; mpc pause; pauseallmpv") }, */ + /* { 0, XF86XK_TaskPane, spawn, {.v = (const char*[]){ TERMINAL, "-e", "htop", NULL } } }, */ + /* { 0, XF86XK_Mail, spawn, SHCMD(TERMINAL " -e neomutt ; pkill -RTMIN+12 dwmblocks") }, */ + /* { 0, XF86XK_MyComputer, spawn, {.v = (const char*[]){ TERMINAL, "-e", "lfub", "/", NULL } } }, */ /* { 0, XF86XK_Battery, spawn, SHCMD("") }, */ - { 0, XF86XK_Launch1, spawn, {.v = (const char*[]){ "xset", "dpms", "force", "off", NULL } } }, - { 0, XF86XK_TouchpadToggle, spawn, SHCMD("(synclient | grep 'TouchpadOff.*1' && synclient TouchpadOff=0) || synclient TouchpadOff=1") }, - { 0, XF86XK_TouchpadOff, spawn, {.v = (const char*[]){ "synclient", "TouchpadOff=1", NULL } } }, - { 0, XF86XK_TouchpadOn, spawn, {.v = (const char*[]){ "synclient", "TouchpadOff=0", NULL } } }, - { 0, XF86XK_MonBrightnessUp, spawn, {.v = (const char*[]){ "xbacklight", "-inc", "15", NULL } } }, - { 0, XF86XK_MonBrightnessDown, spawn, {.v = (const char*[]){ "xbacklight", "-dec", "15", NULL } } }, + /* { 0, XF86XK_Launch1, spawn, {.v = (const char*[]){ "xset", "dpms", "force", "off", NULL } } }, */ + /* { 0, XF86XK_TouchpadToggle, spawn, SHCMD("(synclient | grep 'TouchpadOff.*1' && synclient TouchpadOff=0) || synclient TouchpadOff=1") }, */ + /* { 0, XF86XK_TouchpadOff, spawn, {.v = (const char*[]){ "synclient", "TouchpadOff=1", NULL } } }, */ + /* { 0, XF86XK_TouchpadOn, spawn, {.v = (const char*[]){ "synclient", "TouchpadOff=0", NULL } } }, */ + /* { 0, XF86XK_MonBrightnessUp, spawn, {.v = (const char*[]){ "xbacklight", "-inc", "15", NULL } } }, */ + /* { 0, XF86XK_MonBrightnessDown, spawn, {.v = (const char*[]){ "xbacklight", "-dec", "15", NULL } } }, */ /* { MODKEY|Mod4Mask, XK_h, incrgaps, {.i = +1 } }, */ /* { MODKEY|Mod4Mask, XK_l, incrgaps, {.i = -1 } }, */ -- 2.39.5