X-Git-Url: https://git.shemshak.org/~bandali/configs/blobdiff_plain/5ece0347f6af34ec0ee63cbe9f079bf317de9ee2..b9b7e6392e6f55b6d532eedd4520cde4b466c1b4:/sxhkd/.config/sxhkd/sxhkdrc diff --git a/sxhkd/.config/sxhkd/sxhkdrc b/sxhkd/.config/sxhkd/sxhkdrc index 4a8c6ea..78dd17d 100644 --- a/sxhkd/.config/sxhkd/sxhkdrc +++ b/sxhkd/.config/sxhkd/sxhkdrc @@ -1,139 +1,173 @@ # -# bspwm hotkeys +# wm independent hotkeys # -super + alt + Escape - bspc quit +# terminal emulator +super + {_,shift} + Return + urxvt{_, -name tiled} -super + w - bspc window -c +# program launcher +super + space + rofi -show run -super + t - bspc desktop -l next +# window finder +super + backslash + rofi -show window -super + b - bspc desktop -B +# password manager +super + shift + space + rofi-pass -super + {s,f} - bspc window -t {floating,fullscreen} +# firefox +#super + r +# firefox -super + {grave,Tab} - bspc {window,desktop} -f last +# chromium +#super + c +# chromium -incognito -super + apostrophe - bspc window -s last +# emacs +super + e + emacs -super + {o,i} - bspc control --record-history off; \ - bspc window {older,newer} -f; \ - bspc control --record-history on +# make sxhkd reload its configuration files: +super + Escape + pkill -USR1 -x sxhkd -super + y - bspc window -w last.manual +# volume {up,down} +XF86Audio{Raise,Lower}Volume + pamixer --allow-boost --{in,de}crease 5 -super + m - bspc window -s biggest +# mute +XF86AudioMute + pamixer --toggle-mute -super + {_,shift + }{h,j,k,l} - bspc window -{f,s} {left,down,up,right} +# Xfce log out +super + shift + q + xfce4-session-logout -super + {_,shift + }c - bspc window -f {next,prev} +# Toggle keyboard layout +XF86LaunchA + toggle-layout -super + {comma,period} - bspc desktop -C {backward,forward} +# Toggle Xfce presentation mode +XF86LaunchB + toggle-presentation-mode -super + bracket{left,right} - bspc desktop -f {prev,next} +# monitor brightness +#XF86MonBrightness{Up,Down} +# light -s mba6x_backlight -{A,U} 10 -super + ctrl + {h,j,k,l} - bspc window -p {left,down,up,right} +# keyboard brightness +#XF86KbdBrightness{Up,Down} +# kbdlight {up,down} -super + ctrl + {_,shift + }space - bspc {window -p cancel,desktop -c} +# +# bspwm hotkeys +# -super + alt + {h,j,k,l} - bspc window -e {left -10,down +10,up -10,right +10} +# quit bspwm normally +super + alt + Escape + bspc quit -super + alt + shift + {h,j,k,l} - bspc window -e {right -10,up +10,down -10,left +10} +# close and kill +super + {w,q} + bspc node -{c,k} -super + ctrl + {1-9} - bspc window -r 0.{1-9} +# alternate between the tiled and monocle layout +super + m + bspc desktop -l next -super + {_,shift + }{1-9,0} - bspc {desktop -f,window -d} ^{1-9,10} +# if the current node is automatic, send it to the last manual, otherwise pull the last leaf +super + y + bspc query -N -n focused.automatic && bspc node -n last.!automatic || bspc node last.leaf -n focused -~button1 - bspc pointer -g focus +# swap the current node and the biggest node +super + g + bspc node -s biggest -super + button{1-3} - bspc pointer -g {move,resize_side,resize_corner} +# +# state/flags +# -super + !button{1-3} - bspc pointer -t %i %i +# set the window state +super + {t,shift + t,s,f} + bspc node -t {tiled,pseudo_tiled,floating,fullscreen} -super + @button{1-3} - bspc pointer -u +# set the node flags +super + ctrl + {x,y,z} + bspc node -g {locked,sticky,private} # -# wm independent hotkeys +# focus/swap # -super + Return - urxvt - -super + space - dmenu_run -fn "-*-termsyn-medium-r-normal-*-13-*-*-*-c-*-*-1" -h 24 -nb \#1d1f21 -nf \#ffffff -sb \#cc6666 -sf \#ffffff - -super + x - slimlock +# focus the node in the given direction +super + {_,shift + }{h,j,k,l} + bspc node -{f,s} {west,south,north,east} -super + e - emacs +# focus the node for the given path jump +super + {p,b,comma,period} + bspc node -f @{parent,brother,first,second} -super + r - firefox-developer +# focus the next/previous node in the current desktop +super + {_,shift + }c + bspc node -f {next,prev}.local -# make sxhkd reload its configuration files: -super + Escape - pkill -USR1 -x sxhkd +# focus the next/previous desktop in the current monitor +super + bracket{left,right} + bspc desktop -f {prev,next}.local -XF86MonBrightnessDown - xbacklight -dec 5 +# send to next/prev desktop +super + shift + bracket{left,right} + bspc node -d {prev,next} -XF86MonBrightnessUp - xbacklight -inc 5 +# focus the last node/desktop +super + {grave,Tab} + bspc {node,desktop} -f last -XF86KbdBrightnessDown - kbdlight down +# 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 -XF86KbdBrightnessUp - kbdlight up +# focus or send to the given desktop +super + {_,shift + }{1-9,0} + bspc {desktop -f,node -d} '^{1-9,10}' -#XF86AudioRaiseVolume -# pulseaudio-ctl up +# +# preselect +# -#XF86AudioLowerVolume -# pulseaudio-ctl down +# preselect the direction +super + ctrl + {h,j,k,l} + bspc node -p {west,south,north,east} -#XF86AudioMute -# pulseaudio-ctl mute +# preselect the ratio +super + ctrl + {1-9} + bspc node -o 0.{1-9} -XF86AudioPlay - mpc toggle +# cancel the preselection for the focused node +super + ctrl + space + bspc node -p cancel -XF86AudioPrev - mpc prev +# 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 -XF86AudioNext - mpc next +# +# move/resize +# -XF86AudioRaiseVolume - pamixer --allow-boost --increase 5 +# 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} -XF86AudioLowerVolume - pamixer --allow-boost --decrease 5 +# 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} -XF86AudioMute - pamixer --toggle-mute +# move a floating window +super + {Left,Down,Up,Right} + bspc node -v {-20 0,0 20,0 -20,20 0}