diff options
Diffstat (limited to 'bspwm/.config/sxhkd/sxhkdrc')
| -rw-r--r-- | bspwm/.config/sxhkd/sxhkdrc | 168 |
1 files changed, 168 insertions, 0 deletions
diff --git a/bspwm/.config/sxhkd/sxhkdrc b/bspwm/.config/sxhkd/sxhkdrc new file mode 100644 index 0000000..5e1b8a6 --- /dev/null +++ b/bspwm/.config/sxhkd/sxhkdrc @@ -0,0 +1,168 @@ +# +# wm independent hotkeys +# + +# terminal emulator +super + Return + st + +super + shift + Return + st -e tmux_connect.sh + +# program launcher +super + d + rofi -show run + +alt + shift + Escape + bspc quit + +super + F4 + systemctl suspend + +super + x + lock.sh bspwm + +super + shift + x + systemctl restart + +super + BackSpace + shutdown now + +# +# bspwm hotkeys +# + +# quit/restart bspwm +alt + r + bspc wm -r + +# close and kill +alt + {_,shift + }q + bspc node -{c,k} + +# swap the current node and the biggest node +alt + b + bspc node -s biggest.local + +# dynamic window gaps (mostly just showing off...) +alt + shift + {minus,equal} + bspc config -d focused window_gap $((`bspc config -d focused window_gap` {+,-} 2 )) + +alt + m + bspc desktop -l next + +alt + comma + bspc node @/ -R 90 + +# +# state/flags +# + +# set the window state +alt + {t,shift + t,shift + f,f} + bspc node -t {tiled,pseudo_tiled,floating,fullscreen} + +# +# focus/swap +# + +# focus the node in the given direction +alt + {_,shift + }{h,j,k,l} + bspc node -{f,s} {west,south,north,east} + +# focus the next/previous desktop in the current monitor +alt + {Escape,semicolon} + bspc desktop -f {prev,next}.occupied + +# focus the next/previous window in the current desktop +super + alt + {j,k} + bspc node -f {prev,next}.local + +# focus the last node/desktop +alt + Tab + bspc desktop -f last + +# focus or send to the given desktop +alt + {_,shift + }{1-9,0} + bspc {desktop -f,node -d} '{1-9,10}' + + +# +# move/resize +# + +# expand a window by moving one of its side outward +alt + ctrl + {h,j,k,l} + bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0} + +# contract a window by moving one of its side inward +alt + ctrl + shift + {h,j,k,l} + bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0} + +# move a floating window +alt + {Left,Down,Up,Right} + bspc node -v {-20 0,0 20,0 -20,20 0} + + +# +# regular keymaps +# +super + w + firefox + +super + shift + w + firefox -private-window + +super + e + st -n email -e neomutt + +super + r + st -e vifm + +super + shift + r + pcmanfm + +super + {y,u} + scratch {math, dropdown} + +super + i + st -e htop + +super + p + mpc toggle + +super + shift + p + keepassxc + +super + shift + a + st -e alsamixer + +super + shift + f + dmenuunicode + +super + v + st -e ncmpcpp -s visualizer + +super + b + mpc prev + +super + n + mpc next + +super + m + st -e ncmpcpp + +super + shift + m + pamixer --allow-boost -t + +super + {F7,F8} + screen.sh {l,d} + +super + bracket{left,right} + mpc seek {-,\+}30 + +super + {minus,equal} + pamixer --allow-boost -{d,i} 10 + +{_,shift} + Print + maim -{s,i $(xdotool getactivewindow)} ~/Pictures/$(date +%s).png |
