45 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			45 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| 
								 | 
							
								#!/usr/bin/env zsh
							 | 
						||
| 
								 | 
							
								export BSPWM_SOCKET='/tmp/bspwm_sock'
							 | 
						||
| 
								 | 
							
								bspwm&
							 | 
						||
| 
								 | 
							
								until [[ -e $BSPWM_SOCKET ]]; do
							 | 
						||
| 
								 | 
							
									sleep 1
							 | 
						||
| 
								 | 
							
								done
							 | 
						||
| 
								 | 
							
								export bspwm_config_dir="$HOME/vdotfiles/bspwm-zsh"
							 | 
						||
| 
								 | 
							
								source $bspwm_config_dir/common
							 | 
						||
| 
								 | 
							
								# bspwm general settings
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config focused_border_color $colors_bg_focused
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config normal_border_color $colors_bg_normal
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config urgent_border_color $colors_urgent
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config focused_sticky_border_color $colors_sticky_focused
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config top_padding 18
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config border_width 1
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config window_gap 5 
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config focus_follows_pointer true
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config pointer_follows_monitor true
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config split_ratio 0.50
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config borderless_monocle true
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config gapless_monocle true
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config focus_by_distance true
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc config ignore_ewmh_focus true
							 | 
						||
| 
								 | 
							
								# bspwm window placement rules
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc rule -a URxvt desktop=^2 follow=on floating=on
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc rule -a Steam desktop=^4 follow=off floating=on
							 | 
						||
| 
								 | 
							
								# bspwm create tags
							 | 
						||
| 
								 | 
							
								/usr/bin/bspc monitor -d 1 2 3 4 5
							 | 
						||
| 
								 | 
							
								# the rest of it
							 | 
						||
| 
								 | 
							
								job_list=()
							 | 
						||
| 
								 | 
							
								# sxhkd kill / spawn (there can only be one)
							 | 
						||
| 
								 | 
							
								/usr/bin/pkill sxhkd 2>&1 >/dev/null
							 | 
						||
| 
								 | 
							
								/usr/bin/sxhkd -f 60 -c $bspwm_config_dir/sxhkdrc&
							 | 
						||
| 
								 | 
							
								# panel
							 | 
						||
| 
								 | 
							
								fontdir="$HOME/.fonts/terminus/PCF"
							 | 
						||
| 
								 | 
							
								/usr/bin/xset +fp $fontdir
							 | 
						||
| 
								 | 
							
								$bspwm_config_dir/panel&
							 | 
						||
| 
								 | 
							
								# trap to kill all the jobs when killing the script itself
							 | 
						||
| 
								 | 
							
								trap 'cleanup' EXIT TERM INT
							 | 
						||
| 
								 | 
							
								function cleanup
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
									eval "kill ${${jobstates##*:*:}%=*}"
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								wait
							 |