aboutsummaryrefslogtreecommitdiff
path: root/.config/sxhkd/sxhkdrc
diff options
context:
space:
mode:
authorMikunoNaka <bokuwakanojogahoshii@yahoo.com>2021-06-12 17:52:42 +0530
committerMikunoNaka <bokuwakanojogahoshii@yahoo.com>2021-06-12 17:52:42 +0530
commit26d7c6ec6088790921c6cdd36925cac9d438c859 (patch)
tree510bcf52f6653042f539c78c566d323f8222a2d5 /.config/sxhkd/sxhkdrc
parent5cd0cb39ca6380b4b4f6e2fb4b79e12dbc333c63 (diff)
Pushing basic bspwm config
Diffstat (limited to '.config/sxhkd/sxhkdrc')
-rw-r--r--.config/sxhkd/sxhkdrc114
1 files changed, 114 insertions, 0 deletions
diff --git a/.config/sxhkd/sxhkdrc b/.config/sxhkd/sxhkdrc
new file mode 100644
index 0000000..bf44264
--- /dev/null
+++ b/.config/sxhkd/sxhkdrc
@@ -0,0 +1,114 @@
+# terminal emulator
+super + Return
+ prime-run alacritty
+
+# program launcher
+super + shift + p
+ dmenu_run
+
+# make sxhkd reload its configuration files:
+super + Escape
+ pkill -USR1 -x sxhkd
+
+# bspwm hotkeys
+# quit/restart bspwm
+super + shift + {q,r}
+ bspc {quit,wm -r}
+
+# kill and close
+alt + {_,shift + }w
+ bspc node -{k,c}
+
+# alternate between the tiled and monocle layout
+super + f
+ 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 window
+# super + g
+# bspc node -s biggest.window
+
+#
+# state/flags
+#
+
+# set the window state
+super + {a,shift + a,shift + f,f}
+ bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
+
+# set the node flags
+super + ctrl + {m,x,v,z}
+ bspc node -g {marked,locked,sticky,private}
+
+#
+# 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 window in the current desktop
+alt + {j,k}
+ bspc node -f {prev,next}.local.!hidden.window
+
+# focus the next/previous desktop in the current monitor
+alt + {h,l}
+ 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}