Files
feresaria/docs/configuration/layout.md
Samuel Onoja eb84104940 Publish topic guides to the wiki and document tabbed windows
Publish the guides from this repository to the GitHub Wiki. Organize them into Usage, Configuration and Development, with 15 separate configuration topics and redirects for the former website guide URLs.

Add a tabbed-windows guide covering grouping, switching tabs and taking windows out. Document the scrolling indicator's defaults and limits, and link the guide from the README, shortcuts and IPC pages. Update from main, including the latest tabbed-layout changes.

Separate Activities setup, configuration and publishing documentation. Review the guide prose with the unslop skill, keeping existing examples and heading links. The wiki workflow uses GitHub's built-in token to publish documentation changes on main.

Validation:

- 20 documentation tests pass, including README links and Activities/tab-indicator field coverage.
- The publisher builds 46 wiki pages; the site build and Python syntax checks pass.
- All 115 code examples from main are preserved.
- The Python suite passes: 90 tests passed and 31 opt-in integration tests skipped, with the system GI module available.
2026-10-13 00:32:23 +01:00

3.8 KiB
Raw Permalink Blame History

Layout

layout key Type / values Default Meaning
mode "scrolling", "tree" "scrolling" Workspace layout
inner-gap number ≥ 0 10 Between windows
outer-gap number ≥ 0 4 Around workspace edges
smart-gaps boolean false Remove outer gaps for one tiled window
scrolling key Type / values Default Meaning
default-column-display "stacked", "tabbed" "stacked" Display mode of new columns; reload preserves existing column choices
default-column-width proportion > 0; or "full" 0.5 Width of new columns
focus-strategy "minimal", "center_on_focus", "paged" "minimal" Viewport movement on focus
width-presets array of widths [0.3333333333333333, 0.5, 0.6666666666666666, "full"] Super+R cycle; empty uses defaults

minimal leaves fully visible columns in place and scrolls only enough to reveal a hidden edge, ignoring differences of up to 0.5 logical pixels. Full-width columns align with the viewport. Wider columns reveal their left edge when approached from the left and their right edge when approached from the right; an existing view inside a wider column stays in place. center_on_focus centers the focused column. paged packs columns into viewport-sized pages: halves form pairs, thirds form triples; mixed widths and effective minimum sizes determine actual boundaries. Changing default width preserves manually resized columns.

Tabbed columns

To open new columns as tabs:

scrolling {
    default-column-display "tabbed"
}

Your existing columns stay as they are. Press Super + Shift + T to switch the focused column.

See Tabbed windows for grouping, tab selection and the default shortcuts.

Scrolling tab indicator

scrolling.tab-indicator key Type / range Default
width number, 1–16 4
segment-height number, width–128 24
segment-gap number, 0–64 4
hit-width number, width–64 12
gap-threshold number, width–128 8
list-width number, 80–640 220
row-height number, (font-size + 6)–80 28
padding number, 0–24 4
font-size number, 8–32 12
outline-width number, 0–8 0.5
flash-duration-ms integer, 0–60000 1000
active-color optional color Theme accent
inactive-color optional color Theme border
background-color optional color Theme raised surface
text-color optional color Theme primary text
outline-color optional color Theme border

Configure the scrolling indicator under scrolling.tab-indicator:

scrolling {
    tab-indicator {
        width 4
        segment-height 24
        segment-gap 4
        hit-width 12
        gap-threshold 8
        list-width 220
        row-height 28
        padding 4
        font-size 12
        outline-width 0.5
        flash-duration-ms 1000
    }
}

Sizes are logical pixels. The hover list fits its longest title, up to list-width, with an 80px minimum. Its width stays fixed while open. outline-width 0 hides the outline; positive widths draw at least one physical pixel. flash-duration-ms 0 disables keyboard feedback. Leave colors unset to use your theme, or override them with #RRGGBB or #RRGGBBAA values. The selected row has a faint highlight using the text color. The rail has fully rounded ends; the title list follows the shell corner radius. The hover list and keyboard feedback pill follow the shell material opacity. Solid material or Reduce transparency makes their backgrounds opaque. Text and rail markers retain their own opacity. These controls use flat fills without blur or shadows. Changes apply on configuration reload.