## Variables
set $mod Mod4
floating_modifier $mod
## Font
font pango:monospace 10
## Wrapping
focus_wrapping no
## Focus window
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
## Move window
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
## Focus parent
bindsym $mod+a focus parent
## Focus child
bindsym $mod+z focus child
## Split
bindsym $mod+v split h
bindsym $mod+s split v
## Layout
bindsym $mod+q layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
## Toggle fullscreen
bindsym $mod+f fullscreen toggle
## Toggle floating focus
bindsym $mod+Shift+f focus mode_toggle
## Toggle floating
bindsym $mod+Control+f floating toggle
## Automatic floating
for_window [instance="(^|-)floating(-|$)"] floating enable
## Kill
bindsym $mod+Shift+q kill
## Reload
bindsym $mod+Shift+r reload
## Restart
bindsym $mod+Control+r restart
## Exit
bindsym $mod+Control+e exit
## Terminal
bindsym $mod+Return exec --no-startup-id $TERMINAL
## Launcher
bindsym $mod+d exec --no-startup-id rofi -show drun
## Rename workspace
bindsym $mod+x exec --no-startup-id i3-workspace-rename rofi -dmenu -l 0 -filter
## Switch workspace
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
bindsym $mod+Tab workspace next
bindsym $mod+Shift+Tab workspace prev
bindsym $mod+Control+Tab workspace back_and_forth
## Move to workspace
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
## Move and switch to workspace
bindsym $mod+Control+1 move container to workspace number 1; workspace number 1
bindsym $mod+Control+2 move container to workspace number 2; workspace number 2
bindsym $mod+Control+3 move container to workspace number 3; workspace number 3
bindsym $mod+Control+4 move container to workspace number 4; workspace number 4
bindsym $mod+Control+5 move container to workspace number 5; workspace number 5
bindsym $mod+Control+6 move container to workspace number 6; workspace number 6
bindsym $mod+Control+7 move container to workspace number 7; workspace number 7
bindsym $mod+Control+8 move container to workspace number 8; workspace number 8
bindsym $mod+Control+9 move container to workspace number 9; workspace number 9
bindsym $mod+Control+0 move container to workspace number 10; workspace number 10
## Resize
bindsym $mod+r mode "resize"
mode "resize"
{
bindsym Escape mode "default"
bindsym Control+c mode "default"
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
}
## Mark
bindsym $mod+m mode "mark"
mode "mark"
{
bindsym Escape mode "default"
bindsym Control+c mode "default"
bindsym $mod+a mark --add --toggle a; mode "default"
bindsym $mod+b mark --add --toggle b; mode "default"
bindsym $mod+c mark --add --toggle c; mode "default"
bindsym $mod+d mark --add --toggle d; mode "default"
bindsym $mod+e mark --add --toggle e; mode "default"
bindsym $mod+f mark --add --toggle f; mode "default"
bindsym $mod+g mark --add --toggle g; mode "default"
bindsym $mod+h mark --add --toggle h; mode "default"
bindsym $mod+i mark --add --toggle i; mode "default"
bindsym $mod+j mark --add --toggle j; mode "default"
bindsym $mod+k mark --add --toggle k; mode "default"
bindsym $mod+l mark --add --toggle l; mode "default"
bindsym $mod+m mark --add --toggle m; mode "default"
bindsym $mod+n mark --add --toggle n; mode "default"
bindsym $mod+o mark --add --toggle o; mode "default"
bindsym $mod+p mark --add --toggle p; mode "default"
bindsym $mod+q mark --add --toggle q; mode "default"
bindsym $mod+r mark --add --toggle r; mode "default"
bindsym $mod+s mark --add --toggle s; mode "default"
bindsym $mod+t mark --add --toggle t; mode "default"
bindsym $mod+u mark --add --toggle u; mode "default"
bindsym $mod+v mark --add --toggle v; mode "default"
bindsym $mod+w mark --add --toggle w; mode "default"
bindsym $mod+x mark --add --toggle x; mode "default"
bindsym $mod+y mark --add --toggle y; mode "default"
bindsym $mod+z mark --add --toggle z; mode "default"
bindsym $mod+1 mark --add --toggle 1; mode "default"
bindsym $mod+2 mark --add --toggle 2; mode "default"
bindsym $mod+3 mark --add --toggle 3; mode "default"
bindsym $mod+4 mark --add --toggle 4; mode "default"
bindsym $mod+5 mark --add --toggle 5; mode "default"
bindsym $mod+6 mark --add --toggle 6; mode "default"
bindsym $mod+7 mark --add --toggle 7; mode "default"
bindsym $mod+8 mark --add --toggle 8; mode "default"
bindsym $mod+9 mark --add --toggle 9; mode "default"
bindsym $mod+0 mark --add --toggle 0; mode "default"
bindsym a [con_mark="a"] focus; mode "default"
bindsym b [con_mark="b"] focus; mode "default"
bindsym c [con_mark="c"] focus; mode "default"
bindsym d [con_mark="d"] focus; mode "default"
bindsym e [con_mark="e"] focus; mode "default"
bindsym f [con_mark="f"] focus; mode "default"
bindsym g [con_mark="g"] focus; mode "default"
bindsym h [con_mark="h"] focus; mode "default"
bindsym i [con_mark="i"] focus; mode "default"
bindsym j [con_mark="j"] focus; mode "default"
bindsym k [con_mark="k"] focus; mode "default"
bindsym l [con_mark="l"] focus; mode "default"
bindsym m [con_mark="m"] focus; mode "default"
bindsym n [con_mark="n"] focus; mode "default"
bindsym o [con_mark="o"] focus; mode "default"
bindsym p [con_mark="p"] focus; mode "default"
bindsym q [con_mark="q"] focus; mode "default"
bindsym r [con_mark="r"] focus; mode "default"
bindsym s [con_mark="s"] focus; mode "default"
bindsym t [con_mark="t"] focus; mode "default"
bindsym u [con_mark="u"] focus; mode "default"
bindsym v [con_mark="v"] focus; mode "default"
bindsym w [con_mark="w"] focus; mode "default"
bindsym x [con_mark="x"] focus; mode "default"
bindsym y [con_mark="y"] focus; mode "default"
bindsym z [con_mark="z"] focus; mode "default"
bindsym 1 [con_mark="1"] focus; mode "default"
bindsym 2 [con_mark="2"] focus; mode "default"
bindsym 3 [con_mark="3"] focus; mode "default"
bindsym 4 [con_mark="4"] focus; mode "default"
bindsym 5 [con_mark="5"] focus; mode "default"
bindsym 6 [con_mark="6"] focus; mode "default"
bindsym 7 [con_mark="7"] focus; mode "default"
bindsym 8 [con_mark="8"] focus; mode "default"
bindsym 9 [con_mark="9"] focus; mode "default"
bindsym 0 [con_mark="0"] focus; mode "default"
}
## Borders
default_border pixel 0
default_floating_border pixel 0
## Colors
# https://notes.rcrnstn.net/colors.md
# border background text indicator child_border
client.focused #c6c6c6ff #000000ad #c6c6c6ff #00000000 #00000000
client.focused_inactive #c6c6c6ff #000000c0 #919191ff #00000000 #00000000
client.placeholder #919191ff #000000c0 #919191ff #00000000 #00000000
client.unfocused #919191ff #000000c0 #919191ff #00000000 #00000000
client.urgent #919191ff #000000c0 #ffb3b3ff #ffb3b3ff #00000000
client.background #00000000
## Gaps
gaps inner 10
gaps outer -5
|