i3
Link
Tiling [window manager](…/Window managers/) for Linux
(Default) Shortcuts
- The default modifier key is
Win
, also calledMeta
orCmd
. In the following I just call itWin
, because that corresponds to the logo/icon this key has on most keyboards.
Shortcut | Function |
---|---|
Win +D | Start launcher (dmenu) |
Win +DownArrow | Focus window below |
Win +E | Switch container to split layout. If the container is already split, changes from horizontal to vertical split or vice-versa. |
Win +Enter | Open terminal emulator |
Win +H | The next window should be split horizontally (to the right) |
Win +J | Switch between windows |
Win +LeftArrow | Focus window to the left |
Win +RightArrow | Focus window to the right |
Win +Shift +E | Exit i3 |
Win +Shift +Q | Close current window |
Win +Shift +R | Reload i3 (after changing configuration) |
Win +UpArrow | Focus window above |
Win +V | The next window should be split vertically (below) |
Win +S | Switch container to stacked layout |
Win +W | Switch container to tabbed layout |
Resources
Launchers
- dmenu - simple launcher
- davatorium/rofi - a themeable window switcher, application launcher and dmenu replacement
FAQ
for_window
does not seem to target window by class
Make sure to use the second string displayed for WM_CLASS by xprop
.
My old config file
- From the good old FreeBSD times:
set $mod Mod4 floating_modifier $mod bindsym $mod+Return exec ssh-agent lxterminal bindsym Mod1+F4 kill bindsym $mod+d exec --no-startup-id i3-dmenu-desktop bindsym $mod+j focus left bindsym $mod+k focus down bindsym $mod+l focus up bindsym $mod+ae focus right bindsym $mod+ISO_Level3_Shift focus left bindsym $mod+Super_R focus down bindsym $mod+Print focus up bindsym $mod+(null) focus right bindsym $mod+Shift+Left move left bindsym $mod+Shift+Down move down bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right bindsym $mod+Shift+ISO_Level3_Shift move left bindsym $mod+Shift+Super_R move down bindsym $mod+Shift+Print move up bindsym $mod+Shift+(null) move right bindsym $mod+h split h bindsym $mod+v split v bindsym $mod+f fullscreen bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split bindsym $mod+Shift+space floating toggle bindsym $mod+space focus mode_toggle bindsym $mod+a focus parent #bindsym $mod+d focus child 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 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 bindsym Mod1+Shift+Tab workspace prev bindsym Mod1+Tab workspace next bindsym $mod+Shift+c reload bindsym $mod+Shift+r restart bindsym $mod+q exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" mode "resize" { bindsym j resize shrink width 10 px or 10 ppt bindsym k resize grow height 10 px or 10 ppt bindsym l resize shrink height 10 px or 10 ppt bindsym ae resize grow width 10 px or 10 ppt 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 Return mode "default" bindsym Escape mode "default" } bindsym $mod+z mode "resize" bar { status_command i3status } new_window 1pixel hide_edge_borders both focus_follows_mouse no workspace_auto_back_and_forth yes exec_always --no-startup-id sleep 1 && xrandr --output LVDS1 --auto --rotate normal --pos 0x0 --output VGA1 --auto --rotate normal --right-of LVDS1 exec_always --no-startup-id sleep 1 && xsetroot -bg '#101010' -fg '#000000' -mod 3 3