aboutsummaryrefslogtreecommitdiff
path: root/bspwm/.config/sxhkd
diff options
context:
space:
mode:
authorKumar Damani <damani.kumar@gmail.com>2019-04-26 18:25:11 +0000
committerKumar Damani <damani.kumar@gmail.com>2019-04-26 18:25:11 +0000
commita13339e0e99118870498ecfdea22292c7e267eb2 (patch)
tree127c8a7b88ca6b5eddc7ec567122ec129c72799a /bspwm/.config/sxhkd
dotfiles with stow structure
Diffstat (limited to 'bspwm/.config/sxhkd')
-rw-r--r--bspwm/.config/sxhkd/sxhkdrc168
1 files changed, 168 insertions, 0 deletions
diff --git a/bspwm/.config/sxhkd/sxhkdrc b/bspwm/.config/sxhkd/sxhkdrc
new file mode 100644
index 0000000..5e1b8a6
--- /dev/null
+++ b/bspwm/.config/sxhkd/sxhkdrc
@@ -0,0 +1,168 @@
+#
+# wm independent hotkeys
+#
+
+# terminal emulator
+super + Return
+ st
+
+super + shift + Return
+ st -e tmux_connect.sh
+
+# program launcher
+super + d
+ rofi -show run
+
+alt + shift + Escape
+ bspc quit
+
+super + F4
+ systemctl suspend
+
+super + x
+ lock.sh bspwm
+
+super + shift + x
+ systemctl restart
+
+super + BackSpace
+ shutdown now
+
+#
+# bspwm hotkeys
+#
+
+# quit/restart bspwm
+alt + r
+ bspc wm -r
+
+# close and kill
+alt + {_,shift + }q
+ bspc node -{c,k}
+
+# swap the current node and the biggest node
+alt + b
+ bspc node -s biggest.local
+
+# dynamic window gaps (mostly just showing off...)
+alt + shift + {minus,equal}
+ bspc config -d focused window_gap $((`bspc config -d focused window_gap` {+,-} 2 ))
+
+alt + m
+ bspc desktop -l next
+
+alt + comma
+ bspc node @/ -R 90
+
+#
+# state/flags
+#
+
+# set the window state
+alt + {t,shift + t,shift + f,f}
+ bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
+
+#
+# focus/swap
+#
+
+# focus the node in the given direction
+alt + {_,shift + }{h,j,k,l}
+ bspc node -{f,s} {west,south,north,east}
+
+# focus the next/previous desktop in the current monitor
+alt + {Escape,semicolon}
+ bspc desktop -f {prev,next}.occupied
+
+# focus the next/previous window in the current desktop
+super + alt + {j,k}
+ bspc node -f {prev,next}.local
+
+# focus the last node/desktop
+alt + Tab
+ bspc desktop -f last
+
+# focus or send to the given desktop
+alt + {_,shift + }{1-9,0}
+ bspc {desktop -f,node -d} '{1-9,10}'
+
+
+#
+# move/resize
+#
+
+# expand a window by moving one of its side outward
+alt + ctrl + {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
+alt + ctrl + shift + {h,j,k,l}
+ bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
+
+# move a floating window
+alt + {Left,Down,Up,Right}
+ bspc node -v {-20 0,0 20,0 -20,20 0}
+
+
+#
+# regular keymaps
+#
+super + w
+ firefox
+
+super + shift + w
+ firefox -private-window
+
+super + e
+ st -n email -e neomutt
+
+super + r
+ st -e vifm
+
+super + shift + r
+ pcmanfm
+
+super + {y,u}
+ scratch {math, dropdown}
+
+super + i
+ st -e htop
+
+super + p
+ mpc toggle
+
+super + shift + p
+ keepassxc
+
+super + shift + a
+ st -e alsamixer
+
+super + shift + f
+ dmenuunicode
+
+super + v
+ st -e ncmpcpp -s visualizer
+
+super + b
+ mpc prev
+
+super + n
+ mpc next
+
+super + m
+ st -e ncmpcpp
+
+super + shift + m
+ pamixer --allow-boost -t
+
+super + {F7,F8}
+ screen.sh {l,d}
+
+super + bracket{left,right}
+ mpc seek {-,\+}30
+
+super + {minus,equal}
+ pamixer --allow-boost -{d,i} 10
+
+{_,shift} + Print
+ maim -{s,i $(xdotool getactivewindow)} ~/Pictures/$(date +%s).png