Add bspwm, stalonetray config, bspwm hotkeys
This commit is contained in:
Executable
+52
@@ -0,0 +1,52 @@
|
||||
#! /bin/sh
|
||||
|
||||
#--- General ---#
|
||||
|
||||
# Basic definitions
|
||||
bspc config border_width 4
|
||||
bspc config window_gap 20
|
||||
bspc config split_ratio 0.502
|
||||
bspc config top_padding "$PANEL_HEIGHT"
|
||||
|
||||
# Program startup
|
||||
"$HOME"/.scripts/wm/pidctl.sh -p &
|
||||
|
||||
# Colors
|
||||
bspc config focused_border_color "$FGCOLOR_INACTIVE"
|
||||
bspc config normal_border_color "$BGCOLOR_INACTIVE"
|
||||
bspc config active_border_color "$BGCOLOR_INACTIVE"
|
||||
bspc config presel_feedback_color "$FGCOLOR_INACTIVE"
|
||||
|
||||
# Node
|
||||
bspc config borderless_monocle true
|
||||
bspc config gapless_monocle true
|
||||
bspc config initial_polarity second_child
|
||||
bspc config single_monocle true
|
||||
|
||||
# Pointer
|
||||
bspc config focus_follows_pointer true
|
||||
bspc config pointer_follows_monitor true
|
||||
bspc config pointer_modifier mod4
|
||||
|
||||
#--- Desktops ---#
|
||||
|
||||
# Set desktops
|
||||
bspc monitor -d "$WS1" "$WS2" "$WS3" "$WS4" "$WS5" \
|
||||
"$WS6" "$WS7" "$WS8" "$WS9" "$WS0"
|
||||
|
||||
# Open program on specific desktop
|
||||
bspc rule -a Firefox desktop="^$WS1"
|
||||
bspc rule -a Thunar desktop="^$WS4"
|
||||
bspc rule -a krita desktop="^$WS5" follow=on
|
||||
|
||||
# Set program properties
|
||||
bspc rule -a Arandr state=floating
|
||||
bspc rule -a Bar layer=above
|
||||
bspc rule -a feh state=floating
|
||||
bspc rule -a Firefox:Places state=floating
|
||||
bspc rule -a Lxappearance state=floating
|
||||
bspc rule -a mpv state=floating center=on
|
||||
bspc rule -a Pavucontrol state=floating
|
||||
bspc rule -a Qemu-system-i386 state=floating
|
||||
bspc rule -a Qemu-system-x86_64 state=floating
|
||||
bspc rule -a Zathura state=tiled
|
||||
+1
-1
@@ -13,7 +13,7 @@ set $mod2 Mod1
|
||||
floating_modifier $mod
|
||||
|
||||
# Application startup
|
||||
exec_always --no-startup-id $HOME/.scripts/wm/pidctl.sh -p
|
||||
exec_always --no-startup-id $HOME/.scripts/wm/pidctl.sh -p &
|
||||
|
||||
# Colors
|
||||
set_from_resource $bgcolor WmColor.bgcolor #000000
|
||||
|
||||
@@ -0,0 +1,128 @@
|
||||
# -*-conf-*-
|
||||
|
||||
|
||||
##--- Control ---##
|
||||
|
||||
|
||||
# Restart bspwm
|
||||
super + shift + r
|
||||
bspc wm -r
|
||||
|
||||
# Logout
|
||||
super + shift + e
|
||||
prompt.sh "Logout and exit bspwm?" "bspc quit"
|
||||
|
||||
|
||||
##--- Node ---##
|
||||
|
||||
|
||||
# Close and kill focused node
|
||||
super + {_,shift} + q
|
||||
bspc node -{c,k}
|
||||
|
||||
#-- State/flags --#
|
||||
|
||||
# Toggle fullscreen mode
|
||||
super + f
|
||||
bspc node -t \~fullscreen
|
||||
|
||||
# Toggle tiled/floating
|
||||
super + space
|
||||
bspc query -N -n focused.tiled && \
|
||||
bspc node -t floating || bspc node -t tiled -g sticky=off
|
||||
|
||||
# Sticky floating node
|
||||
super + shift + f
|
||||
bspc node -t floating -g sticky=on; $HOME/.scripts/wm/hover.sh
|
||||
|
||||
# Set node flags
|
||||
super + ctrl + {s,p,semicolon}
|
||||
bspc node -g {sticky,private,locked}
|
||||
|
||||
#-- Focus --#
|
||||
|
||||
# Focus node in direction
|
||||
super + {_,shift} + {h,j,k,l}
|
||||
bspc node -{f,s} {west,south,north,east}.local
|
||||
super + {_,shift} + {Left,Down,Up,Right}
|
||||
bspc node -{f,s} {west,south,north,east}.local
|
||||
|
||||
# Focus the node for the given path jump
|
||||
super + {p,b,comma,period}
|
||||
bspc node -f @{parent,brother,first,second}.local
|
||||
|
||||
# Focus previous/next node
|
||||
super + {_,shift} + Tab
|
||||
bspc node -f {next,prev}.local
|
||||
|
||||
# Focus previous/next monitor
|
||||
super + bracket{left,right}
|
||||
bspc monitor -f {prev,next}
|
||||
|
||||
#-- Move --#
|
||||
|
||||
# Move node to previous/next/last desktop
|
||||
super + shift + {minus,equal,grave}
|
||||
bspc node -d {prev.local,next.local,last}
|
||||
|
||||
# Move node to previous/next monitor
|
||||
super + shift + bracket{left,right}
|
||||
bspc node -m {prev,next} --follow
|
||||
|
||||
# Swap focused and biggest node
|
||||
super + g
|
||||
bspc node -s biggest.local
|
||||
|
||||
# Send focused node to the latest preselect node
|
||||
super + y
|
||||
bspc node -n newest.!automatic.local
|
||||
|
||||
#-- Resize --#
|
||||
|
||||
# Expand node by moving its side outward
|
||||
super + alt + {h,j,k,l}
|
||||
bspc node -z {left -30 0,bottom 0 30,top 0 -30,right 30 0}
|
||||
super + alt + {Left,Down,Up,Right}
|
||||
bspc node -z {left -30 0,bottom 0 30,top 0 -30,right 30 0}
|
||||
|
||||
# Contract node by moving its side inward
|
||||
super + alt + ctrl + {h,j,k,l}
|
||||
bspc node -z {right -30 0,top 0 30,bottom 0 -30,left 30 0}
|
||||
super + alt + ctrl + {Left,Down,Up,Right}
|
||||
bspc node -z {right -30 0,top 0 30,bottom 0 -30,left 30 0}
|
||||
|
||||
#-- Preselect node --#
|
||||
|
||||
# Preselect direction
|
||||
super + ctrl + {h,j,k,l}
|
||||
bspc node -p {west,south,north,east}
|
||||
super + ctrl + {Left,Down,Up,Right}
|
||||
bspc node -p {west,south,north,east}
|
||||
|
||||
# Preselect ratio
|
||||
super + ctrl + {1-9}
|
||||
bspc node -o 0.{1-9}
|
||||
|
||||
# Cancel preselection in focused node
|
||||
super + ctrl + space
|
||||
bspc node -p cancel
|
||||
|
||||
|
||||
##--- Desktop ---##
|
||||
|
||||
|
||||
# Toggle tiled/monocle layout
|
||||
super + z
|
||||
bspc desktop -l next
|
||||
|
||||
# Focus/send node to desktop
|
||||
super + {_,shift} + {1-9,0}
|
||||
bspc {desktop -f,node -d} '^{1-9,10}'
|
||||
|
||||
# Focus the previous/next desktop on current monitor
|
||||
super + {minus,equal}
|
||||
bspc desktop -f {prev,next}.local
|
||||
|
||||
# Focus last desktop
|
||||
super + grave
|
||||
bspc desktop -f last
|
||||
+16
-18
@@ -1,19 +1,5 @@
|
||||
# -*-conf-*-
|
||||
|
||||
#--- General ---#
|
||||
|
||||
# Kill focused window
|
||||
super + shift + q
|
||||
i3-msg kill
|
||||
|
||||
# Split container horizontal / vertical
|
||||
super + {h,v}
|
||||
i3-msg split {h,v}
|
||||
|
||||
# Container layout
|
||||
super + {s,w,e}
|
||||
i3-msg layout {stacking,tabbed,toggle split}
|
||||
|
||||
#--- Control ---#
|
||||
|
||||
# Reload i3 config
|
||||
@@ -26,6 +12,10 @@ super + shift + e
|
||||
|
||||
#--- Window ---#
|
||||
|
||||
# Kill focused window
|
||||
super + shift + q
|
||||
i3-msg kill
|
||||
|
||||
# Fullscreen window
|
||||
super + f
|
||||
i3-msg fullscreen toggle
|
||||
@@ -52,13 +42,21 @@ super + shift + f
|
||||
|
||||
#--- Workspace ---#
|
||||
|
||||
# Toggle container horizontal/vertical split
|
||||
super + {h,v}
|
||||
i3-msg split {h,v}
|
||||
|
||||
# Container layout
|
||||
super + {s,w,e}
|
||||
i3-msg layout {stacking,tabbed,toggle split}
|
||||
|
||||
# Switch to workspace
|
||||
super + {0-9}
|
||||
i3-msg workspace $WS{0-9}
|
||||
super + {1-9,0}
|
||||
i3-msg workspace $WS{1-9,0}
|
||||
|
||||
# Move focused container to workspace
|
||||
super + shift + {0-9}
|
||||
i3-msg move container to workspace $WS{0-9}
|
||||
super + shift + {1-9,0}
|
||||
i3-msg move container to workspace $WS{1-9,0}
|
||||
|
||||
# Move workspace to monitor
|
||||
super + ctrl + {Left,Right}
|
||||
|
||||
@@ -7,6 +7,9 @@ xrandr --newmode "3000x2000_48.00" 405.25 3000 3232 3552 4104 2000 2003 2013 205
|
||||
xrandr --addmode eDP-1 3000x2000_48.00
|
||||
xrandr --output eDP-1 --mode 3000x2000_48.00 --primary
|
||||
|
||||
# Set default X cursor to arrow
|
||||
xsetroot -cursor_name left_ptr
|
||||
|
||||
# Disable screensaver
|
||||
xset s off
|
||||
xset -dpms
|
||||
|
||||
Reference in New Issue
Block a user