commit 28704fcc2b35e984619436ed0ae2e217126229fc
parent 7f3d5ac18f6c490344091e7821dcc6223d638f79
Author: Ryan Jeffrey <pwishie@gmail.com>
Date: Tue, 14 Apr 2020 23:20:01 -0700
bspwm config
Diffstat:
2 files changed, 169 insertions(+), 0 deletions(-)
diff --git a/.config/bspwm/bspwmrc b/.config/bspwm/bspwmrc
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+sxhkd &
+compton -b
+
+/home/ryan/src/scripts/monset.zsh &
+/home/ryan/src/scripts/init-polybar.sh &
+
+bspc monitor "DisplayPort-1" -d 1 2 3 4 5 6 7 8 9 0
+bspc monitor "HDMI-A-2" -d 1 2 3 4 5 6 7 8 9 0
+
+
+bspc config border_width 5
+bspc config window_gap 15
+
+bspc config split_ratio 0.52
+bspc config borderless_monocle true
+bspc config gapless_monocle true
+
+bspc config focus_follows_pointer true
+
+bspc config active_border_color "#E84F4F"
+bspc config normal_border_color "#4C566A"
+bspc config focused_border_color "#5E81AC"
+bspc config urgent_border_color "#FF0000"
+
+bspc config merge_overlapping_monitors true
+bspc config remove_disabled_monitors true
+
+
+bspc rule -a Gimp desktop='^8' state=floating follow=on
+bspc rule -a Screenkey manage=off
+bspc rule -a Steam desktop='^10' state=floating follow=off
+bspc rule -a firefox desktop='^1' follow=off
+bspc rule -a discord desktop='^5' follow=off
+
diff --git a/.config/sxhkd/sxhkdrc b/.config/sxhkd/sxhkdrc
@@ -0,0 +1,133 @@
+#
+# wm independent hotkeys
+#
+
+# terminal emulator
+super + Return
+ st
+
+# program launcher
+super + d
+ dmenu_run
+
+# make sxhkd reload its configuration files:
+super + Escape
+ pkill -USR1 -x sxhkd
+
+#
+# bspwm hotkeys
+#
+
+# quit/restart bspwm
+super + shift + {e,r}
+ bspc {quit,wm -r}
+
+# close and kill
+super + shift + q
+ bspc node -c
+
+# alternate between the tiled and monocle layout
+super + m
+ bspc desktop -l next
+
+# swap the current node and the biggest node
+super + g
+ bspc node -s biggest
+
+#
+# state/flags
+#
+
+# set the window state
+super + {s,shift + t,w,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 + {Left,Down,Up,Right}
+ bspc node -f {west,south,north,east}
+
+# focus the node for the given path jump
+super + {b,comma,period}
+ bspc node -f @{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 or send to the given desktop
+super + {_,shift + }{1-9,0}
+ bspc {desktop -f,node -d} '^{1-9,10}'
+
+super + t
+ emacsclient -c
+
+super + e
+ thunar
+
+#
+# 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 + shift +{Left,Down,Up,Right}
+ bspc node -v {-20 0,0 20,0 -20,20 0}
+
+# Mpd
+super + p
+ mpc toggle
+
+super + n
+ mpc next
+
+super + l
+ mpc prev
+
+super + o
+ mpc shuffle
+
+super + y
+ st -e ncmpcpp