dotfiles/system-specific/cheems/i3/config

144 lines
4.8 KiB
Plaintext

# vars
set $mod Mod4
font pango:GohuFont Medium 8
floating_modifier $mod
client.focused #30D700 #308800 #ffffff #121212
client.focused_inactive #114E00 #031d09 #ffffff #031d09
client.unfocused #114E00 #031d09 #888888 #031d09
client.urgent #C10004 #900000 #ffffff #900000
#
# bindings
#
bindsym $mod+r mode "resize"
bindsym XF86AudioRaiseVolume exec amixer set Master 1%+
bindsym XF86AudioLowerVolume exec amixer set Master 1%-
bindsym XF86MonBrightnessUp exec light -A 1
bindsym XF86MonBrightnessDown exec light -U 1
bindsym $mod+Shift+x exec setxkbmap gb
bindsym $mod+Shift+z exec setxkbmap us
# kill focused window
bindsym $mod+Shift+q kill
# common launches
bindsym $mod+Shift+d exec i3-dmenu-desktop --dmenu='dmenu -i -p "Run"'
bindsym $mod+d exec dmenu_run -i -p 'Run'
bindsym $mod+Return exec gnome-terminal
bindsym $mod+Shift+Return exec caja
bindsym Print exec spectacle -r
bindsym XF86Launch1 exec spectacle -r
# window focus IJKL
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
# window focus arrows
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focus IJKL
bindsym $mod+Shift+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right
# move focus arrow
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# mouse
bindsym $mod+h split h
bindsym $mod+v split v
#layout
bindsym $mod+f fullscreen toggle
bindsym $mod+Shift+space floating toggle
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
# switch to workspace
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10
# reload or restart
bindsym $mod+Shift+c reload
bindsym $mod+Shift+r restart
#
# gaps settings
#
for_window [class="^.*"] border pixel 3
gaps inner 30
gaps outer 0
# gaps mode
set $mode_gaps Gaps: (o) outer, (i) inner
set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
bindsym $mod+Shift+g mode "$mode_gaps"
mode "$mode_gaps" {
bindsym o mode "$mode_gaps_outer"
bindsym i mode "$mode_gaps_inner"
bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "$mode_gaps_inner" {
bindsym plus gaps inner current plus 5
bindsym minus gaps inner current minus 5
bindsym 0 gaps inner current set 0
bindsym Shift+plus gaps inner all plus 5
bindsym Shift+minus gaps inner all minus 5
bindsym Shift+0 gaps inner all set 0
bindsym Shift+5 gaps inner all set 30
bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "$mode_gaps_outer" {
bindsym plus gaps outer current plus 5
bindsym minus gaps outer current minus 5
bindsym 0 gaps outer current set 0
bindsym Shift+plus gaps outer all plus 5
bindsym Shift+minus gaps outer all minus 5
bindsym Shift+0 gaps outer all set 0
bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "resize" {
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
bindsym j resize shrink width 1 px or 1 ppt
bindsym k resize grow height 1 px or 1 ppt
bindsym i resize shrink height 1 px or 1 ppt
bindsym l resize grow width 1 px or 1 ppt
bindsym Return mode "default"
bindsym Escape mode "default"
}
for_window [window_role="pop-up"] floating enable,move absolute center
#
# misc and startup
#
mouse_warping output
focus_follows_mouse yes
exec --no-startup-id nitrogen --restore
exec --no-startup-id $HOME/.screenlayout/screenlayout.sh
exec --no-startup-id $HOME/.config/polybar/polystart.sh
exec --no-startup-id exec compton