# # # bspwm hotkeys use alt # # # # close and kill alt + {_,shift + }q bspc node -{c,k} # quit/restart bspwm alt + r bspc wm -r # set the window state alt + {t,shift + t,shift + f,f} bspc node -t {tiled,pseudo_tiled,floating,fullscreen} # focus the next/previous desktop in the current monitor alt + {Escape,semicolon} bspc desktop -f {prev,next}.occupied # 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 window in the current desktop alt + super + {j,k} bspc node -f {prev,next}.local # 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} # swap the current node and the biggest node alt + b bspc node -s biggest.local # monacle mode toggle alt + m bspc desktop -l next # rotate current desktop windows layout alt + comma bspc node @/ -R 90 alt + shift + Escape bspc quit # focus or send to the given desktop alt + {_,shift + }{1-9,0} bspc {desktop -f,node -d} '{1-9,10}' # dynamic window gaps (mostly just showing off...) alt + shift + {minus,equal} bspc config -d focused window_gap $((`bspc config -d focused window_gap` {+,-} 2 )) # focus the last node/desktop alt + Tab bspc desktop -f last # move a floating window alt + {Left,Down,Up,Right} bspc node -v {-20 0,0 20,0 -20,20 0} # # # regular keymaps use super # # # super + w $BROWSER super + shift + w $BROWSER -incognito super + e $TERMINAL -n email -e neomutt super + r $TERMINAL -e vifm super + shift + r pcmanfm super + {y,u} scratch {math, dropdown} super + i $TERMINAL -e htop super + p notify-send "$(mpc toggle | sed 2q)" super + shift + p keepassxc super + shift + a $TERMINAL -e alsamixer super + d rofi -show run super + shift + d mpv /mnt/newvol/p/"$(ls /mnt/newvol/p | rofi -dmenu -lines 10)" super + shift + f dmenuunicode super + x lock.sh super + shift + x systemctl restart super + v $TERMINAL -e ncmpcpp -s visualizer super + b mpc prev super + n mpc next super + m $TERMINAL -e ncmpcpp super + shift + m pamixer --allow-boost -t # Other keys super + Return $TERMINAL super + shift + Return $TERMINAL -e tmux_connect.sh super + {minus,equal} pamixer --allow-boost -{d,i} 10 super + BackSpace kill -9 -1 super + shift + BackSpace shutdown now super + space polybar-msg cmd toggle super + bracket{left,right} mpc seek {-,\+}30 super + F1 amixer -c 0 set Headphone 100% unmute && notify-send -t 1000 "🎧 Unmuted!" super + F4 lock.sh && systemctl suspend super + {F7,F8} screen.sh {l,d} {_,shift} + Print maim -{s,i $(xdotool getactivewindow)} ~/Pictures/$(date +%s).png