# # wm independent hotkeys # # terminal emulator mod4 + ctrl + Return urxvt mod4 + ctrl + shift + Return urxvt -name urxvt-stream mod4 + grave urxvt-scratch-window mod4 + space urxvt-app-launcher mod4 + backslash urxvt-pass-manager mod4 + mod1 + backslash firefox-current # urxvt-pass-manager -r # reload sxhkd mod4 + ctrl + shift + Escape ding; pkill -USR1 -x sxhkd # # Media keys # Print maim -s ~/screenshots/$(date +%F-%T).png && notify-send "Screenshot saved" mod4 + Print maim ~/screenshots/$(date +%F-%T).png && notify-send "Fullscreen screenshot saved" mod4 + shift + Print maim -d 3 ~/screenshots/$(date +%F-%T).png && notify-send "Screenshot saved" Pause mpc -q toggle # play/pause music mod4 + {Pause,XF86Eject} zzz # sleep display mod4 + shift + Pause zzz -f # sleep computer # Media Keys XF86Audio{Play,Pause} mpc -q toggle XF86Audio{Prev,Next} mpc -q {prev,next} XF86Audio{LowerVolume,RaiseVolume} vol {-,+} XF86AudioMute vol toggle mod4 + {Down,Up} vol {-,+} mod4 + {Left,Right} mpc {prev,next} # # bspwm hotkeys # # quit bspwm normally mod4 + alt + Escape bspc quit # close and kill mod4 + {_,shift + }q bspc node -{c,k} # # state/flags # mod4 + {ctrl,shift + } f {bspc desktop -l next,bspc node -t \~floating} mod4 + shift + p bspc node -t \~pseudo_tiled # set the node flags mod4 + ctrl + {x,y,z} bspc node -g {locked,sticky,private} # # focus/swap # # focus/swap the node in the given direction mod4 + {_,ctrl +}{h,j,k,l} bspc-focus {_,-m }{west,south,north,east} mod4 + shift + {_,ctrl +}{h,j,k,l} bspc-swap {_,-m }{west,south,north,east} # focus the node for the given path jump mod4 + {p,b,comma,period} bspc node -f @{parent,brother,first,second} # focus monitor or send to the given desktop mod4 + bracket{left,right} bspc desktop -f focused#{prev,next}.local mod4 + ctrl + {_,shift +}{1-9,0} bspc {desktop -f,node -d} {1-9,10} # # preselect # # preselect the direction mod4 + mod1 + ctrl + {h,j,k,l} bspc node -p {west,south,north,east} # preselect the ratio mod4 + mod1 + ctrl + {1-9} bspc node -o 0.{1-9}5 # cancel the preselection for the focused node mod4 + mod1 + ctrl + space bspc node -p cancel # cancel the preselection for the focused desktop #mod4 + alt + shift + space # bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel # expand the tiled space in the given direction #mod4 + alt + {h,j,k,l} # bspc node {@west -r -,@south -r +,@north -r -,@east -r +}64 # ## contract the tiled space in the given direction #mod4 + alt + ctrl + {h,j,k,l} # bspc node {@east -r -,@north -r +,@south -r -,@west -r +}64 # move a floating window #mod4 + alt + {Left,Down,Up,Right} # xdo move {-x -,-y +,-y -,-x +}40 #mod4 + alt + ctrl + {Left,Down,Up,Right} # xdo resize {-w -,-h -,-h -,-w -}40