From ArchWiki
Revision as of 22:27, 28 August 2013 by Progandy (talk | contribs) (→‎Suspending with i3lock: add short description of xss-lock)
Jump to navigation Jump to search

zh-CN:i3 i3 is a dynamic tiling window manager inspired by wmii that is primarily targeted at developers and advanced users.

Clients (windows) are organized in a tree data structure within containers. The tree branches via horizontal or vertical splits, and containers can also be set to tabbed or stacked layouts. Floating windows are available for corner cases that don't mix well with tiling, and remain on a separate layer above the tiled windows.


Install the i3 package group from the official repositories, which includes: i3-wm, the window manager; i3status, a package to write a status line to i3bar through stdout; and i3lock, an improved screenlocker.

Additional packages are available in the Arch User Repository. Install i3-gitAUR for the development version.

Install i3-gnomeAUR to add GNOME and X-sessions with i3 running as the window manager. An Xsession starting just the window manager is included in i3.


Merge-arrows-2.pngThis article or section is a candidate for merging with i3/Beginners Customization Guide.Merge-arrows-2.png

Notes: Either merge everything here or in the linked subpage. (Discuss in I3/Beginners Customization Guide#Merge with i3?)

Edit your ~/.xinitrc and add:

exec i3

If you want i3 to log its output (useful for debugging), add this line to ~/.xinitrc:

exec i3 -V >> ~/.i3/i3log 2>&1

If you use the Nvidia binary driver <302.17 you need to add the --force-xinerama flag to ~/.xinitrc. A detailed explanation can be found at i3wm.org.

exec i3 --force-xinerama

Status bar

The internal status bar, i3-wsbar, was deprecated and replaced by i3bar in i3 v4.0.

New method: i3bar

Unlike i3-wsbar, which requires dzen2, i3bar does not have any dependencies other than i3-wm. It can be used to view information generated by conky or i3status. For example (as of version 4.1):

bar {
    output            LVDS1
    status_command    i3status
    position          top
    mode              hide
    workspace_buttons yes
    tray_output       none
    font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1

    colors {
        background #000000
        statusline #ffffff

        focused_workspace  #ffffff #285577
        active_workspace   #ffffff #333333
        inactive_workspace #888888 #222222
        urgent_workspace   #ffffff #900000

For further information see the Configuring i3bar section of the official User Guide.

Alternatives to i3status

  • i3pystatus - extensible i3status replacement with many modules and very flexible configuration. Multi-threaded and lock-up free. (AUR: i3pystatus-gitAUR)
  • py3status – an extensible i3status wrapper written in python
  • dzen – often used with conky to create completely custom status bars
  • j4status - j4status provides a status line using several plugin to retrieve information from your computer. j4status is a part of the j4tools - tools set to use with i3.

Quickly jumping to open window

  • quickswitch-for-i3 – A Python utility to quickly change to and locate windows in i3
  • i3-wm-scripts – search for and jump to windows with particular names matching regexp
  • winmenupy launches dmenu with a list of clients, sorted after workspaces. Selecting a client jumps to that window.

Suspending with i3lock

xss-lock (has also autolock)

xss-lockAUR manages a screen locker for the current x-session. It reacts to suspend, hibernate, lock-session events and the X screensaver. You need to run it in your desktop autostart like this:

xss-lock -- i3lock -i /path/to/background.image &

Systemd unit file

You need to add unit file below and enable it with # systemctl enable suspend@<user>.service. See systemd#Basic systemctl usage for details.

Description=Starts i3lock at suspend time




See the official documentation on this subject for more information: i3 User’s Guide

Application launcher

i3 currently uses dmenu as a application launcher, which is bound by default to Mod1+d.

By default i3-dmenu-desktop is used as a wrapper for dmenu. i3-dmenu-desktop creates a list of all installed applications via their .desktop files. There is a rewrite of this perl script called j4-dmenu-desktop-gitAUR, which is a near-drop-in replacement for the script shipped with i3, but much faster.

Clipboard (copy & paste issues)

By default, when you close a window, the buffer with the clipboard info will disappear. You have to use a clipboard manager like clipit to avoid that.

See also

Arch Linux Forums