workspaces
Workspace switcher with three styles: regular animated pills, minimal text-only labels, or Focus Hint (small dots for inactive workspaces and an expanded active pill with the focused app icon).
Workspace pills use the workspaces widget’s resolved capsule_radius.
Set [widget.workspaces].capsule_radius for just the workspace switcher, or [bar.<name>].capsule_radius as the bar default.
Pill styling and capsule_radius apply only when style = "regular".
| Setting | Type | Default | Description |
|---|---|---|---|
style | string | "regular" | Pill style: "regular" (animated pills), "minimal" (text-only labels, no pill backgrounds), or "focus_hint" (inactive dots + expanded active pill with focused app icon). |
display | string | "id" | Label mode: "none", "id", or "name". "none" is not available when style is "minimal" or "focus_hint". |
max_label_chars | int | 1 | Maximum characters for workspace name labels; longer names are truncated. Only affects non-numeric labels (workspace IDs like 10, 11 are never truncated). |
pill_scale | float | 1.0 | Scale workspace pill thickness (cross-axis size; regular style only). |
active_pill_size | float | 2.2 | Minimum active pill length along the bar, as a multiple of pill thickness. Labels may expand beyond this. |
inactive_pill_size | float | 1.0 | Minimum inactive pill length along the bar, as a multiple of pill thickness. Labels may expand beyond this. |
focused_color | string | "primary" | Color role or hex color for the focused workspace pill |
occupied_color | string | "secondary" | Color role or hex color for occupied (non-focused) workspace pills |
empty_color | string | "secondary" | Color role or hex color for empty workspace pills |
urgent_color | string | "error" | Color role or hex color for urgent workspace pills |
change_color_on_hover | bool | true | Change a workspace’s fill and label colors while the pointer hovers over it. Set to false to preserve each workspace’s configured color while hovering. |
focused_output_only | bool | false | Only highlight the active workspace on the monitor that has keyboard or pointer focus; other monitors show their active workspace in the occupied color. |
labels_only_when_occupied | bool | false | Show id/name labels on workspaces with open windows and on the active workspace even when empty; other empty tags stay unlabeled. Requires display = "id" or "name". |
hide_when_empty | bool | false | Hide workspace pills with no open windows. |
[widget.workspaces]style = "regular" # regular | minimal | focus_hintdisplay = "id" # none | id | namemax_label_chars = 2 # truncate long workspace names (e.g. "VESKTOP" → "VE")labels_only_when_occupied = true # (1) (2*) ( ) (4) - occupied tags and the active tag show labels (*active but empty)hide_when_empty = truepill_scale = 1.0active_pill_size = 2.2inactive_pill_size = 1.0focused_color = "primary"occupied_color = "secondary"empty_color = "surface_variant"urgent_color = "error"change_color_on_hover = true # false = keep configured workspace colors while hoveringfocused_output_only = false # true = only the focused monitor highlights its active workspace