• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.github/H03-Nov-2021-394294

AnyEvent-I3/H03-Nov-2021-1,036539

contrib/H03-May-2022-775451

debian/H03-Nov-2021-1,000788

docs/H03-May-2022-8,8907,157

etc/H03-Nov-2021-397323

i3-config-wizard/H03-Nov-2021-1,016721

i3-dump-log/H03-Nov-2021-271207

i3-input/H03-May-2022-2,6492,366

i3-msg/H03-Nov-2021-332263

i3-nagbar/H03-Nov-2021-674474

i3bar/H03-Nov-2021-5,6263,642

include/H03-Nov-2021-6,8542,108

libi3/H03-May-2022-2,6751,539

man/H03-May-2022-1,004696

meson/H03-Nov-2021-4031

parser-specs/H03-Nov-2021-1,244930

share/H03-Nov-2021-2926

src/H03-May-2022-27,17817,972

testcases/H03-Nov-2021-32,83017,431

travis/H03-Nov-2021-425300

.clang-formatH A D03-Nov-2021651 1413

.dockerignoreH A D03-Nov-20215 21

.editorconfigH A D03-Nov-2021158 129

.gitignoreH A D03-Nov-2021931 5653

DEPENDSH A D03-Nov-20213.8 KiB4538

I3_VERSIONH A D03-Nov-202115 21

LICENSEH A D03-Nov-20211.5 KiB2723

PACKAGE-MAINTAINERH A D03-Nov-20211.8 KiB4534

README.mdH A D03-Nov-20214.6 KiB11573

RELEASE-NOTES-4.20.1H A D03-Nov-20211.2 KiB2819

generate-command-parser.plH A D03-Nov-20218.2 KiB245159

i3-dmenu-desktopH A D03-Nov-202120.1 KiB577292

i3-migrate-config-to-v4H A D03-Nov-202110.6 KiB364261

i3-save-treeH A D03-Nov-20217.6 KiB304176

i3-sensible-editorH A D03-Nov-2021570 175

i3-sensible-pagerH A D03-Nov-2021658 195

i3-sensible-terminalH A D03-Nov-20211 KiB246

meson.buildH A D03-Nov-202117.3 KiB736669

pseudo-doc.doxygenH A D03-Nov-20214.9 KiB149124

release.shH A D03-Nov-20218.7 KiB237171

README.md

1[![Build Status](https://github.com/Airblader/i3/actions/workflows/main.yml/badge.svg)](https://github.com/Airblader/i3/actions/workflows/main.yml)
2[![Issues](https://img.shields.io/github/issues/Airblader/i3.svg)](https://github.com/Airblader/i3/issues)
3[![Forks](https://img.shields.io/github/forks/Airblader/i3.svg)](https://github.com/Airblader/i3/network)
4[![Stars](https://img.shields.io/github/stars/Airblader/i3.svg)](https://github.com/Airblader/i3/stargazers)
5
6# i3-gaps
7
8## What is i3-gaps?
9
10i3-gaps is a fork of [i3wm](https://www.i3wm.org), a tiling window manager for X11. It is kept up to date with upstream, adding a few additional features such as gaps between windows (see below for a complete list).
11
12![i3](http://i.imgur.com/y8sZE6o.jpg)
13
14## How do I install i3-gaps?
15
16Please refer to the [wiki](https://github.com/Airblader/i3/wiki/installation).
17
18## Where can I get help?
19
20For bug reports or feature requests regarding i3-gaps specifically, open an issue on [GitHub](https://www.github.com/Airblader/i3). If your issue is with core i3 functionality, please report it [upstream](https://www.github.com/i3/i3).
21
22For support & all other kinds of questions, you can ask your question on [GitHub Discussions](https://github.com/i3/i3/discussions).
23
24# Features
25
26## i3
27
28### gaps
29
30*Note:* In order to use gaps you need to disable window titlebars. This can be done by adding the following line to your config.
31
32```
33# You can also use any non-zero value if you'd like to have a border
34for_window [class=".*"] border pixel 0
35```
36
37Gaps are the namesake feature of i3-gaps and add spacing between windows/containers. Gaps come in two flavors, inner and outer gaps wherein inner gaps are those between two adjacent containers (or a container and an edge) and outer gaps are an additional spacing along the screen edges. Gaps can be configured in your config either globally or per workspace, and can additionally be changed during runtime using commands (e.g., through `i3-msg`).
38
39*Note:* Outer gaps are added to the inner gaps, i.e., the gaps between a screen edge and a container will be the sum of outer and inner gaps.
40
41#### Configuration
42
43You can define gaps either globally or per workspace using the following syntax. Note that the gaps configurations should be ordered from least specific to most specific as some directives can overwrite others.
44
45```
46gaps [inner|outer|horizontal|vertical|top|left|bottom|right] <px>
47workspace <ws> gaps [inner|outer|horizontal|vertical|top|left|bottom|right] <px>
48```
49
50The `inner` and `outer` keywords are as explained above. With `top`, `left`, `bottom` and `right` you can specify outer gaps on specific sides, and `horizontal` and `vertical` are shortcuts for the respective sides. `<px>` stands for a numeric value in pixels and `<ws>` for either a workspace number or a workspace name.
51
52#### Commands
53
54Gaps can be modified at runtime with the following command syntax:
55
56```
57gaps inner|outer|horizontal|vertical|top|right|bottom|left current|all set|plus|minus|toggle <px>
58
59# Examples
60gaps inner all set 20
61gaps outer current plus 5
62gaps horizontal current plus 40
63gaps outer current toggle 60
64```
65
66With `current` or `all` you can change gaps either for only the currently focused or all currently existing workspaces (note that this does not affect the global configuration itself).
67
68You can find an example configuration in the [wiki](https://github.com/Airblader/i3/wiki/Example-Configuration).
69
70### Smart Gaps
71
72Gaps can be automatically turned on/off on a workspace in certain scenarios using the following config directives:
73
74```
75# Only enable gaps on a workspace when there is at least one container
76smart_gaps on
77
78# Only enable outer gaps when there is exactly one container
79smart_gaps inverse_outer
80```
81
82### Smart Borders
83
84Smart borders will draw borders on windows only if there is more than one window in a workspace. This feature can also be enabled only if the gap size between window and screen edge is `0`.
85
86```
87# Activate smart borders (always)
88smart_borders on
89
90# Activate smart borders (only when there are effectively no gaps)
91smart_borders no_gaps
92```
93
94### Smart Edge Borders
95
96This extends i3's `hide_edge_borders` with a new option. When set, edge-specific borders of a container will be hidden if it's the only container on the workspace and the gaps to the screen edge is `0`.
97
98```
99# Hide edge borders only if there is one window with no gaps
100hide_edge_borders smart_no_gaps
101```
102
103## i3bar
104
105### Bar Height
106
107The height of an i3bar instance can be specified explicitly by defining the `height` key in the bar configuration. If not set, the height will be calculated automatically depending on the font size.
108
109```
110bar {
111    # Height in pixels
112    height 25
113}
114```
115