8134bac8b0f31ae7488fe84ca53b07e4ba6a5dbc
[~bandali/configs] / sxhkd / .config / sxhkd / sxhkdrc
1 #
2 # wm independent hotkeys
3 #
4
5 # terminal emulator
6 super + {_,shift} + Return
7 urxvt{_, -name tiled}
8
9 #super + {_,shift} + Return
10 # termite{_, --name=tiled}
11
12 # program launcher
13 super + space
14 rofi -show run -display-run '> ' -display-window ' 🗔 '
15
16 super + alt + space
17 xfce4-popup-whiskermenu
18
19 # window finder
20 super + backslash
21 rofi -show window -display-run '> ' -display-window ' 🗔 '
22
23 # password manager
24 super + shift + space
25 rofi-pass
26
27 # firefox
28 #super + r
29 # firefox
30
31 # chromium
32 #super + c
33 # chromium -incognito
34
35 # emacs
36 super + e
37 emacs
38
39 # make sxhkd reload its configuration files:
40 super + Escape
41 pkill -USR1 -x sxhkd
42
43 # volume {up,down}
44 XF86Audio{Raise,Lower}Volume
45 pamixer --allow-boost --{in,de}crease 5
46
47 # mute
48 XF86AudioMute
49 pamixer --toggle-mute
50
51 # playback control
52 XF86Audio{Play,Prev,Next}
53 mpc {toggle,prev,next}
54
55 # lock the screen
56 super + shift + q
57 light-locker-command -l
58
59 # Toggle keyboard layout
60 super + F7
61 toggle-layout
62
63 # Toggle Xfce presentation mode
64 XF86LaunchB
65 toggle-presentation-mode
66
67 # monitor brightness
68 #XF86MonBrightness{Up,Down}
69 # light -{A,U} 5
70
71 super + apostrophe
72 rofi-light
73
74 # keyboard brightness
75 #XF86KbdBrightness{Up,Down}
76 # kbdlight {up,down}
77
78 #
79 # bspwm hotkeys
80 #
81
82 # quit bspwm normally
83 super + alt + Escape
84 bspc quit
85
86 # close and kill
87 super + {w,q}
88 bspc node -{c,k}
89
90 # alternate between the tiled and monocle layout
91 super + m
92 bspc desktop -l next
93
94 # if the current node is automatic, send it to the last manual, otherwise pull the last leaf
95 super + y
96 bspc query -N -n focused.automatic && bspc node -n last.!automatic || bspc node last.leaf -n focused
97
98 # swap the current node and the biggest node
99 super + g
100 bspc node -s biggest
101
102 #
103 # state/flags
104 #
105
106 # set the window state
107 super + {t,shift + t,s,f}
108 bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
109
110 # set the node flags
111 super + ctrl + {x,y,z}
112 bspc node -g {locked,sticky,private}
113
114 #
115 # focus/swap
116 #
117
118 # focus the node in the given direction
119 super + {_,shift + }{h,j,k,l}
120 bspc node -{f,s} {west,south,north,east}
121
122 # focus the node for the given path jump
123 super + {p,b,comma,period}
124 bspc node -f @{parent,brother,first,second}
125
126 # focus the next/previous node in the current desktop
127 super + {_,shift + }c
128 bspc node -f {next,prev}.local
129
130 # focus the next/previous desktop in the current monitor
131 super + bracket{left,right}
132 bspc desktop -f {prev,next}.local
133
134 # send to next/prev desktop
135 super + shift + bracket{left,right}
136 bspc node -d {prev,next}
137
138 # focus the last node/desktop
139 super + {grave,Tab}
140 bspc {node,desktop} -f last
141
142 # focus the older or newer node in the focus history
143 super + {o,i}
144 bspc wm -h off; \
145 bspc node {older,newer} -f; \
146 bspc wm -h on
147
148 # focus or send to the given desktop
149 super + {_,shift + }{1-9,0}
150 bspc {desktop -f,node -d} '^{1-9,10}'
151
152 #
153 # preselect
154 #
155
156 # preselect the direction
157 super + ctrl + {h,j,k,l}
158 bspc node -p {west,south,north,east}
159
160 # preselect the ratio
161 super + ctrl + {1-9}
162 bspc node -o 0.{1-9}
163
164 # cancel the preselection for the focused node
165 super + ctrl + space
166 bspc node -p cancel
167
168 # cancel the preselection for the focused desktop
169 super + ctrl + shift + space
170 bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
171
172 #
173 # move/resize
174 #
175
176 # expand a window by moving one of its side outward
177 super + alt + {h,j,k,l}
178 bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
179
180 # contract a window by moving one of its side inward
181 super + alt + shift + {h,j,k,l}
182 bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
183
184 # move a floating window
185 super + {Left,Down,Up,Right}
186 bspc node -v {-20 0,0 20,0 -20,20 0}
187
188 #alt + bracket{left,right}
189 # xdotool key --clearmodifiers ctrl+Page_{Up,Down}