From 4e1bd1e207f96ec705152e7284fcaceb135182a8 Mon Sep 17 00:00:00 2001 From: Sébastien Dailly Date: Sun, 24 Oct 2021 21:55:02 +0200 Subject: Bspwm configuration --- sxhkd/.config/sxhkd/sxhkdrc | 164 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 sxhkd/.config/sxhkd/sxhkdrc (limited to 'sxhkd/.config') diff --git a/sxhkd/.config/sxhkd/sxhkdrc b/sxhkd/.config/sxhkd/sxhkdrc new file mode 100644 index 0000000..2276c2d --- /dev/null +++ b/sxhkd/.config/sxhkd/sxhkdrc @@ -0,0 +1,164 @@ +# +# wm independent hotkeys +# + +# terminal emulator +super + Return + urxvtcd + +# program launcher +super + i + rofi -show run + +#super + @space +# dmenu_run + +# make sxhkd reload its configuration files: +super + Escape + pkill -USR1 -x sxhkd + +# +# bspwm hotkeys +# + +# quit/restart bspwm +super + alt + {q,r} + bspc {quit,wm -r} + +# close and kill +#super + {_,shift + }w +# bspc node -{c,k} +super + {_,shift + }q + bspc node -{c,k} + +XF86HomePage + bspc query -N -d Web || firefox & bspc desktop -f Web + +XF86Mail + bspc query -N -d Mail || thunderbird & bspc desktop -f Mail + +XF86Calculator + bspc query -N -d Musique || gmpc & bspc desktop -f Musique + +# 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 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} + +# +# 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 + +super + r + rofi -modi "Reorganiser:~/scripts/sxhkd/rofi_resize.sh,Rotation:~/scripts/sxhkd/rofi_rotate.sh" -show Rotation + +# +# move/resize +# + +# expand a window by moving one of its side outward +super + shift + {Left,Down,Up,Right} + 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 + {Up,Down,Left,Right} + bspc node {north,south,west,east} -f + +mod5 + Escape + ~/scripts/sxhkd/show.sh older + +shift + mod5 + Escape + ~/scripts/sxhkd/move.sh older + +mod5 + {_,shift + } F{1-5} + {~/scripts/sxhkd/show.sh, ~/scripts/sxhkd/move.sh} {1-5} + +super + n + rofi -modi "Desktop:~/scripts/sxhkd/rofi_new.sh,Renommer:~/scripts/sxhkd/rofi_rename.sh" -show Desktop + +super + a + bspc node @parent -f + +super + m + test -z $(bspc query -N -n any.marked) && bspc node -g marked; \ + bspc node --swap any.marked --follow && bspc node any.marked -g marked=off + +super + button{4,5} + bspc desktop -f {prev,next}.local -- cgit v1.2.3