i3 - ulises-jeremias/dotfiles GitHub Wiki

๐Ÿงฑ i3 Window Manager Guide

i3 is a tiling window manager built to provide an efficient and highly customizable user experience. It allows you to manage your windows using simple keyboard shortcuts and scripting tools.

[!TIP] The i3 setup in this dotfiles project is fully configurable. You can personalize layouts, autostart programs, keybindings, and integrations with other tools like Polybar, Rofi, or EWW.


๐Ÿ“ Configuration Files Location

All i3-related configurations live in:

~/.config/i3

To edit using chezmoi:

chezmoi edit ~/.config/i3 --source ~/.dotfiles

Apply changes:

chezmoi apply

After editing, restart i3 (Mod+Shift+r) to reload the configuration.

๐Ÿ“– Official documentation: i3 User Guide


๐Ÿš€ Autostart Applications

Autostart programs are defined in:

~/.config/i3/autostart.sh

This script runs when the i3 session starts. You can add anything here:

picom --experimental-backends &
feh --bg-scale ~/wallpapers/mywall.jpg &

Make sure the script is executable:

chmod +x ~/.config/i3/autostart.sh

โŒจ๏ธ i3 Keybindings

Weโ€™ve predefined a set of intuitive keybindings in your i3/config file to help you get productive fast. You can modify or extend them as needed.

๐Ÿ”‘ Default Keybindings

Key Action
$Mod+Shift+q Kill the current window
Mod1+F1 Launch Rofi using dots rofi-run -r
$Mod+d Launch EWW dashboard (~/.config/eww/dashboard/launch.sh)
$Mod+x Launch EWW power menu (~/.config/eww/powermenu/launch.sh)
$Mod+Ctrl+p Toggle Polybar menus (dots toggle -p -t &)
$Mod+w Launch default browser (exo-open --launch WebBrowser)
$Mod+f Launch file manager (exo-open --launch FileManager)
$Mod+t or $Mod+Return Launch terminal (exo-open --launch TerminalEmulator)
XF86MonBrightnessUp Brightness +10% (dots brightness "*" + 0.1)
XF86MonBrightnessDown Brightness -10% (dots brightness "*" - 0.1)
Shift+XF86MonBrightnessUp Brightness +1% (dots brightness "*" + 0.01)
Shift+XF86MonBrightnessDown Brightness -1% (dots brightness "*" - 0.01)
Print Screenshot tool (dots screenshooter)
Shift+Print Screenshot region (dots screenshooter -r)
XF86AudioPlay Play/Pause music (playerctl play-pause)
XF86AudioNext Next track (playerctl next)
XF86AudioPrev Previous track (playerctl previous)
XF86AudioStop Stop music (playerctl stop)
XF86AudioMute Toggle mute (pamixer -t)
XF86AudioRaiseVolume Volume up +1% (pamixer -i 1)
XF86AudioLowerVolume Volume down -1% (pamixer -d 1)

๐Ÿง  Customization Tips

  • Mix i3 with Polybar, Rofi, EWW, or Picom for a complete and modern setup
  • Use workspace-specific rules and gaps for better layout control
  • Define window-specific behavior (e.g., floating, no border)

๐Ÿงช Experiment with changes in a testing environment before applying them to your main config


๐Ÿ†˜ Need Help?

Enjoy the power and flexibility of i3, and build your ideal window management experience! ๐Ÿ’ปโœจ