waybar-sway-workspaces(5) # NAME waybar - sway workspaces module # DESCRIPTION The *workspaces* module displays the currently used workspaces in Sway. # CONFIGURATION Addressed by *sway/workspaces* *all-outputs*: ++ typeof: bool ++ default: false ++ If set to false, workspaces will only be shown on the output they are on. If set to true all workspaces will be shown on every output. *format*: ++ typeof: string ++ default: {value} ++ The format, how information should be displayed. *format-icons*: ++ typeof: array ++ Based on the workspace name and state, the corresponding icon gets selected. See *icons*. *disable-scroll*: ++ typeof: bool ++ default: false ++ If set to false, you can scroll to cycle through workspaces. If set to true this behaviour is disabled. *disable-click*: ++ typeof: bool ++ default: false ++ If set to false, you can click to change workspace. If set to true this behaviour is disabled. *smooth-scrolling-threshold*: ++ typeof: double ++ Threshold to be used when scrolling. *disable-scroll-wraparound*: ++ typeof: bool ++ default: false ++ If set to false, scrolling on the workspace indicator will wrap around to the first workspace when reading the end, and vice versa. If set to true this behavior is disabled. *enable-bar-scroll*: ++ typeof: bool ++ default: false ++ If set to false, you can't scroll to cycle throughout workspaces from the entire bar. If set to true this behaviour is enabled. *disable-markup*: ++ typeof: bool ++ default: false ++ If set to true, button label will escape pango markup. *current-only*: ++ typeof: bool ++ default: false ++ If set to true. Only focused workspaces will be shown. *persistent_workspaces*: ++ typeof: json (see below) ++ default: empty ++ Lists workspaces that should always be shown, even when non existent *on-update*: ++ typeof: string ++ Command to execute when the module is updated. *numeric-first*: ++ typeof: bool ++ Whether to put workspaces starting with numbers before workspaces that do not start with a number. *disable-auto-back-and-forth*: ++ typeof: bool ++ Whether to disable *workspace_auto_back_and_forth* when clicking on workspaces. If this is set to *true*, clicking on a workspace you are already on won't do anything, even if *workspace_auto_back_and_forth* is enabled in the Sway configuration. # FORMAT REPLACEMENTS *{value}*: Name of the workspace, as defined by sway. *{name}*: Number stripped from workspace value. *{icon}*: Icon, as defined in *format-icons*. *{index}*: Index of the workspace. # ICONS Additional to workspace name matching, the following *format-icons* can be set. - *default*: Will be shown, when no string matches is found. - *urgent*: Will be shown, when workspace is flagged as urgent - *focused*: Will be shown, when workspace is focused - *persistent*: Will be shown, when workspace is persistent one. # PERSISTENT WORKSPACES Each entry of *persistent_workspace* names a workspace that should always be shown. Associated with that value is a list of outputs indicating *where* the workspace should be shown, an empty list denoting all outputs. ``` "sway/workspaces": { "persistent_workspaces": { "3": [], // Always show a workspace with name '3', on all outputs if it does not exists "4": ["eDP-1"], // Always show a workspace with name '4', on output 'eDP-1' if it does not exists "5": ["eDP-1", "DP-2"] // Always show a workspace with name '5', on outputs 'eDP-1' and 'DP-2' if it does not exists } } ``` n.b.: the list of outputs can be obtained from command line using *swaymsg -t get_outputs* # EXAMPLES ``` "sway/workspaces": { "disable-scroll": true, "all-outputs": true, "numeric-first": false, "format": "{name}: {icon}", "format-icons": { "1": "", "2": "", "3": "", "4": "", "5": "", "urgent": "", "focused": "", "default": "" } } ``` # Style - *#workspaces button* - *#workspaces button.visible* - *#workspaces button.focused* - *#workspaces button.urgent* - *#workspaces button.persistent* - *#workspaces button.current_output* - *#workspaces button#sway-workspace-${name}*