diff options
Diffstat (limited to 'base/config/i3/config.d')
-rw-r--r-- | base/config/i3/config.d/.nolink | 0 | ||||
-rw-r--r-- | base/config/i3/config.d/00_base_config | 194 |
2 files changed, 194 insertions, 0 deletions
diff --git a/base/config/i3/config.d/.nolink b/base/config/i3/config.d/.nolink new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/base/config/i3/config.d/.nolink diff --git a/base/config/i3/config.d/00_base_config b/base/config/i3/config.d/00_base_config new file mode 100644 index 0000000..c373851 --- /dev/null +++ b/base/config/i3/config.d/00_base_config @@ -0,0 +1,194 @@ +# +# This is my base i3 config which is shared between all hosts. +# + +set $mod Mod4 +floating_modifier $mod + +## Visual Settings +font xft:Inconsolata 8 +hide_edge_borders both + +## Bindings to start programs +bindsym $mod+space exec dmenu_run -l 20 +bindsym $mod+Return exec i3-sensible-terminal + +# kill focused window +bindsym $mod+Shift+Q kill + + +## Bindings to control windows + +### Focus Commands +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right +bindsym Mod1+Tab focus right +bindsym Mod1+Shift+Tab focus left +bindsym $mod+a focus parent +bindsym $mod+d focus child + +### Window Moving Commands +bindsym $mod+Shift+H move left +bindsym $mod+Shift+J move down +bindsym $mod+Shift+K move up +bindsym $mod+Shift+L move right + +### Floating Windows +bindsym $mod+Shift+space floating toggle +bindsym $mod+Tab focus mode_toggle + +## Layout Commands +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout default +bindsym $mod+v split v +bindsym $mod+Shift+V split h +bindsym $mod+f fullscreen + + +## Bindings to control workspaces + +### Switch Workspaces +bindsym $mod+1 workspace number "1: mail" +bindsym $mod+2 workspace number "2: web" +bindsym $mod+3 workspace number "3: dev" +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+Left workspace prev_on_output +bindsym $mod+Right workspace next_on_output + +### Move container to workspace +bindsym $mod+Shift+exclam move workspace number "1: mail" +bindsym $mod+Shift+at move workspace number "2: web" +bindsym $mod+Shift+numbersign move workspace number "3: dev" +bindsym $mod+Shift+dollar move workspace number 4 +bindsym $mod+Shift+percent move workspace number 5 +bindsym $mod+Shift+asciicircum move workspace number 6 +bindsym $mod+Shift+ampersand move workspace number 7 +bindsym $mod+Shift+asterisk move workspace number 8 +bindsym $mod+Shift+parenleft move workspace number 9 +bindsym $mod+Shift+parenright move workspace number 10 +bindsym $mod+Shift+Left move workspace prev +bindsym $mod+Shift+Right move workspace next + +### Move workspace to different monitor +bindsym $mod+Mod1+Left move workspace to output left +bindsym $mod+Mod1+Right move workspace to output right +bindsym $mod+Mod1+Up move workspace to output up +bindsym $mod+Mod1+Down move workspace to output down + +workspace_auto_back_and_forth yes +workspace_layout default + +### Workspace monitor assignments + +workspace "1: mail" output eDP-1 +workspace "2: web" output DP-1 +workspace "3: dev" output DP-1 +workspace 4 output DP-1 +workspace 5 output DP-1 +workspace 6 output DP-1 +workspace 7 output DP-1 +workspace 8 output DP-1 +workspace 9 output DP-1 +workspace 10 output DP-1 + +### Scratchpad +bindsym $mod+Shift+minus move scratchpad +bindsym $mod+minus scratchpad show + + +## Bindings to contorl the session +bindsym $mod+Shift+C exec "make_i3_config > $HOME/.config/i3/config"; reload +bindsym $mod+Shift+R restart +bindsym $mod+Shift+E exit +bindsym Control+mod1+l exec $HOME/bin/lock + + +## Alternative modes + +### Resize Mode +bindsym $mod+r mode "resize" +mode "resize" { + bindsym h resize shrink left 10 px or 10 ppt + bindsym Shift+H resize grow left 10 px or 10 ppt + bindsym j resize shrink down 10 px or 10 ppt + bindsym Shift+j resize grow down 10 px or 10 ppt + bindsym k resize shrink up 10 px or 10 ppt + bindsym Shift+K resize grow up 10 px or 10 ppt + bindsym l resize shrink right 10 px or 10 ppt + bindsym Shift+L resize grow right 10 px or 10 ppt + + bindsym Return mode "default" + bindsym Escape mode "default" +} + +### Display Settings +set $displayMode "Choose [l]aptop or [d]esktop, [e]xtend, [m]irror" +bindsym $mod+p mode $displayMode +mode $displayMode { + bindsym l exec "\ + xrandr --output eDP-1 --mode 1920x1080 --primary && \ + xrandr --output DP-1 --off"; mode "default" + bindsym d exec "\ + xrandr --output DP-1 --auto --primary && \ + xrandr --output eDP-1 --off"; mode "default" + bindsym e exec "\ + xrandr --output eDP-1 --mode 1920x1080 --primary && \ + xrandr --output DP-1 --above eDP-1 --mode 1920x1080 \ + "; mode "default" + bindsym m exec "\ + xrandr --output eDP-1 --mode 1920x1080 --primary && \ + xrandr --output DP-1 --same-as eDP-1 --auto \ + "; mode "default" + bindsym Return mode "default" + bindsym Escape mode "default" +} + +## i3bar Settings +bar { + status_command conky-i3bar + position bottom + tray_output primary + font xft:Inconsolata 9 +} + + +## Misc. Bindings + +## sshclip +bindsym $mod+g exec sshclip + +bindsym $mod+c exec clipmv + +### Music +bindsym XF86AudioPlay exec xmms2 toggle +bindsym $mod+End exec xmms2 toggle +bindsym XF86AudioNext exec xmms2 next +bindsym $mod+Home exec xmms2 next +bindsym XF86AudioPrev exec xmms2 prev + +### Volume +bindsym XF86AudioRaiseVolume exec "amixer -D pulse -q set Master 5%+ unmute; amixer -D pulse -q set Speaker unmute" +bindsym $mod+Prior exec "amixer -D pulse -q set Master 5%+ unmute; amixer -D pulse -q set Speaker unmute" +bindsym XF86AudioLowerVolume exec "amixer -D pulse -q set Master 5%- unmute; amixer -D pulse -q set Speaker unmute" +bindsym $mod+Next exec "amixer -D pulse -q set Master 5%- unmute; amixer -D pulse -q set Speaker unmute" +bindsym XF86AudioMute exec amixer -D pulse -q set Master mute + +### Brightness +bindsym XF86MonBrightnessUp exec "brightnessctl set +5%" +bindsym XF86MonBrightnessDown exec "brightnessctl set 5%-" + +## Specific Window Settings +for_window [class="Gcalctool"] floating enable +for_window [class="Gnome-calculator"] floating enable +for_window [class="file_progress"] floating enable +for_window [title="Unlock Database - KeePassXC"] floating enable + |