1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 | ## ┌─┐─┐ ┬┬ ┬┬┌─┌┬┐
## └─┐┌┴┬┘├─┤├┴┐ ││
## └─┘┴ └─┴ ┴┴ ┴─┴┘
## -- sxhkd hotkeys --
## terminal
super + Return
urxvt
## program launcher
super + @space
interrobang
## reload sxhkd config
super + Escape
pkill -USR1 -x sxhkd
## -- bspwm hotkeys --
## quit bspwm
super + alt + Escape
pkill -x panel; bspc quit
## kill bspwm
super + {_,shift + }w
bspc node -{c,k}
## change tiled to monocle and vice versa
super + m
bspc desktop -l next
## pull the last node
super + p
bspc query -N -n focused.automatic && bspc node -n last.!automatic || bspc node last.leaf -n focused
## swap the current node and the biggest node
super + g
bspc node -s biggest
## -- state and flags --
## window state
super + {t,shift + t,s,f}
bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
## node flags
super + ctrl + {x,s,p}
bspc node -g {locked,sticky,private}
## -- focus/swap --
## focus the node in the given direction
super + {shift + }{Left,Down,Up,Right}
bspc node -f {west,south,north,east}
## focus the node for the given path jump
super + {p,b,comma,period}
bspc node -f @{parent,brother,first,second}
## focus the next/previous node in the current desktop
super + {_,shift + }c
bspc node -f {next,prev}.local
## focus the next/previous desktop in the current monitor
super + bracket{left,right}
bspc desktop -f {prev,next}.local
## focus the last node/desktop
super + {grave,Tab}
bspc {node,desktop} -f last
## focus the older or newer node in the focus history
super + {o,i}
bspc wm -h off; \
bspc node {older,newer} -f; \
bspc wm -h on
## send focused node to the given desktop
super + {_,shift + }{1-9,0}
bspc {desktop -f,node -d} '^{1-9,10}'
## -- preselect --
## preselect the direction
super + ctrl + {Left,Down,Up,Right}
bspc node -p {west,south,north,east}
## preselect the ratio
super + ctrl + {1-9}
bspc node -o 0.{1-9}
## cancel the preselection
super + ctrl + space
bspc node -p cancel
## cancel the preselection for desktop
#super + ctrl + shift + space
# bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
## -- move and resize --
## expand a window
super + alt + {Left,Down,Up,Right}
bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
## contract a window
super + alt + shift + {Left,Down,Up,Right}
bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
## move a floating window
super + {Left,Down,Up,Right}
bspc node -v {-20 0,0 20,0 -20,20 0}
|
x