From 264289cd41069bd2c85c523a1b0c687eab0a89d7 Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Sat, 27 Sep 2025 09:31:21 +0300 Subject: wiki: Document per-output and per-workspace layout overrides --- docs/wiki/Configuration:-Named-Workspaces.md | 50 ++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) (limited to 'docs/wiki/Configuration:-Named-Workspaces.md') diff --git a/docs/wiki/Configuration:-Named-Workspaces.md b/docs/wiki/Configuration:-Named-Workspaces.md index 8e87967c..81b270c6 100644 --- a/docs/wiki/Configuration:-Named-Workspaces.md +++ b/docs/wiki/Configuration:-Named-Workspaces.md @@ -45,3 +45,53 @@ Before, it could only use the connector name. Since: 25.02 Named workspaces no longer update/forget their original output when opening a new window on them (unnamed workspaces will keep doing that). This means that named workspaces "stick" to their original output in more cases, reflecting their more permanent nature. Explicitly moving a named workspace to a different monitor will still update its original output. + +### Layout config overrides + +Since: next release + +You can customize layout settings for named workspaces with a `layout {}` block: + +```kdl +workspace "aesthetic" { + // Layout config overrides just for this named workspace. + layout { + gaps 32 + + struts { + left 64 + right 64 + bottom 64 + top 64 + } + + border { + on + width 4 + } + + // ...any other setting. + } +} +``` + +It accepts all the same options as [the top-level `layout {}` block](./Configuration:-Layout.md), except: + +- `empty-workspace-above-first`: this is an output-level setting, doesn't make sense on a workspace. +- `insert-hint`: currently we always draw these at the output level, so it's not customizable per-workspace. + +In order to unset a flag, write it with `false`, e.g.: + +```kdl +layout { + // Enabled globally. + always-center-single-column +} + +workspace "uncentered" { + layout { + // Unset on this workspace. + always-center-single-column false + } +} +``` -- cgit