

GitHub - Airblader/i3: i3-gaps – i3 with more features (forked from https://gith...
source link: https://github.com/Airblader/i3
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

i3-gaps
What is i3-gaps?
i3-gaps is a fork of i3wm, 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).
How do I install i3-gaps?
Please refer to the wiki.
Where can I get help?
For bug reports or feature requests regarding i3-gaps specifically, open an issue on GitHub. If your issue is with core i3 functionality, please report it upstream.
For support & all other kinds of questions, you can ask your question on the official subreddit /r/i3wm.
Features
Note: In order to use gaps you need to disable window titlebars. This can be done by adding the following line to your config.
# You can also use any non-zero value if you'd like to have a border
for_window [class=".*"] border pixel 0
Gaps 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
).
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.
Configuration
You 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.
gaps [inner|outer|horizontal|vertical|top|left|bottom|right] <px>
workspace <ws> gaps [inner|outer|horizontal|vertical|top|left|bottom|right] <px>
The 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.
Commands
Gaps can be modified at runtime with the following command syntax:
gaps inner|outer|horizontal|vertical|top|right|bottom|left current|all set|plus|minus|toggle <px>
# Examples
gaps inner all set 20
gaps outer current plus 5
gaps horizontal current plus 40
gaps outer current toggle 60
With 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).
You can find an example configuration in the wiki.
Smart Gaps
Gaps can be automatically turned on/off on a workspace in certain scenarios using the following config directives:
# Only enable gaps on a workspace when there is at least one container
smart_gaps on
# Only enable outer gaps when there is exactly one container
smart_gaps inverse_outer
Smart Borders
Smart 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
.
# Activate smart borders (always)
smart_borders on
# Activate smart borders (only when there are effectively no gaps)
smart_borders no_gaps
Smart Edge Borders
This 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
.
# Hide edge borders only if there is one window with no gaps
hide_edge_borders smart_no_gaps
i3bar
Bar Height
The 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.
bar {
# Height in pixels
height 25
}
Recommend
-
102
Airblader/dotfiles-manjaro: My personal dotfiles (how do these have so many stars?) Skip to content...
-
20
OpenPDF is an open source Java library for PDF files OpenPDF is a Java library for creating and editing PDF files with a LGPL and MPL open source license. OpenPDF is the LGPL/MPL open source successor of iText,...
-
58
README.markdown 中文介绍 Introduction
-
21
December 17th, 2019 In 2015 Cliqz released its own desktop web browser, forked from Firefox. Up to that point, we had distributed our search and privacy products as a single Firefox addon. In this article we cover...
-
30
背景 最近参加了一个开源项目, 第一次公开提 Pull Request, 从 Github 网页直接操作, 先是认真看了下别人的, 简单了解了下 Pull Request, 成功后挺开心的, 原来也不难, 但后来就陆续遇到了问题, 比如如果别人 reivew 后要你再改...
-
17
How to update a forked repo with git rebase – Git Many times you might came across to update/sync your forked repository with main repo. There are multiple ways but below one is very efficient way to sync your forked rep...
-
10
The real reason why Google forked WebKit By
-
8
How to Disable GitHub Actions in a Forked Project Some GitHub repositories have GitHub Actions with helpful automation. Because act...
-
7
Keeping your forked repo in sync with the upstream one is something tedious, and to do it usually we have to use the command line and some git command. But today I have for you 3 ways you can make that simpler and mu...
-
10
AlphaWallet exceeds 500 forks to become the most-forked, fully open-source EVM wallet February 4, 2022 Sydney, Australia, 4th February, 2022, Chainwire Developers a...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK