Settings reference

All 324 configuration keys, with types, defaults, and accepted values.

Everything on this page is generated from the schema the app itself uses to read and write your configuration, so it lists what this version of PlasmaZones actually accepts rather than what a hand-written table claimed once. Most of these are reachable from the settings app. The reference is here for the ones you want to look up, script, or set by hand.

Settings live in ~/.config/plasmazones/config.json, grouped under the dotted paths below. You can also read and write any of them at runtime over D-Bus, which is the better route for scripting. The daemon reloads a D-Bus write immediately, whereas editing the file by hand while the daemon is running risks having your change overwritten on the next save.

Reading this reference

Each table covers one configuration group. The group name is the dotted path the key sits under in config.json, so Snapping.Zones.Border plus the key Width is the border width of a snapping zone.

Snapping

Manual zone placement: what activates the overlay, how zones look and behave, and what happens to a window on drop.

Snapping 1 setting
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueWhether snapping mode can be used at all. Off, it is skipped when cycling a screen's placement mode.
Snapping.Behavior 5 settings
SettingTypeDefaultAcceptsDescription
Triggerslist[{"modifier":3,"mouseButton":0}]Modifier and mouse-button combinations that show the zone overlay while a window is being dragged. Each entry is a {modifier, mouseButton} pair.
ToggleActivationbooleanfalseTap the trigger to turn the overlay on, and tap again to turn it off, instead of holding it down.
ReleaseGraceMsinteger1500 – 1000How long the overlay stays up after the trigger is released, so a brief slip does not cancel the snap.
FocusNewWindowsbooleanfalseFocus a window when it is automatically placed into a zone on open.
FocusFollowsMousebooleanfalseMoving the mouse pointer over a snapped window gives it focus.
Snapping.Effects 7 settings
SettingTypeDefaultAcceptsDescription
ShowNumbersbooleantrueDisplay a number label inside each zone.
FlashOnSwitchbooleantrueBriefly flash the zones when switching between layouts.
OsdOnLayoutSwitchbooleantrueShow notification when switching between zone layouts.
OsdOnDesktopSwitchbooleantrueShow notification on virtual desktop change, activity change, and daemon startup.
NavigationOsdbooleantrueShow notification when moving windows with keyboard shortcuts.
OsdStyleintegerpreview (2)none = 0text = 1preview = 2Visual style of on-screen notifications.
OverlayDisplayModeintegerzoneRectangles (0)zoneRectangles = 0layoutPreview = 1How zones appear while dragging a window.
Snapping.Gaps 1 setting
SettingTypeDefaultAcceptsDescription
AdjacentThresholdinteger205 – 500Distance from zone edge for multi-zone selection.
Snapping.ZoneSelector 10 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueShow a layout picker when a window is dragged to a screen edge.
TriggerDistanceinteger5010 – 200How close to the screen edge a drag has to come before the picker opens.
Positionintegertop (1)topLeft = 0top = 1topRight = 2left = 3center = 4right = 5bottomLeft = 6bottom = 7bottomRight = 8Where on the screen the picker appears.
LayoutModeintegergrid (0)grid = 0horizontal = 1vertical = 2How layout previews are arranged in the popup.
PreviewWidthinteger18080 – 400Width of each layout preview in the picker. Only applies when the size mode is manual.
PreviewHeightinteger10160 – 300Height of each layout preview in the picker. Only applies when the size mode is manual and the aspect ratio is unlocked.
PreviewLockAspectbooleantrueDerive the preview height from its width using the screen's aspect ratio, so previews match the shape of the screen.
GridColumnsinteger51 – 10Number of layout previews per row.
SizeModeintegerauto (0)auto = 0manual = 1Whether preview size is chosen for you or taken from the width and height below.
MaxRowsinteger41 – 10Scrolling enabled when more rows exist.
Snapping.Behavior.Display 2 settings
SettingTypeDefaultAcceptsDescription
ShowOnAllMonitorsbooleanfalseDisplay zone overlays on every monitor while dragging a window, not only the one under the cursor.
FilterByAspectRatiobooleantrueOnly show layouts matching the current monitor's aspect ratio.
Snapping.Behavior.SnapAssist 4 settings
SettingTypeDefaultAcceptsDescription
FeatureEnabledbooleantrueOffer to fill the remaining empty zones after you snap a window.
EnabledbooleantrueShow the window picker after every snap, without waiting for you to hold anything.
Triggerslist[{"modifier":0,"mouseButton":4}]Modifier and mouse-button combinations that bring up the snap-assist picker for a single snap. Each entry is a {modifier, mouseButton} pair.
ReleaseGraceMsinteger1500 – 1000How long the snap-assist picker stays up after the trigger is released.
Snapping.Behavior.WindowHandling 11 settings
SettingTypeDefaultAcceptsDescription
KeepOnResolutionChangebooleantrueMove windows back to their zones after the screen resolution changes.
MoveNewToLastZonebooleanfalseSnap every newly opened window into whichever zone you most recently snapped a window into.
RestoreOnUnsnapbooleantrueReturn a window to its original size when it is dragged out of a zone.
StickyWindowHandlingintegertreatAsNormal (0)treatAsNormal = 0restoreOnly = 1ignoreAll = 2How to treat windows that appear on every desktop.
RestoreOnLoginbooleantrueWhen an app reopens, during the session or after a logout, return it to the zone it was last snapped in.
RestoreFloatedOnLoginbooleantrueWhen an unsnapped window reopens after a logout, return it to the position and monitor it was on. A rule can opt individual windows in or out.
KeepFloatingAbovebooleanfalseKeep the windows you float stacked above the windows snapped into zones. A rule that sets a window layer takes precedence for the windows it matches.
UnfloatFallbackToZonebooleanfalseWhen you unfloat a window that was never snapped, snap it to a fallback zone instead of leaving it floating. The fallback is the last used zone, then the first empty one, then the first zone.
AutoAssignAllLayoutsbooleanfalseFill the first empty zone when a new window opens. When on, this overrides each layout's individual auto-assign toggle and applies to every layout.
SuppressDefaultLayoutAssignmentbooleanfalseSnapping and tiling stay off until you assign a layout. A rule can re-enable the default per monitor.
DefaultLayoutIdstring(system default)Layout a screen uses until it is given one of its own. Empty picks the first layout that fits the screen.
Snapping.Behavior.ZoneSpan 5 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueAllow a window to be snapped across two or more adjacent zones.
Modifierintegerctrl (2)disabled = 0shift = 1ctrl = 2alt = 3meta = 4ctrlAlt = 5ctrlShift = 6altShift = 7alwaysActive = 8altMeta = 9ctrlAltMeta = 10metaShift = 11ctrlMeta = 12Modifier held while dragging to paint across zones.
Triggerslist[{"modifier":2,"mouseButton":0}]Modifier and mouse-button combinations that span a drag across adjacent zones. Each entry is a {modifier, mouseButton} pair.
ToggleActivationbooleanfalseTap the span trigger to start spanning, and tap again to stop, instead of holding it down.
ReleaseGraceMsinteger1500 – 1000How long spanning stays active after the trigger is released.
Snapping.Zones.Border 2 settings
SettingTypeDefaultAcceptsDescription
Widthinteger20 – 10Thickness of zone borders in pixels.
Radiusinteger80 – 50Corner rounding of zones in pixels.
Snapping.Zones.Colors 3 settings
SettingTypeDefaultAcceptsDescription
Highlightstring(system default)Colour of the zone under the cursor. Empty follows the colour scheme.
Inactivestring(system default)Colour of the zones not under the cursor. Empty follows the colour scheme.
Borderstring(system default)Colour of the zone borders. Empty follows the colour scheme.
Snapping.Zones.Labels 7 settings
SettingTypeDefaultAcceptsDescription
FontColorstring(system default)Colour of the zone label text. Empty follows the colour scheme.
FontFamilystring(system default)Typeface for zone labels. Empty follows the system font.
FontSizeScalenumber10.25 – 3Size multiplier for zone label text.
FontWeightinteger700100 – 900Weight of the zone label text, on the usual 100 to 900 scale where 400 is regular and 700 is bold.
FontItalicbooleanfalseItalicize the zone label text.
FontUnderlinebooleanfalseUnderline the zone label text.
FontStrikeoutbooleanfalseStrike through the zone label text.
Snapping.Zones.Opacity 2 settings
SettingTypeDefaultAcceptsDescription
Activenumber0.50 – 1Opacity of the zone under the cursor.
Inactivenumber0.30 – 1Opacity of zones not under the cursor.

Tiling

Autotile mode: the algorithm in use, where new windows are inserted, and how the layout reacts when it runs out of room.

Tiling 1 setting
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueWhether autotile mode can be used at all. Off, it is skipped when cycling a screen's placement mode.
Tiling.Algorithm 6 settings
SettingTypeDefaultAcceptsDescription
DefaultstringbspAlgorithm a screen tiles with until it is given one of its own.
SplitRationumber0.50.1 – 0.9Share of the space the master area takes, as a fraction. Algorithms without a master area ignore it.
SplitRatioStepnumber0.050.01 – 0.25Amount the split ratio changes per keyboard shortcut press.
MasterCountinteger11 – 5How many windows the master area holds.
MaxWindowsinteger51 – 12Maximum number of windows to tile.
PerAlgorithmSettingsobject(empty)Custom parameter values per algorithm, keyed by algorithm id. The tiling page writes this, so it is not meant to be edited by hand.
Tiling.Behavior 13 settings
SettingTypeDefaultAcceptsDescription
InsertPositionintegerend (0)end = 0afterFocused = 1asMaster = 2Where a newly opened window lands in the tiling order.
FocusNewWindowsbooleantrueFocus a window when it opens.
FocusFollowsMousebooleanfalseMoving the mouse pointer over a window gives it focus.
RespectMinimumSizebooleantrueStop windows being resized below their minimum size, which may leave gaps in the layout.
RestoreFloatedOnLoginbooleantrueReturn a floated window to the position and monitor it was on when it reopens after a logout. A rule can opt individual windows in or out.
KeepFloatingAbovebooleanfalseKeep the windows you float stacked above the tiled windows. A rule that sets a window layer takes precedence for the windows it matches.
StickyWindowHandlingintegertreatAsNormal (0)treatAsNormal = 0restoreOnly = 1ignoreAll = 2How to treat windows that appear on every desktop.
DragBehaviorintegerfloat (0)float = 0reorder = 1Float converts a dragged tile to free-floating. Reorder keeps it tiled and swaps it into the drop slot.
OverflowBehaviorintegerfloat (0)float = 0unlimited = 1Float leaves windows beyond the max-windows cap floating. Unlimited tiles every window regardless of count.
LockedScreensstring(system default)Screens whose tiling layout is locked, as a comma-separated list of screen ids.
Triggerslist[{"modifier":3,"mouseButton":0}]Modifier and mouse-button combinations that re-insert a dragged window into the stack at the cursor. Each entry is a {modifier, mouseButton} pair.
ToggleActivationbooleanfalseTap the re-insert trigger to turn the stack preview on, and tap again to turn it off, instead of holding it down.
ReleaseGraceMsinteger1500 – 1000How long the stack preview stays up after the trigger is released, so a brief slip does not cancel the drop.
Tiling.Gaps 1 setting
SettingTypeDefaultAcceptsDescription
SmartGapsbooleantrueRemove all gaps when only one window is tiled.

Scrolling

The scrolling strip: column sizing, wheel and drag behavior, focus tracking, and the tab and drop indicators.

Scrolling 17 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueWhether scrolling mode can be used at all. Off, it is skipped when cycling a screen's placement mode.
CenterFocusedColumnintegernever (0)never = 0always = 1onOverflow = 2When the strip re-centers on the focused column. Never leaves the strip still until the column would leave the screen, always parks it in the middle, and on overflow centers it only once the strip runs past the edge of the screen.
StripAxisintegerauto (0)auto = 0horizontal = 1vertical = 2Which way the strip runs. Matching the screen shape runs it top to bottom when the usable area is taller than it is wide, and side to side otherwise. Columns still divide across the strip whichever way it runs.
AlwaysCenterSingleColumnbooleanfalseWhen the strip holds a single column, center it even when the focused column is set never to center.
CropStraddlersbooleanfalseLet a column at the screen edge keep its full size and be cut off there. Off, the column shrinks to fit, or slides away once too little of it is left. Cropping costs some efficiency in fullscreen video and games while any screen uses scrolling.
DefaultColumnWidthKindintegerproportion (0)proportion = 0fixed = 1clientDecides = 2preset = 3How the width of a new column is decided: as a share of the strip, a fixed number of pixels, a preset from the screen's template, or whatever the application asks for.
DefaultColumnWidthPresetIndexinteger00 – 15Which width a new column opens at, counted from zero into the widths of the screen's layout template. Only applies when the width kind is preset.
DefaultColumnWidthValuenumber0.50.05 – 10000The width a new column opens at. Read as a fraction of the strip when the width kind is a proportion, and as pixels when it is fixed.
DefaultColumnDisplayintegernormal (0)normal = 0tabbed = 1How a new column shows its windows. Normal stacks them above each other, tabbed shows one at a time behind a tab strip. A screen with a layout template of its own takes this from the template instead.
PresetColumnWidthsstring0.333,0.5,0.667The column widths the cycle-width shortcuts step through, as a comma-separated list of fractions of the work area along the strip.
PresetWindowHeightsstring0.333,0.5,0.667The window heights the cycle-height shortcuts step through, as a comma-separated list of fractions of the work area across the strip.
DefaultWindowHeightKindintegerauto (0)auto = 0fixed = 1preset = 2clientDecides = 3How the height of a new window is decided: sharing the column evenly, a fixed number of pixels, a preset from the screen's template, or whatever the application asks for.
DefaultWindowHeightValuenumber600100 – 10000How much space a new window takes inside its column, in pixels. Only applies when the height kind is fixed.
DefaultWindowHeightPresetIndexinteger00 – 15Which height a new window opens at, counted from zero into the heights of the screen's layout template. Only applies when the height kind is preset.
DefaultTemplatestring(system default)Layout template a screen uses until it is given one of its own. Empty uses the built-in width and height steps.
WheelFocusEnabledbooleantrueTurn the wheel with a scroll key held to move along the strip. Off, both scroll keys are left to the compositor.
WheelFocusInvertedbooleanfalseScrolling down moves toward the start of the strip instead of the end, for both scroll keys.
Scrolling.Behavior 16 settings
SettingTypeDefaultAcceptsDescription
FocusNewWindowsbooleantrueFocus a window when it opens.
Triggerslist[{"modifier":3,"mouseButton":0}]Modifier and mouse-button combinations that insert a dragged window into the strip under the cursor. It becomes a new column, or stacks into the column it lands on. Each entry is a {modifier, mouseButton} pair.
ToggleActivationbooleanfalseTap the re-insert trigger to turn the strip preview on, and tap again to turn it off, instead of holding it down.
ReleaseGraceMsinteger1500 – 1000How long the strip preview stays up after the trigger is released, so a brief slip does not cancel the drop.
InsertPositionintegerrightOfActive (0)rightOfActive = 0leftOfActive = 1first = 2last = 3intoActiveColumn = 4Where a new window's column enters the strip. Restored windows and per-window rules keep their own position.
FocusFollowsMousebooleanfalseMoving the mouse pointer over a window gives it focus.
FocusFollowsMouseMaxScrollinteger1000 – 100Moving the pointer onto a column that is partly off screen scrolls the strip to bring it in. When that scroll would be longer than this share of the work area along the strip, the pointer is ignored and focus stays put. At 100 nothing is ignored.
StickyWindowHandlingintegertreatAsNormal (0)treatAsNormal = 0restoreOnly = 1ignoreAll = 2How to treat windows that appear on every desktop.
SmartGapsbooleanfalseRemove the outer gaps while the strip holds a single column, so that column sits against the screen edge at its own width.
RespectMinimumSizebooleantrueKeep columns at least as wide and tall as their windows' minimum size, which can push other windows off screen.
RestoreOnLoginbooleantrueWhen windows reopen after a restart, rebuild their columns with the same order, widths, and tab groups.
RestoreFloatedOnLoginbooleantrueWhen a floated window reopens, return it to the position and size it had before rather than letting the compositor place it. A rule can opt individual windows in or out.
KeepFloatingAbovebooleanfalseKeep the windows you float stacked above the columns of the strip. A rule that sets a window layer takes precedence for the windows it matches.
ColumnWidthStepPercentinteger101 – 50How far the increase and decrease column width shortcuts resize a column per press, as a share of the strip.
WindowHeightStepPercentinteger101 – 50How far the increase and decrease window height shortcuts resize a window per press, as a share of the work area across the strip.
ViewScrollStepPercentinteger251 – 50How far one notch of the view scroll key moves the strip without changing focus, as a share of the work area along the strip.
Scrolling.DropIndicator 6 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueShow where a dragged window will land in the strip.
Colorstring(system default)Colour filling the space the window will land in. Empty follows the colour scheme.
BorderColorstring(system default)Colour of the indicator's edge. Empty follows the colour scheme.
Opacitynumber0.250 – 1How solid the fill is. This replaces any transparency carried by the fill colour.
Widthinteger20 – 10Thickness of the indicator's edge in pixels. Zero draws the fill with no edge.
Radiusinteger80 – 50Corner rounding of the indicator in pixels.
Scrolling.TabIndicator 18 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueMark a tabbed column's windows on screen. Tabbed columns keep working without it.
Styleintegerbar (1)chips = 0bar = 1Titled chips label each window. A segment bar is thinner and shows only how many there are.
Positionintegerleft (0)left = 0right = 1top = 2bottom = 3Which edge of the column the indicator runs along.
HideWhenSingleTabbooleanfalseLeave a tabbed column unmarked while it holds only one window.
PlaceWithinColumnbooleanfalseShrink the windows to fit the indicator. Off, it is drawn beside the column and can overlap a neighbor or run off screen.
Gapinteger2-64 – 64Space between the indicator and the window. A negative gap draws it over the window instead.
Widthinteger41 – 64How thick the indicator is. When it makes room inside the column, this is exactly how much room it takes. A segment bar reads well at a few pixels. Titled chips need enough for their labels, which on a left or right edge means a lot.
LengthProportionnumber0.50.05 – 1How much of the column edge the indicator spans, centered on it.
GapsBetweenTabsinteger00 – 64Space separating one tab from the next.
CornerRadiusinteger0-1 – 64How rounded each tab's corners are. On a segment bar with no gap between tabs, only the two ends of the run are rounded.
ActiveColorstring(system default)Colour of the tab for the window currently shown. Empty follows the colour scheme.
InactiveColorstring(system default)Colour of the tabs for the windows not currently shown. Empty follows the colour scheme.
UrgentColorstring(system default)Colour of the tab for a window asking for attention. Empty follows the colour scheme.
FontFamilystring(system default)Typeface for the tab labels. Their size comes from the indicator thickness. A segment bar draws no labels, so it ignores this. Empty follows the system font.
FontWeightinteger700100 – 900Weight of the tab label text, on the usual 100 to 900 scale where 400 is regular and 700 is bold.
FontItalicbooleanfalseItalicize the tab label text.
FontUnderlinebooleanfalseUnderline the tab label text.
FontStrikeoutbooleanfalseStrike through the tab label text.
Scrolling.ZoneSelector 7 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueShow a template picker when a window is dragged to a screen edge.
TriggerDistanceinteger5010 – 200How close to the screen edge a drag has to come before the picker opens.
Positionintegertop (1)topLeft = 0top = 1topRight = 2left = 3center = 4right = 5bottomLeft = 6bottom = 7bottomRight = 8Where on the screen the picker appears.
SizeModeintegerauto (0)auto = 0manual = 1Whether preview size is chosen for you or taken from the width and height below.
PreviewWidthinteger18080 – 400Width of each template preview in the picker. Only applies when the size mode is manual.
PreviewHeightinteger10160 – 300Height of each template preview in the picker. Only applies when the size mode is manual and the aspect ratio is unlocked.
PreviewLockAspectbooleantrueDerive the preview height from its width using the screen's aspect ratio, so previews match the shape of the screen.
Scrolling.Behavior.DragScroll 4 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueScroll the strip when a dragged window is held near the edge of the working area.
TriggerWidthinteger301 – 300How close to the edge of the working area the pointer has to be before the strip can start scrolling.
DelayMsinteger1000 – 2000How long the pointer has to stay near the edge before the strip moves. Stops a drag that only passes by an edge from scrolling.
MaxSpeedinteger150050 – 10000How fast the strip scrolls with the pointer held right at the edge. It moves more slowly the further from the edge the pointer sits.
Scrolling.Wheel.Focus 1 setting
SettingTypeDefaultAcceptsDescription
Triggerslist[{"modifier":4,"mouseButton":0}]Modifier held while turning the wheel to move focus from column to column. Each entry is a {modifier, mouseButton} pair.
Scrolling.Wheel.View 1 setting
SettingTypeDefaultAcceptsDescription
Triggerslist[{"modifier":11,"mouseButton":0}]Modifier held while turning the wheel to move the view along the strip without changing which column has focus. Each entry is a {modifier, mouseButton} pair.

Windows

Per-window appearance applied by any mode, covering borders, tints, and opacity on the windows themselves.

Windows 14 settings
SettingTypeDefaultAcceptsDescription
ShowBorderbooleanfalseDraw a colored border around windows placed by PlasmaZones.
BorderScopestringtiledtilednormalallWhich windows get a border.
Widthinteger20 – 10Thickness of the coloured border around windows.
Radiusinteger80 – 20Roundness of the border corners. Zero is square.
BorderColorActivestring(system default)Border colour for the focused window. Empty follows the colour scheme.
BorderColorInactivestring(system default)Border colour for unfocused windows. Empty follows the colour scheme.
HideTitleBarsbooleanfalseRemove window title bars, restored when a window floats.
TitleBarScopestringtiledtilednormalallWhich windows lose their title bar.
FocusFadeDurationinteger1600 – 1000How long decorations take to fade between focused and unfocused. Zero switches instantly.
ShowOpacityTintbooleanfalseFade and tint windows placed by PlasmaZones.
OpacityTintScopestringtiledtilednormalallWhich windows are faded and tinted.
Opacitynumber10 – 1How visible matched windows stay, where 1 is fully opaque.
TintStrengthnumber00 – 1How strongly the tint color blends over the window, where 0% keeps it untinted.
TintColorstring(system default)Colour blended over matched windows. Empty follows the colour scheme.

Gaps

Spacing between windows and around screen edges.

Gaps 7 settings
SettingTypeDefaultAcceptsDescription
Innerinteger80 – 50Space between neighbouring windows.
Outerinteger80 – 50Space between the windows and the edges of the screen. Ignored when per-side outer gaps are on.
UsePerSidebooleanfalseSet a different outer gap for each screen edge instead of one value for all four.
Topinteger80 – 50Outer gap along the top edge of the screen. Only applies when per-side outer gaps are on.
Bottominteger80 – 50Outer gap along the bottom edge of the screen. Only applies when per-side outer gaps are on.
Leftinteger80 – 50Outer gap along the left edge of the screen. Only applies when per-side outer gaps are on.
Rightinteger80 – 50Outer gap along the right edge of the screen. Only applies when per-side outer gaps are on.

Animations

Transition timing and which windows animations apply to. The motion presets themselves are a gallery, not settings.

Animations 3 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueWhether window transitions play at all. Off, windows appear and disappear with no motion.
Profileobject{"curve":"0.22,0.61,0.36,1.00","duration":320,"minDistance":0,"sequenceMode":1,"staggerInterval":40}The active motion profile, holding its easing curve, duration, stagger interval, and sequence mode. The animations page writes this, so it is not meant to be edited by hand.
ShaderProfileTreeobject(empty)Per-context overrides of which animation shader each transition uses. The animations page writes this, so it is not meant to be edited by hand.
Animations.WindowFiltering 4 settings
SettingTypeDefaultAcceptsDescription
TransientWindowsbooleanfalseSkip animations for dialogs, popups, tooltips, and dropdown menus.
NotificationsAndOsdbooleantrueSkip animations for notification popups and on-screen displays such as volume and brightness.
MinimumWindowWidthinteger00 – 2000Windows narrower than this do not animate. Zero turns the width threshold off.
MinimumWindowHeightinteger00 – 2000Windows shorter than this do not animate. Zero turns the height threshold off.

Decorations

Per-window shader effects and decoration profiles, plus the filtering that decides which windows receive them.

Decorations 1 setting
SettingTypeDefaultAcceptsDescription
DecorationProfileTreeobject{"baseline":{},"overrides":[]}The decoration profiles themselves, as a baseline set plus per-window overrides. The decorations page writes this, so it is not meant to be edited by hand.
Decorations.Performance 4 settings
SettingTypeDefaultAcceptsDescription
AnimateFocusedOnlybooleantrueRun decoration animations only on the focused window. Unfocused windows keep their decoration but hold still.
PauseWhenIdlebooleantrueStop decoration animations while you are not interacting, and resume on the next input.
IdleTimeoutSecinteger305 – 3600How long without input before decoration animations pause. Only applies when pausing while idle is on.
BlurScaleMultipliernumber10.25 – 2Resolution the blur passes render at, relative to the window. Below 1 is cheaper and softer, above 1 is sharper and costs more.
Decorations.WindowFiltering 3 settings
SettingTypeDefaultAcceptsDescription
TransientWindowsbooleantrueSkip decorations for dialogs, popups, and menus.
MinimumWindowWidthinteger00 – 2000Windows narrower than this get no decoration. Zero turns the width threshold off.
MinimumWindowHeightinteger00 – 2000Windows shorter than this get no decoration. Zero turns the height threshold off.

Shaders

Overlay shader rendering: frame rate, and the audio capture that drives the audio-reactive packs.

Shaders 1 setting
SettingTypeDefaultAcceptsDescription
FrameRateinteger6030 – 144Target refresh rate for shader animations.
Shaders.Audio 14 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleanfalseCapture system audio so the audio-reactive shader packs have a signal to follow. Off, those shaders render but stay still.
Barsinteger6416 – 256Number of frequency bands in the audio visualization.
AutosensbooleantrueContinuously adjusts sensitivity so the bars fill the available range.
Sensitivityinteger10010 – 500Gain applied to the audio signal. With automatic gain on, this is the level it starts adapting from.
NoiseReductioninteger770 – 100How smoothly the bars respond. Higher values are slower and calmer while lower values are fast and twitchy.
LowerCutoffHzinteger5020 – 500Sounds below this frequency are ignored.
HigherCutoffHzinteger100001000 – 20000Sounds above this frequency are ignored.
MonstercatbooleanfalseSpreads each bar into its neighbors for a smoother outline.
WavesbooleanfalseRounds the spectrum into soft waves.
ChannelModestringstereostereomono-averagemono-leftmono-rightStereo shows left and right bars side by side. Mono collapses to one set of bars.
ReversebooleanfalseFlip the frequency order of the bars.
ExtraSmoothinginteger500 – 95Additional smoothing applied on top of noise reduction.
InputMethodstringautoautopipewirepulsealsajacksndioossportaudiofifoshmemLeave on Automatic unless capture fails with the detected backend.
InputSourcestringautoCapture device or monitor source. Keep it set to auto to follow the default output.

Rendering

Graphics backend selection.

Rendering 2 settings
SettingTypeDefaultAcceptsDescription
BackendstringautoautovulkanopenglGraphics API used for overlay rendering.
GpustringautoGPU that draws the zone overlays and on-screen displays. Automatic lets the graphics driver decide. KWin composites window contents, so those are unaffected.

Performance

Throttles that trade responsiveness against CPU and GPU cost.

Performance 3 settings
SettingTypeDefaultAcceptsDescription
PollIntervalMsinteger5010 – 1000How often the daemon samples window positions while dragging. Lower reacts sooner and costs more CPU.
MinimumZoneSizePxinteger10050 – 500Zones smaller than this on either side are treated as unusable and skipped when placing a window.
MinimumZoneDisplaySizePxinteger101 – 50Zones smaller than this on either side are left out of the overlay, so slivers in a dense layout do not clutter it.

Ordering

How zones and windows are numbered, which the navigation and quick-layout shortcuts follow.

Ordering 3 settings
SettingTypeDefaultAcceptsDescription
SnappingLayoutOrderstring(system default)The order zone layouts appear in, as a comma-separated list of layout ids. Anything not listed follows in its default order.
TilingAlgorithmOrderstring(system default)The order autotile algorithms appear in, as a comma-separated list of algorithm ids. Anything not listed follows in its default order.
ScrollingTemplateOrderstring(system default)The order scrolling templates appear in, as a comma-separated list of template ids. Anything not listed follows in its default order.

Exclusions

Global rules for windows PlasmaZones should leave alone.

Exclusions 3 settings
SettingTypeDefaultAcceptsDescription
TransientWindowsbooleantrueLeave dialogs, popups, and toolbars where they are instead of placing them.
MinimumWindowWidthinteger2000 – 2000Windows narrower than this are left alone by every placement mode. Zero turns the width threshold off.
MinimumWindowHeightinteger1500 – 2000Windows shorter than this are left alone by every placement mode. Zero turns the height threshold off.

Editor

The layout editor's own behavior: its snapping, its fill-on-drop, and its modifier overrides.

Editor.FillOnDrop 2 settings
SettingTypeDefaultAcceptsDescription
EnabledbooleantrueLet a zone dropped in the editor expand into the empty space around it.
Modifierinteger67108864Modifier held while dropping a zone to expand it into available space, as a Qt keyboard-modifier value.
Editor.Shortcuts 4 settings
SettingTypeDefaultAcceptsDescription
DuplicatestringCtrl+DEditor shortcut that clones the selected zone.
SplitHorizontalstringCtrl+Shift+HEditor shortcut that divides the selected zone into left and right halves.
SplitVerticalstringCtrl+Alt+VEditor shortcut that divides the selected zone into top and bottom halves.
FillstringCtrl+Shift+FEditor shortcut that expands the selected zone to fill the empty area around it.
Editor.Snapping 5 settings
SettingTypeDefaultAcceptsDescription
GridEnabledbooleantrueSnap zones to a grid while dragging or resizing them in the editor.
EdgeEnabledbooleantrueSnap zones to the edges of neighbouring zones while dragging or resizing them.
IntervalXnumber0.10.01 – 1Horizontal grid spacing, as a fraction of the screen width.
IntervalYnumber0.10.01 – 1Vertical grid spacing, as a fraction of the screen height.
OverrideModifierinteger33554432Modifier held to bypass editor snapping for as long as it is down, as a Qt keyboard-modifier value.

Shortcuts

Every bindable action. These are keyboard bindings rather than tunable values, so the dedicated shortcuts page is the better read. They are listed here for completeness.

Keyboard shortcuts, with defaults and what each action does →

Shortcuts.Global 57 settings
SettingTypeDefaultAcceptsDescription
OpenEditorstringMeta+Shift+EOpen zone editor.
OpenSettingsstringMeta+Shift+POpen settings.
ToggleCheatsheetstringMeta+Alt+/Open the shortcut cheatsheet.
PreviousLayoutstringMeta+Alt+[Switches this screen to the previous layout in the list.
NextLayoutstringMeta+Alt+]Switches this screen to the next layout in the list.
QuickLayout1stringMeta+Alt+1Loads quick-layout slot 1 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout2stringMeta+Alt+2Loads quick-layout slot 2 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout3stringMeta+Alt+3Loads quick-layout slot 3 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout4stringMeta+Alt+4Loads quick-layout slot 4 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout5stringMeta+Alt+5Loads quick-layout slot 5 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout6stringMeta+Alt+6Loads quick-layout slot 6 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout7stringMeta+Alt+7Loads quick-layout slot 7 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout8stringMeta+Alt+8Loads quick-layout slot 8 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
QuickLayout9stringMeta+Alt+9Loads quick-layout slot 9 on the focused screen. A slot holds a zone layout, an autotile algorithm, or a scrolling template, depending on the screen's mode.
MoveWindowLeftstringMeta+Alt+Shift+LeftMoves the focused window into the zone to the left of its current one.
MoveWindowRightstringMeta+Alt+Shift+RightMoves the focused window into the zone to the right of its current one.
MoveWindowUpstringMeta+Alt+Shift+UpMoves the focused window into the zone above its current one.
MoveWindowDownstringMeta+Alt+Shift+DownMoves the focused window into the zone below its current one.
FocusZoneLeftstringAlt+Shift+LeftMoves focus to the window in the zone to the left of the focused one.
FocusZoneRightstringAlt+Shift+RightMoves focus to the window in the zone to the right of the focused one.
FocusZoneUpstringAlt+Shift+UpMoves focus to the window in the zone above the focused one.
FocusZoneDownstringAlt+Shift+DownMoves focus to the window in the zone below the focused one.
PushToEmptyZonestringMeta+Alt+ReturnPush focused window to the nearest empty zone.
RestoreWindowSizestringMeta+Alt+EscapeRestore focused window to its pre-snap size.
ToggleWindowFloatstringMeta+FToggle focused window's floating state.
SwitchFocusFloatTilingstringMeta+Alt+XMoves focus between the floating windows and the placed layout. It returns to the window that last had focus there when that window is still available.
SwapWindowLeftstringMeta+Ctrl+Alt+LeftSwaps the focused window with the window in the zone to the left of it.
SwapWindowRightstringMeta+Ctrl+Alt+RightSwaps the focused window with the window in the zone to the right of it.
SwapWindowUpstringMeta+Ctrl+Alt+UpSwaps the focused window with the window in the zone above it.
SwapWindowDownstringMeta+Ctrl+Alt+DownSwaps the focused window with the window in the zone below it.
SpanWindowLeftstringCtrl+Alt+LeftExtends the focused window across the adjacent zone to the left of it. Once the span reaches the edge of the layout, the same key pulls the opposite edge in instead.
SpanWindowRightstringCtrl+Alt+RightExtends the focused window across the adjacent zone to the right of it. Once the span reaches the edge of the layout, the same key pulls the opposite edge in instead.
SpanWindowUpstringCtrl+Alt+UpExtends the focused window across the adjacent zone above it. Once the span reaches the edge of the layout, the same key pulls the opposite edge in instead.
SpanWindowDownstringCtrl+Alt+DownExtends the focused window across the adjacent zone below it. Once the span reaches the edge of the layout, the same key pulls the opposite edge in instead.
SnapToZone1stringMeta+Ctrl+1Snaps the focused window to zone 1 of the current layout.
SnapToZone2stringMeta+Ctrl+2Snaps the focused window to zone 2 of the current layout.
SnapToZone3stringMeta+Ctrl+3Snaps the focused window to zone 3 of the current layout.
SnapToZone4stringMeta+Ctrl+4Snaps the focused window to zone 4 of the current layout.
SnapToZone5stringMeta+Ctrl+5Snaps the focused window to zone 5 of the current layout.
SnapToZone6stringMeta+Ctrl+6Snaps the focused window to zone 6 of the current layout.
SnapToZone7stringMeta+Ctrl+7Snaps the focused window to zone 7 of the current layout.
SnapToZone8stringMeta+Ctrl+8Snaps the focused window to zone 8 of the current layout.
SnapToZone9stringMeta+Ctrl+9Snaps the focused window to zone 9 of the current layout.
RotateWindowsClockwisestringMeta+Ctrl+]Moves every window one zone clockwise within the current layout.
RotateWindowsCounterclockwisestringMeta+Ctrl+[Moves every window one zone counter-clockwise within the current layout.
CycleWindowForwardstringMeta+Alt+.Moves the focused window to the next zone in the layout's order.
CycleWindowBackwardstringMeta+Alt+,Moves the focused window to the previous zone in the layout's order.
ResnapToNewLayoutstringMeta+Ctrl+ZReapply current layout.
SnapAllWindowsstringMeta+Ctrl+SSnap every visible window to its best-fit zone.
LayoutPickerstringMeta+Alt+SpaceOpens a picker to choose this screen's layout.
ToggleLayoutLockstringMeta+Ctrl+LLocks this screen's layout so nothing switches it until unlocked.
SwapVirtualScreenLeftstringMeta+Ctrl+Alt+Shift+LeftSwaps this virtual screen's windows with those of the virtual screen to the left of it.
SwapVirtualScreenRightstringMeta+Ctrl+Alt+Shift+RightSwaps this virtual screen's windows with those of the virtual screen to the right of it.
SwapVirtualScreenUpstringMeta+Ctrl+Alt+Shift+UpSwaps this virtual screen's windows with those of the virtual screen above it.
SwapVirtualScreenDownstringMeta+Ctrl+Alt+Shift+DownSwaps this virtual screen's windows with those of the virtual screen below it.
RotateVirtualScreensClockwisestringMeta+Ctrl+Alt+]Moves every virtual screen's windows one position clockwise.
RotateVirtualScreensCounterclockwisestringMeta+Ctrl+Alt+[Moves every virtual screen's windows one position counter-clockwise.
Shortcuts.Scrolling 35 settings
SettingTypeDefaultAcceptsDescription
FocusColumnFirststringMeta+Alt+HomeMoves focus to the first column.
FocusColumnLaststringMeta+Alt+EndMoves focus to the last column.
MoveColumnToFirststringMeta+Alt+Shift+HomeMoves the focused column to the first position.
MoveColumnToLaststringMeta+Alt+Shift+EndMoves the focused column to the last position.
ConsumeWindowstringMeta+Alt+IPulls a window from the next column into the focused column, stacking them.
ExpelWindowstringMeta+Alt+Shift+IMoves the focused window out of a shared column into a new column after it.
ConsumeOrExpelLeftstringMeta+Alt+USplits the focused window out of a shared column toward the start of the strip. A window alone in its column merges into the previous column instead.
ConsumeOrExpelRightstringMeta+Alt+OSplits the focused window out of a shared column toward the end of the strip. A window alone in its column merges into the next column instead.
CenterColumnstringMeta+Alt+CScrolls the view so the focused column sits centered on the screen.
ToggleColumnTabbedstringMeta+Alt+TSwitches the focused column between stacked windows and tabs.
ToggleWindowedFullscreenstringMeta+Alt+Shift+FPuts the focused window into its fullscreen presentation while it keeps its place in the column, so it does not cover the screen. Press again to leave it.
CycleColumnWidthstringMeta+Alt+PgUpSteps the focused column through the screen's size presets along the strip.
CycleColumnWidthBackstringMeta+Alt+PgDownSteps the focused column through the screen's size presets along the strip, in reverse.
IncreaseColumnWidthstringMeta+Alt+WGrows the focused column along the strip by the configured step.
DecreaseColumnWidthstringMeta+Alt+Shift+WShrinks the focused column along the strip by the configured step.
MaximizeColumnstringMeta+Alt+FToggles the focused column between filling the work area and a smaller size.
ExpandColumnstringMeta+Alt+EGrows the focused column to fill the empty space visible on screen. Other columns keep their size.
CycleWindowHeightstringMeta+Alt+Shift+PgUpSteps the focused window through the screen's size presets within its column.
CycleWindowHeightBackstringMeta+Alt+Shift+PgDownSteps the focused window through the screen's size presets within its column, in reverse.
IncreaseWindowHeightstringMeta+Alt+HGrows the focused window within its column by the configured step.
DecreaseWindowHeightstringMeta+Alt+Shift+HShrinks the focused window within its column by the configured step.
ResetWindowHeightsstringMeta+Ctrl+Alt+TClears manual window sizes in the focused column so its windows share the column's space evenly.
CenterVisibleColumnsstringMeta+Alt+Shift+CScrolls the view so the fully visible columns sit centered as a group.
FocusWindowTopstringMeta+Alt+VMoves focus to the first window of the focused column.
FocusWindowBottomstringMeta+Alt+Shift+VMoves focus to the last window of the focused column.
FocusColumnLeftstring(system default)Moves focus one column toward the start of the strip and stops at the edge. The regular focus shortcut continues onto the next monitor instead.
FocusColumnRightstring(system default)Moves focus one column toward the end of the strip and stops at the edge. The regular focus shortcut continues onto the next monitor instead.
FocusColumnLeftOrLaststring(system default)Moves focus one column toward the start of the strip, wrapping to the last column at the edge.
FocusColumnRightOrFirststring(system default)Moves focus one column toward the end of the strip, wrapping to the first column at the edge.
MoveToFloatingstring(system default)Makes the focused window float. Unlike the float toggle, it never re-tiles.
MoveToTilingstring(system default)Returns the focused floating window to its column. Unlike the float toggle, it never floats.
ViewPageBackstringMeta+Alt+YScrolls the view toward the start of the strip by a whole screen. Focus stays where it is.
ViewPageForwardstringMeta+Alt+Shift+YScrolls the view toward the end of the strip by a whole screen. Focus stays where it is.
EqualizeColumnWidthsstringMeta+Ctrl+Shift+TGives every column fully on screen an equal share of the screen. Columns clipped at an edge are left alone.
MinimizeColumnWidthstringMeta+Alt+Shift+EShrinks the focused column to the smallest size preset.
Shortcuts.Tiling 8 settings
SettingTypeDefaultAcceptsDescription
TogglestringMeta+Shift+TCycle the focused screen's placement mode.
FocusMasterstringMeta+Shift+MFocus the master window.
SwapMasterstringMeta+Shift+ReturnSwap focused window with master.
IncMasterRatiostringMeta+Shift+LGives the master area a larger share of the screen.
DecMasterRatiostringMeta+Shift+HGives the master area a smaller share of the screen.
IncMasterCountstringMeta+Ctrl+=Moves one more window into the master area.
DecMasterCountstringMeta+Ctrl+-Moves one window out of the master area.
RetilestringMeta+Ctrl+TRe-applies the tiling algorithm to every window on the screen.

Related