You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
2.7 KiB
129 lines
2.7 KiB
6 years ago
|
# -*-conf-*-
|
||
|
|
||
|
|
||
|
##--- Control ---##
|
||
|
|
||
|
|
||
|
# Restart bspwm
|
||
|
super + shift + r
|
||
|
bspc wm -r
|
||
|
|
||
|
# Logout
|
||
|
super + shift + e
|
||
|
prompt.sh "Logout and exit bspwm?" "bspc quit"
|
||
|
|
||
|
|
||
|
##--- Node ---##
|
||
|
|
||
|
|
||
|
# Close and kill focused node
|
||
|
super + {_,shift} + q
|
||
|
bspc node -{c,k}
|
||
|
|
||
|
#-- State/flags --#
|
||
|
|
||
|
# Toggle fullscreen mode
|
||
|
super + f
|
||
|
bspc node -t \~fullscreen
|
||
|
|
||
|
# Toggle tiled/floating
|
||
|
super + space
|
||
|
bspc query -N -n focused.tiled && \
|
||
|
bspc node -t floating || bspc node -t tiled -g sticky=off
|
||
|
|
||
|
# Sticky floating node
|
||
|
super + shift + f
|
||
|
bspc node -t floating -g sticky=on; $HOME/.scripts/wm/hover.sh
|
||
|
|
||
|
# Set node flags
|
||
|
super + ctrl + {s,p,semicolon}
|
||
|
bspc node -g {sticky,private,locked}
|
||
|
|
||
|
#-- Focus --#
|
||
|
|
||
|
# Focus node in direction
|
||
|
super + {_,shift} + {h,j,k,l}
|
||
|
bspc node -{f,s} {west,south,north,east}.local
|
||
|
super + {_,shift} + {Left,Down,Up,Right}
|
||
|
bspc node -{f,s} {west,south,north,east}.local
|
||
|
|
||
|
# Focus the node for the given path jump
|
||
|
super + {p,b,comma,period}
|
||
|
bspc node -f @{parent,brother,first,second}.local
|
||
|
|
||
|
# Focus previous/next node
|
||
|
super + {_,shift} + Tab
|
||
|
bspc node -f {next,prev}.local
|
||
|
|
||
|
# Focus previous/next monitor
|
||
|
super + bracket{left,right}
|
||
|
bspc monitor -f {prev,next}
|
||
|
|
||
|
#-- Move --#
|
||
|
|
||
|
# Move node to previous/next/last desktop
|
||
|
super + shift + {minus,equal,grave}
|
||
|
bspc node -d {prev.local,next.local,last}
|
||
|
|
||
|
# Move node to previous/next monitor
|
||
|
super + shift + bracket{left,right}
|
||
|
bspc node -m {prev,next} --follow
|
||
|
|
||
|
# Swap focused and biggest node
|
||
|
super + g
|
||
|
bspc node -s biggest.local
|
||
|
|
||
|
# Send focused node to the latest preselect node
|
||
|
super + y
|
||
|
bspc node -n newest.!automatic.local
|
||
|
|
||
|
#-- Resize --#
|
||
|
|
||
|
# Expand node by moving its side outward
|
||
|
super + alt + {h,j,k,l}
|
||
|
bspc node -z {left -30 0,bottom 0 30,top 0 -30,right 30 0}
|
||
|
super + alt + {Left,Down,Up,Right}
|
||
|
bspc node -z {left -30 0,bottom 0 30,top 0 -30,right 30 0}
|
||
|
|
||
|
# Contract node by moving its side inward
|
||
|
super + alt + ctrl + {h,j,k,l}
|
||
|
bspc node -z {right -30 0,top 0 30,bottom 0 -30,left 30 0}
|
||
|
super + alt + ctrl + {Left,Down,Up,Right}
|
||
|
bspc node -z {right -30 0,top 0 30,bottom 0 -30,left 30 0}
|
||
|
|
||
|
#-- Preselect node --#
|
||
|
|
||
|
# Preselect direction
|
||
|
super + ctrl + {h,j,k,l}
|
||
|
bspc node -p {west,south,north,east}
|
||
|
super + ctrl + {Left,Down,Up,Right}
|
||
|
bspc node -p {west,south,north,east}
|
||
|
|
||
|
# Preselect ratio
|
||
|
super + ctrl + {1-9}
|
||
|
bspc node -o 0.{1-9}
|
||
|
|
||
|
# Cancel preselection in focused node
|
||
|
super + ctrl + space
|
||
|
bspc node -p cancel
|
||
|
|
||
|
|
||
|
##--- Desktop ---##
|
||
|
|
||
|
|
||
|
# Toggle tiled/monocle layout
|
||
|
super + z
|
||
|
bspc desktop -l next
|
||
|
|
||
|
# Focus/send node to desktop
|
||
|
super + {_,shift} + {1-9,0}
|
||
|
bspc {desktop -f,node -d} '^{1-9,10}'
|
||
|
|
||
|
# Focus the previous/next desktop on current monitor
|
||
|
super + {minus,equal}
|
||
|
bspc desktop -f {prev,next}.local
|
||
|
|
||
|
# Focus last desktop
|
||
|
super + grave
|
||
|
bspc desktop -f last
|