Last active
June 16, 2021 17:22
-
-
Save acidDrain/0146afdae10099d1c0ab7d763d91d679 to your computer and use it in GitHub Desktop.
My sxhkdrc configuration
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env sh | |
# vim: noexpandtab:softtabstop=0: | |
# | |
# wm independent hotkeys | |
# | |
# suckless' simple terminal emulator | |
super + Return | |
st | |
# program launcher | |
super + @space | |
~/.config/polybar/scripts/deepin-menu | |
# rofi -combi-modi window,drun,ssh,run -theme wal-custom-theme -font "Arimo Nerd Font 14" -modi combi -show combi -icon-theme "McMojave-circle-black-dark" -show-icons | |
# rofi -show run | |
# dmenu_run -c -bw 2 -g 4 -l 24 -h 18 | |
#wifi menu | |
ctrl + alt + space | |
~/.config/scripts/rofi-wifi-menu/rofi-wifi-menu.sh | |
# make sxhkd reload its configuration files: | |
super + Escape | |
pkill -USR1 -x sxhkd | |
super + ctrl + shift + s | |
scrot --border --count --delay 3 --focused "$HOME/Pictures/Screenshot-$(date +"%s").png" | |
super + ctrl + shift + f | |
firefox | |
# lock the screen (not super + l because of vim key bindings / movements) | |
shift + ctrl + l | |
light-locker-command -a -l | |
# | |
# bspwm hotkeys | |
# | |
# Toggle horizontal/vertical | |
super + e | |
bspc node @parent -R 90 | |
# Equalize nodes | |
super + p | |
bspc node @parent -E | |
# quit bspwm normally | |
super + alt + Escape | |
bspc quit | |
# 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} | |
#super + alt + h | |
# bspc node -g sticky=on state=floating hidden=on | |
# show (toggle) hidden node | |
super + ctrl + shift + h | |
bspc node $(bspc query -N -d focused -n .hidden.local.window) --flag hidden={on,off} | |
# hide (toggle) node | |
# super + ctrl + shift + h | |
# bspc node $(bspc query -N -d focused -n .hidden.local.window) --flag hidden=on | |
# | |
# 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} | |
super + u | |
scratchpad.sh scratchpad | |
super + Prior | |
pactl set-sink-volume 0 +1000 | |
super + Next | |
pactl set-sink-volume 0 -1000 | |
super + Pause | |
pactl set-sink-mute 0 toggle | |
# play/pause, prev/next, stop | |
super + {Insert,Delete,End,Home} | |
playerctl {play-pause,previous,next,stop} | |
# | |
## | |
## media control | |
## | |
# | |
## volume | |
#XF86Audio{Raise,Lower}Volume | |
# amixer set Master 5%{+,-} | |
# | |
## mute | |
#XF86AudioMute | |
# amixer set Master toggle | |
# | |
## play/pause, prev/next, stop | |
#XF86Audio{Play,Prev,Next,Stop} | |
# playerctl {play-pause,previous,next,stop} | |
# | |
## mpc volume | |
#shift + XF86Audio{Raise,Lower}Volume | |
# mpc volume {+,-}5 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment