Files
Waybar/man/waybar-mango-window.5.scd
T
AlexandClaude Opus 4.8 72fdf77c19 docs: align man pages with code + fill documentation gaps (0.16.0 audit)
A full man<->code consistency audit surfaced options, format placeholders
and CSS classes that were implemented but undocumented, documented but not
implemented (some causing fmt crashes when copied from examples), and
defaults that disagreed with the code. This aligns the docs with the code
and fixes a few genuine code gaps.

Docs:
- Add the missing waybar-user(5) man page (and register it in meson.build)
- Document previously-undocumented options/placeholders/CSS across many
  modules (custom image-path/image-name/icon-size, graph_type/width/
  datapoints; battery smooth-power; wireplumber format-source/only-physical;
  mpris {position}/prefer-album-artist; network {signalStrengthApp}/compact
  bandwidth; pulseaudio {source_volume}/{source_desc}; upower {temperature}/
  {model}/{native-path}; wwan {power_state}/{imei}; tray ignore-list; and
  many CSS state classes: .sink-muted, .source-muted, .workspace-hover, etc.)
- Correct documented defaults to match the code (hyprland format {name},
  gamemode {count}, cpu-graph interval 5, cava input_delay 4, niri taskbar
  icon-size 16, disk/gps/wayfire formats, menu-actions object type, ...)
- Remove placeholders/options that do not apply (custom-graph {icon}/format/
  format-icons/rotate) and fix crashing examples (wwan {mode}, gps
  format-no-fix); note cava background/foreground/continuous_rendering are
  cava-config-file options

Code:
- bluetooth: accept the documented `controller` key as a synonym of
  `controller-alias` (the option was silently ignored)
- mango/workspaces: supply the documented `{name}` fmt arg (was missing ->
  fmt::format threw)
- privacy: read `tooltip` as a bool (was guarded on isString(), so the
  documented `tooltip: false` was silently ignored)

All man pages validated with scdoc 1.11.4. Not compiled locally (no gtkmm);
C++ build relies on CI.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-04 02:39:38 +02:00

73 lines
1.7 KiB
Scdoc
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
waybar-mango-window(5)
# NAME
waybar - mango window module
# DESCRIPTION
The *window* module displays the title and app ID of the currently focused window in the Mango compositor.
# CONFIGURATION
Addressed by *mango/window*
*format*: ++
typeof: string ++
default: {title} ++
The format string. See *FORMAT REPLACEMENTS*.
*rewrite*: ++
typeof: object ++
Rules to rewrite the window title. Each key is a regular expression and its value is the replacement string. Captures can be used with *$1*, *$2*, etc.
*icon*: ++
typeof: bool ++
default: false ++
Whether to show the application icon.
*icon-size*: ++
typeof: integer ++
default: 24 ++
Size of the application icon in pixels.
*expand*: ++
typeof: bool ++
default: false ++
Enables the module to consume all leftover space.
# FORMAT REPLACEMENTS
*{title}*: The current window title.
*{app_id}*: The app ID of the focused window.
# REWRITE RULES
If the title matches a regular expression from the *rewrite* object, it is replaced by the corresponding value. Regular expression syntax follows ECMAScript rules. Unmatched titles are left unchanged.
# EXAMPLES
```
"mango/window": {
"format": "{title}",
"rewrite": {
"(.*) - Mozilla Firefox": "🌎 $1",
"(.*) - zsh": "> [$1]"
},
"icon": true,
"icon-size": 20
}
```
# STYLE
- *#window*
The following classes are set on the module's event box (the container that
wraps *#window*), not on *#window* itself. Target them directly or with a
descendant selector such as *.solo #window*:
- *.empty* applied when no window is focused (module hidden by default)
- *.solo* applied when only one window is present on the active workspace
- *.<app-id>* applied when a single window with the given app ID is on the workspace