diff --git a/man/waybar-sway-workspaces.5.scd b/man/waybar-sway-workspaces.5.scd new file mode 100644 index 00000000..39c8daed --- /dev/null +++ b/man/waybar-sway-workspaces.5.scd @@ -0,0 +1,123 @@ +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: {name} ++ + 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. + +*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 + +# FORMAT REPLACEMENTS + +*{name}*: Name of the workspace, as defined by sway. + +*{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 + +# PERSISTANT WORKSPACES + +Each entry of *persistant_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": { + "persistant_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, + "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.persistant* diff --git a/meson.build b/meson.build index 342eb6f3..89b8994e 100644 --- a/meson.build +++ b/meson.build @@ -173,6 +173,7 @@ if scdoc.found() 'waybar-pulseaudio.5.scd', 'waybar-sway-mode.5.scd', 'waybar-sway-window.5.scd', + 'waybar-sway-workspaces.5.scd', ] foreach filename : man_files