aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2025-02-11 08:25:08 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2025-02-11 08:30:03 +0300
commit216753678a9fc51b0d639b6ed374e965d9eda301 (patch)
tree7e72fc9775d3f451905f952f2e6df5d502d6b662
parentb9e67f6565be84bed646f4aa83a2d6ce2d2f3eb9 (diff)
downloadniri-216753678a9fc51b0d639b6ed374e965d9eda301.tar.gz
niri-216753678a9fc51b0d639b6ed374e965d9eda301.tar.bz2
niri-216753678a9fc51b0d639b6ed374e965d9eda301.zip
wiki: Add a page for tabs
-rw-r--r--wiki/Configuration:-Layout.md6
-rw-r--r--wiki/Tabs.md35
-rw-r--r--wiki/_Sidebar.md1
3 files changed, 39 insertions, 3 deletions
diff --git a/wiki/Configuration:-Layout.md b/wiki/Configuration:-Layout.md
index 713f6f37..bc9e4218 100644
--- a/wiki/Configuration:-Layout.md
+++ b/wiki/Configuration:-Layout.md
@@ -425,10 +425,10 @@ Set `hide-when-single-tab` to hide the indicator for tabbed columns that only ha
Set `place-within-column` to put the tab indicator "within" the column, rather than outside.
This will include it in column sizing and avoid overlaying adjacent columns.
-`gap` sets the gap between the tab indicator and the window.
+`gap` sets the gap between the tab indicator and the window in logical pixels.
The gap can be negative, this will put the tab indicator on top of the window.
-`width` sets the thickness of the indicator.
+`width` sets the thickness of the indicator in logical pixels.
`length` controls the length of the indicator.
Set the `total-proportion` property to make tabs take up this much length relative to the window size.
@@ -437,7 +437,7 @@ By default, the tab indicator has length equal to half of the window size, or `l
`position` sets the position of the tab indicator relative to the window.
It can be `left`, `right`, `top`, or `bottom`.
-`gaps-between-tabs` controls the gap between individual tabs.
+`gaps-between-tabs` controls the gap between individual tabs in logical pixels.
`active-color`, `inactive-color`, `active-gradient`, `inactive-gradient` let you override the colors for the tabs.
They have the same semantics as the border and focus ring colors and gradients.
diff --git a/wiki/Tabs.md b/wiki/Tabs.md
new file mode 100644
index 00000000..9e280c0e
--- /dev/null
+++ b/wiki/Tabs.md
@@ -0,0 +1,35 @@
+### Overview
+
+<sup>Since: next release</sup>
+
+You can switch a column to display windows as tabs, rather than as vertical tiles.
+All tabs in a column have the same window size, so this is useful to get more vertical space.
+
+![Terminal with a tab indicator on the left.](https://github.com/user-attachments/assets/0e94ac0d-796d-4f85-a264-c105ef41c13f)
+
+Use this bind to toggle a column between normal and tabbed display:
+
+```kdl
+binds {
+ Mod+W { toggle-column-tabbed-display; }
+}
+```
+
+All other binds remain the same: switch tabs with `focus-window-down/up`, add or remove windows with `consume-window-into-column`/`expel-window-from-column`, and so on.
+
+Unlike regular columns, tabbed columns can go full-screen with multiple windows.
+
+### Tab indicator
+
+Tabbed columns show a tab indicator on the side.
+You can click on the indicator to switch tabs.
+
+See the `tab-indicator` section in the [layout](./Configuration:-Layout.md) options to configure it.
+
+By default, the indicator draws "outside" the column, so it can overlay other windows or go off-screen.
+The `place-within-column` flag puts the indicator "inside" the column, adjusting the window size to make space for it.
+This is especially useful for thicker tab indicators, or when you have very small gaps.
+
+| Default | `place-within-column` |
+| --- | --- |
+| ![](https://github.com/user-attachments/assets/c2f51f50-3d87-403a-8beb-cbbe5ec5c880) | ![](https://github.com/user-attachments/assets/f1797cd0-d518-4be6-95b4-3540523c4370) |
diff --git a/wiki/_Sidebar.md b/wiki/_Sidebar.md
index 7952e4e1..6dd0ae61 100644
--- a/wiki/_Sidebar.md
+++ b/wiki/_Sidebar.md
@@ -3,6 +3,7 @@
* [Example systemd Setup](./Example-systemd-Setup.md)
* [Important Software](./Important-Software.md)
* [Floating Windows](./Floating-Windows.md)
+* [Tabs](./Tabs.md)
* [Layer‐Shell Components](./Layer%E2%80%90Shell-Components.md)
* [IPC, `niri msg`](./IPC.md)
* [Application-Specific Issues](./Application-Issues.md)