I3

i3 is Article description::a minimalist [[window manager, focusing on keyboard commands to manipulate windows.]] By default all windows are in full-screen in order to best maximize the use of the screen and have less fiddling with positioning. Even with the  USE flag enabled its installed size is less than 1.6 MB. It also uses less than 10 MB of RAM under normal operating conditions.

Emerge
The basic package is i3 itself

dmenu
It is also assumed that dmenu will be emerged. Available USE flags include:

i3status
i3status provides status information that can be used by i3bar which, by default, sits at the bottom of the screen. Available USE flags include:

i3blocks
A more (relative to the more popular i3status) advanced, extensively-customizable status (for the i3bar config to use) is provided by i3block.

Default config will looks like: https://camo.githubusercontent.com/cf6f7b3cfdf32e7c72f9f7cd5f855e576f456dac/687474703a2f2f692e696d6775722e636f6d2f703364364d654b2e706e67

To emerge:

(Not sure about the permission to share examples someone can verify it.) -- Kreyren (talk) 15:53, 8 September 2018 (UTC)

i3lock
If one wants screen-locking it is advisable to use i3lock.

Examples: https://www.google.cz/search?q=i3lock&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiD-MDQ4avdAhUBIlAKHSV_AOEQ_AUICigB&biw=1031&bih=988

To emerge:

(Not sure about the permission to share visual material, someone should verify it.) --Kreyren (talk) 15:54, 8 September 2018 (UTC)

Configuration
i3 can be extensively customized by editing its config. The main user config file for i3 can be either in or. By default when i3 is run for the first time a new config file is added to and a dialog asks what the modifier key should be set to. The default modifier key is and a popular alternative is the  (Windows) key (referred to as   in ). A popular starting point for writing the config file is copying the system config file to one of the user config locations if one is not already generated.

Executing i3
To execute i3-wm, adding  to   followed by   is sufficient.

Default keybinding
Default Keybinding is present on i3 website: https://i3wm.org/docs/userguide.html#_default_keybindings. This wiki section is fork of those informations.

Moving around
+ = Switch focus.

+,,, = Also Switch focus.

+ = Split window vertically.
 * DOES NOT @$%! WORK!* - Krey

+ = Split window horizontally.
 * DOES NOT @$%! WORK!* - Krey

+ = Change workplace.

+ = Resize the windows in tiled mode.

Moving Windows
++ = Toggle floating for focused window.

+ = Move focused window.

+ = Resize focused window.

+ = Resize focused windows in tiled mode.

+ = Open focused window in fullscreen.

Utilities keybinding
+ = open dmenu.

Administrative keybinding
++ = Exit i3.

++ = Restart i3.

++ = Kill a window.

Adding commands
In the user config file, adding a keyboard command is as simple as adding a line. For example, adding the following to the end of the config will open the utility when ++ is pressed:

You can also have it use the default key that all other commands use by using the built-in variable:

You can also set you own variable names or override values of variables. It works by replacing text, like the c pre-processor, and has no concept other than strings.

Changing default terminal
Default terminal can be configured in by changing   on terminal of your choice. Alternatively, you can set the TERMINAL environment variable.

Adding modes
You can also add in what is called a mode. An example is the resize mode for floating windows. This changes what keyboard commands are bound and will be able to run. This is useful if there is a large set of commands often run together, or that override the keys on the keyboard as in the example below which takes over the arrow keys and the vim-style movement keys.

Enabling Multimedia keys
You can add Multimedia key bindings in your i3 config. Below are example of working Multimedia keys with i3wm.

For a complete reference, visit the i3 official user guide.

Tips and Tricks
Section for I3 users to share their tips and tricks.

Setting a wallpaper
A wallpaper can be easily set using Feh. Example configuration line:.

Adding Alt+Tab Functionality
Add this to your i3 config file to enable +  to switch to next open workspace and  +  +  to switch to the previous one:

The Scratchpad (i3's solution to minimising windows)
The i3 wm has an invisible workspace called the Scratchpad workspace. Users can move windows to and from it to hide them from the main workspaces. The i3 commands  and   hide and show windows respectively. It may be useful to bind these to keys within your config:

Configuring Gaps Between Tiled Windows (i3-gaps only)
A detailed description of can be found on the [Github Page].

The following lines remove the window decorations and add gaps between the windows. will disable the gaps if only one window is present on a workspace.

Change the values for preference. This will put a 5px gap between all containers and the edge of the screen.

sets the distance between adjacent containers. sets the distance between containers and the edge of the screen. It is worth noting that the actual distance from the containers to the edge of the screen is the sum of the  and   values. The actual distance between adjacent containers is the  value alone.

i3 softbricks if xrandr with `scale` is used
i3 softbricks if  (or any scale above 1.1x1.1) is invoked.

Partially solved? , resolving on https://github.com/i3/i3/issues/3392

1. xrandr with --scale is still unable to work correctly (results in softbrick with GPU glitches if used) with multiple outputs. Temporary solution is to invoke xorg-server for each output, but it will make them independant from each other meaning that you can NOT drag windows through multiple outputs.

2. xrandr with --scale sometimes work and sometimes it doesn't..

Reported by Kreyren (talk) 14:47, 15 September 2018 (UTC)

Changing kill command on Alt+F4 does not affect terminal.
Changing  section   on   does not affect terminal emulator -> unable to close terminal emulator.

If anyone knows the solution please share it. Kreyren (talk) 18:26, 8 September 2018 (UTC)

Troubleshooting
This section was created to help users diagnose their i3.

Error: status_command not found or is missing a library dependency (exit 127).
The default setting of  in the  expects installed i3status. This error could be resolved by either emerging or changing the.

External resources

 * i3 official user guide
 * i3 reddit
 * Online Colorscheme Configurator for i3