summaryrefslogtreecommitdiffstats
path: root/sxhkd/.config/sxhkd
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2017-12-10 14:34:27 +0100
committerDavid Robillard <d@drobilla.net>2017-12-10 14:39:53 +0100
commitd2da4e5d2866083b8159f57eb04da01662b0dc17 (patch)
tree14fd5bf57fbaedccd00d1490639319c40b163638 /sxhkd/.config/sxhkd
parentba6f1ea48ccc54f0afdd5eafee65ad6bf9b502c6 (diff)
downloaddotfiles-d2da4e5d2866083b8159f57eb04da01662b0dc17.tar.gz
dotfiles-d2da4e5d2866083b8159f57eb04da01662b0dc17.tar.bz2
dotfiles-d2da4e5d2866083b8159f57eb04da01662b0dc17.zip
Make dotfiles stow compatible
Diffstat (limited to 'sxhkd/.config/sxhkd')
-rw-r--r--sxhkd/.config/sxhkd/sxhkdrc153
1 files changed, 153 insertions, 0 deletions
diff --git a/sxhkd/.config/sxhkd/sxhkdrc b/sxhkd/.config/sxhkd/sxhkdrc
new file mode 100644
index 0000000..3be442f
--- /dev/null
+++ b/sxhkd/.config/sxhkd/sxhkdrc
@@ -0,0 +1,153 @@
+#
+# wm independent hotkeys
+#
+
+# terminal emulator
+super + Return
+ gnome-terminal
+
+# program launcher
+super + ctrl + r
+ rofi -fg "#92A850" -font "Monospace 14" -show run
+
+# make sxhkd reload its configuration files:
+super + Escape
+ pkill -USR1 -x sxhkd
+
+# show panel
+super + ctrl + p
+ bspc config top_padding $PANEL_HEIGHT; \
+ xdotool search --name "Top Expanded Edge Panel" windowmap; \
+ xdotool search --name "Top Expanded Edge Panel" windowraise;
+
+# hide panel
+super + ctrl + shift + p
+ xdotool search --name "Top Expanded Edge Panel" windowunmap; \
+ bspc config top_padding 0
+
+#
+# multimedia keys
+#
+
+# XF86MonBrightnessDown
+# xbacklight -dec 2
+
+# XF86MonBrightnessUp
+# xbacklight -inc 2
+
+# XF86KbdBrightnessDown
+# /home/drobilla/bin/kbdled.sh down
+
+# XF86KbdBrightnessUp
+# /home/drobilla/bin/kbdled.sh up
+
+# XF86AudioRaiseVolume
+# amixer sset Master 5%+
+
+# XF86AudioLowerVolume
+# amixer sset Master 5%-
+
+# XF86AudioMute
+# amixer set Master toggle
+
+#
+# bspwm hotkeys
+#
+
+# 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 + space
+ bspc desktop -l next
+
+# 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
+
+# swap the current node and the biggest node
+super + g
+ bspc node -s biggest
+
+#
+# state/flags
+#
+
+# set the window state
+super + {t,shift + t,l,f}
+ bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
+
+# set the node flags
+super + ctrl + {x,y,z}
+ bspc node -g {locked,sticky,private}
+
+#
+# focus/swap
+#
+
+# focus the node in the given direction
+super + {_,shift + }{Left,Down,Up,Right}
+ 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 active desktop
+super + {n,p}
+ bspc node -f {next.active,prev.active}
+
+# focus the next/previous desktop
+super + bracket{left,right}
+ bspc desktop -f {prev,next}
+
+# 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 + {Left,Down,Up,Right}
+ 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 or desktop
+super + ctrl + {_,shift + }space
+ bspc node @{_,/} -p cancel
+
+#
+# resize tiled/floating
+#
+
+# expand the tiled space in the given direction
+super + alt + {Left,Down,Up,Right}
+ bspc node {@west -r -10,@south -r +10,@north -r -10,@east -r +10}
+
+# contract the tiled space in the given direction
+super + alt + shift + {Left,Down,Up,Right}
+ bspc node {@east -r -10,@north -r +10,@south -r -10,@west -r +10}
+
+# move a floating window
+# super + {Left,Down,Up,Right}
+# xdo move {-x -20,-y +20,-y -20,-x +20}