helm/os/arch/.config/sxhkd/sxhkdrc
2017-04-25 14:19:28 -04:00

165 lines
3.3 KiB
Plaintext

#
# wm independent hotkeys
#
# terminal emulator
super + ctrl + Return
urxvt -tn xterm-256color
# scratchpad
super + grave
tmux kill-session -t scratch \
|| urxvt -name urxvt-scratch -geometry 100x26 -e bash -c 'tmux new-session -A -s scratch'
# program launcher
super + space
xdotool search --onlyvisible --classname urxvt-fuzzy windowunmap \
|| xdotool search --classname urxvt-fuzzy windowmap \
|| urxvt -name urxvt-fuzzy -geometry 100x26 -e $SHELL -c fzf-apps
# password manager
super + alt + backslash
fzf-pass
# make sxhkd reload its configuration files:
super + Escape
pkill -USR1 -x sxhkd
#
# Media keys
#
Pause
mpc -q toggle
super + Pause
zzz
Print
maim --opengl -s ~/shared/screenshots/$(date +%F-%T).png
super + Print
maim --opengl --showcursor ~/shared/screenshots/$(date +%F-%T).png
#
XF86Audio{Play,Pause}
mpc -q toggle
XF86Audio{Prev,Next}
mpc -q {prev,next}
XF86Audio{LowerVolume,RaiseVolume}
vol {-,+}
XF86AudioMute
vol toggle
super + XF86Eject
zzz
super + {Down,Up}
vol {-,+}
super + {Left,Right}
mpc {prev,next}
#
# bspwm hotkeys
#
# quit bspwm normally
super + alt + Escape
bspc quit
# close and kill
super + {_,shift + }q
bspc node -{c,k}
#
# state/flags
#
super + {_,shift + } f
{bspc.sh m,bspc node -t \~floating}
super + shift + p
bspc node -t \~pseudo_tiled
# set the node flags
super + ctrl + {x,y,z}
bspc node -g {locked,sticky,private}
#
# focus/swap
#
# focus/swap the node in the given direction
super + {_,shift +,ctrl +,shift + ctrl +}{h,j,k,l}
bspc.sh {f,s,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
super + {_,shift + }Tab
bspc.sh F {east,west}
# focus monitor or send to the given desktop
super + bracket{left,right}
bspc desktop -f focused#{prev,next}.local
# 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
super + ctrl + {_,shift +}{1-9,0}
bspc {desktop -f,node -d} C/{1-9,10}
# minimize (send to dump desktop)
super + m
bspc node -d C/5
#
# preselect
#
# preselect the direction
super + alt + shift + {h,j,k,l}
bspc node -p {west,south,north,east}
# preselect the ratio
super + alt + shift + {1-9}
bspc node -o 0.{1-9}
# cancel the preselection for the focused node
super + alt + shift + space
bspc node -p cancel
# cancel the preselection for the focused desktop
super + 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
super + alt + {h,j,k,l}
bspc node {@west -r -,@south -r +,@north -r -,@east -r +}64
# contract the tiled space in the given direction
super + alt + ctrl + {h,j,k,l}
bspc node {@east -r -,@north -r +,@south -r -,@west -r +}64
# move a floating window
super + alt + {Left,Down,Up,Right}
xdo move {-x -,-y +,-y -,-x +}40
super + alt + ctrl + {Left,Down,Up,Right}
xdo resize {-w -,-h -,-h -,-w -}40
#
#
#
# Stream mode
super + shift + s
bspc config -m C left_padding 320; \
bspc config -m C right_padding 320; \
bspc config -m C top_padding 255; \
bspc config -m C bottom_padding 255; \
bspc config -m C window_gap 8