set up wm independant keybindings
This commit is contained in:
		
						commit
						e548ebbce3
					
				| 
						 | 
					@ -0,0 +1,158 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# wm independent hotkeys
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# terminal emulator
 | 
				
			||||||
 | 
					# super + Return
 | 
				
			||||||
 | 
					#	urxvt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# program launcher
 | 
				
			||||||
 | 
					#super + @space
 | 
				
			||||||
 | 
					#	dmenu_run
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# make sxhkd reload its configuration files:
 | 
				
			||||||
 | 
					#super + Escape
 | 
				
			||||||
 | 
					#	pkill -USR1 -x sxhkd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + p
 | 
				
			||||||
 | 
						dmenu_recency
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + shift + Return
 | 
				
			||||||
 | 
						kitty
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + control + Return
 | 
				
			||||||
 | 
						kitty tmux new
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + shift + p
 | 
				
			||||||
 | 
						keepmenu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## screenshots
 | 
				
			||||||
 | 
					super + Print
 | 
				
			||||||
 | 
						i3-scrot
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + shift + Print
 | 
				
			||||||
 | 
						i3-scro -d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + s
 | 
				
			||||||
 | 
						dmnu_ssh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + e
 | 
				
			||||||
 | 
						dmenu_power
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + shift + e
 | 
				
			||||||
 | 
						slock
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + o
 | 
				
			||||||
 | 
						bm
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + F12
 | 
				
			||||||
 | 
						st -t "WM_FORCE_FLOATING" -g 238x61+8+16 -e glances
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + F11
 | 
				
			||||||
 | 
						date-show
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# bspwm hotkeys
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# quit/restart bspwm
 | 
				
			||||||
 | 
					super + shift + {q,r}
 | 
				
			||||||
 | 
						bspc {quit,wm -r}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# close and kill
 | 
				
			||||||
 | 
					super + {_,shift + }w
 | 
				
			||||||
 | 
						bspc node -{c,k}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# alternate between the tiled and monocle layout
 | 
				
			||||||
 | 
					super + m
 | 
				
			||||||
 | 
						bspc desktop -l next
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# send the newest marked node to the newest preselected node
 | 
				
			||||||
 | 
					super + y
 | 
				
			||||||
 | 
						bspc node newest.marked.local -n newest.!automatic.local
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# swap the current node and the biggest node
 | 
				
			||||||
 | 
					super + g
 | 
				
			||||||
 | 
						bspc node -s biggest
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# state/flags
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# set the window state
 | 
				
			||||||
 | 
					super + {t,shift + t,s,f}
 | 
				
			||||||
 | 
						bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# set the node flags
 | 
				
			||||||
 | 
					super + ctrl + {m,x,y,z}
 | 
				
			||||||
 | 
						bspc node -g {marked,locked,sticky,private}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# focus/swap
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the node in the given direction
 | 
				
			||||||
 | 
					super + {_,shift + }{h,j,k,l}
 | 
				
			||||||
 | 
						bspc node -{f,s} {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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus or send to the given desktop
 | 
				
			||||||
 | 
					super + {_,shift + }{1-9,0}
 | 
				
			||||||
 | 
						bspc {desktop -f,node -d} '^{1-9,10}'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# preselect
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# preselect the direction
 | 
				
			||||||
 | 
					super + ctrl + {h,j,k,l}
 | 
				
			||||||
 | 
						bspc node -p {west,south,north,east}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# preselect the ratio
 | 
				
			||||||
 | 
					super + ctrl + {1-9}
 | 
				
			||||||
 | 
						bspc node -o 0.{1-9}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cancel the preselection for the focused node
 | 
				
			||||||
 | 
					super + ctrl + space
 | 
				
			||||||
 | 
						bspc node -p cancel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cancel the preselection for the focused desktop
 | 
				
			||||||
 | 
					super + ctrl + shift + space
 | 
				
			||||||
 | 
						bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# move/resize
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# expand a window by moving one of its side outward
 | 
				
			||||||
 | 
					super + alt + {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
 | 
				
			||||||
 | 
					super + alt + shift + {h,j,k,l}
 | 
				
			||||||
 | 
						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}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue