Skip to content

Scrolling layout

Settings for the scrolling-column layout and its optional trackpad gestures.

See Scrolling for column navigation and multiple-display limitations.

Example
[settings.layout]
mode = "scrolling"
[settings.layout.scrolling]
column_width_ratio = 0.7
alignment = "center"

Options specific to the Scrolling layout.

Override the layout-wide insertion point for Scrolling. Leave it unset to inherit [settings.layout].window_insertion_point.

Type
next_to_selection or end_of_tree (optional)
Default
Not set

Animate transitions in Scrolling workspaces independently of settings.animate and Low Power Mode. Set to false to disable scrolling animations. Leave unset to enable them.

Type
boolean (optional)
Default
true

Normal width of a column as a fraction of the tiling area. It must stay between min_column_width_ratio and max_column_width_ratio.

Type
number
Default
0.7

Proportional column widths cycled in configured order.

Type
list of numbers
Default
Empty list

Keep a window's existing column width when it enters scrolling layout.

Type
boolean
Default
true

Fill the usable width when a workspace has only one scrolling column. The column's stored width is restored when another column is added.

Type
boolean
Default
false

Smallest column width allowed by resize commands, from 0.0 through 1.0.

Type
number
Default
0.3

Largest column width allowed by resize commands, from 0.0 through 1.0.

Type
number
Default
0.9

Sparse width overrides keyed by display UUID.

Type
map of text to ScrollingWidthOverride
Default
Empty table

Position used when aligning the focused column: left edge, center, or right edge. focus_navigation_style determines when that alignment is applied.

Type
left or center or right
Default
"center"

Choose how horizontal focus reveals a column. niri scrolls only as needed in the navigation direction; anchored always places the focused column at the chosen alignment.

Type
niri or anchored
Default
"niri"

Optional horizontal gestures for moving between columns in a Scrolling workspace. The finger count is configurable.

Enable horizontal swipes for moving between columns in a Scrolling workspace.

Type
boolean
Default
false

Animate gesture release independently of structural layout animations. When omitted, inherit the scrolling layout/global animation setting.

Type
boolean (optional)
Default
Not set

Reverse the meaning of left and right column swipes.

Type
boolean
Default
false

Allowed vertical finger movement while recognizing the start of a column scroll. Measured in trackpad coordinates: 0.4 and 40 both mean 40% of the trackpad height.

Type
number
Default
0.4

Number of fingers required for a column swipe.

Type
whole number
Default
3

Accumulated horizontal finger travel before Rift sends a scroll update, measured in trackpad coordinates. Smaller values send updates more often. Rift clamps the value from 0.01 to 1.0.

Type
number
Default
0.08

After reaching the end of the column strip, continue the gesture into the adjacent virtual workspace.

Type
boolean
Default
false

Overscroll, in normalized steps, required before the gesture switches workspaces.

Type
number
Default
0.55