From efc20b73693019acd63758e954affcaf6d148d53 Mon Sep 17 00:00:00 2001 From: Jeremy Kaplan Date: Sat, 19 Mar 2016 05:44:30 -0400 Subject: [PATCH] Update bspwm/sxhkd/panel configs for new bspwm version --- bspwm/bspwmrc | 3 +- panel/panel_bar.py | 2 +- sxhkd/sxhkdrc | 210 +++++++++++++++++++++++++++------------------ 3 files changed, 131 insertions(+), 84 deletions(-) diff --git a/bspwm/bspwmrc b/bspwm/bspwmrc index 188062b..45c641c 100755 --- a/bspwm/bspwmrc +++ b/bspwm/bspwmrc @@ -1,9 +1,10 @@ #!/bin/sh -bspc config border_width 2 +bspc config border_width 0 bspc config window_gap 5 bspc config split_ratio 0.5 +bspc config single_monocle true bspc config borderless_monocle true bspc config gapless_monocle true bspc config focus_by_distance true diff --git a/panel/panel_bar.py b/panel/panel_bar.py index ac5d649..79968c1 100755 --- a/panel/panel_bar.py +++ b/panel/panel_bar.py @@ -124,7 +124,7 @@ def main(argv): 'clock': clock_update(None)[1], } # These processes trigger when events happen. - bspc_control = subprocess.Popen(["bspc", "control", "--subscribe"], + bspc_control = subprocess.Popen(["bspc", "subscribe"], stdout=subprocess.PIPE) listening = [bspc_control] # Make stdout nonblocking. diff --git a/sxhkd/sxhkdrc b/sxhkd/sxhkdrc index 5bbb86c..958823d 100644 --- a/sxhkd/sxhkdrc +++ b/sxhkd/sxhkdrc @@ -1,91 +1,12 @@ -# -# bspwm hotkeys -# - -super + alt + Escape - pkill -x panel; bspc quit - -super + shift + q - bspc window -c - -super + t - bspc desktop -l next - -super + b - bspc desktop -B - -super + {s,f} - bspc window -t {floating,fullscreen} - -super + {grave,Tab} - bspc {window,desktop} -f last - -super + apostrophe - bspc window -s last - -super + {o,i} - bspc control --record-history off; \ - bspc window {older,newer} -f; \ - bspc control --record-history on - -super + y - bspc window -w last.manual - -super + m - bspc window -s biggest - -super + {_,shift + }{h,j,k,l} - bspc window -{f,s} {left,down,up,right} - -super + {_,shift + }c - bspc window -f {next,prev} - -super + {comma,period} - bspc desktop -C {backward,forward} - -super + bracket{left,right} - bspc desktop -f {prev,next} - -super + ctrl + {h,j,k,l} - bspc window -p {left,down,up,right} - -super + ctrl + {_,shift + }space - bspc {window -p cancel,desktop -c} - -super + alt + {h,j,k,l} - bspc window -e {left -10,down +10,up -10,right +10} - -super + alt + shift + {h,j,k,l} - bspc window -e {right -10,up +10,down -10,left +10} - -super + ctrl + {1-9} - bspc window -r 0.{1-9} - -super + {1-9,0} - bspc desktop -f ^{1-9,10} - -super + shift + {1-9,0} - bspc desktop -f ^{1-9,10}; bspc window last -d focused - -~button1 - bspc pointer -g focus - -super + button{1-3} - bspc pointer -g {move,resize_side,resize_corner} - -super + !button{1-3} - bspc pointer -t %i %i - -super + @button{1-3} - bspc pointer -u - # # wm independent hotkeys # +# terminal emulator super + Return urxvt +# program launcher super + space xboomx @@ -93,8 +14,133 @@ super + space super + Escape pkill -USR1 -x sxhkd +# lockscreen super + shift + semicolon i3lock -e -i ~/images/lockscreen.png +# volume keys XF86Audio{Mute,LowerVolume,RaiseVolume} - pulseaudio-ctl {mute,down,up} + pulseaudio-ctl {mute,south,north} + + +# +# bspwm hotkeys +# + +# quit bspwm normally +super + alt + Escape + pkill -x panel; bspc quit + +# close +super + shift + q + bspc node -c + +# alternate between the tiled and monocle layout +super + m + 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,s,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 + }{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 +super + {_,shift + }c + bspc node -f {next,prev} + +# 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 + {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 + +# +# resize tiled/floating +# + +# expand the tiled space in the given direction +super + alt + {h,j,k,l} + 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 + {h,j,k,l} + 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} + +# +# pointer focus/move/resize +# + +# focus +~button1 + bspc pointer -g focus + +# start move/resize +super + button{1-3} + ; bspc pointer -g {move,resize_side,resize_corner} + +# end move/resize +super + @button{1-3} + bspc pointer -u