ironbar/docs/modules/Sway-mode.md
Rodrigo Batista de Moraes e307e15dc4
feat: new sway-mode module (#671)
* feat: add sway-mode module

* refactor: Avoid making multiple connections to SwayIPC

Now `sway::Client` is store in `ironbar.clients`, and allow dynamically
registering event listeners, instead of hardcoding events for Workspace
updates.

Remove the use of `swayipc::Connection` from `sway-mode` module, and
replace it with the new event listener system.

#671
2024-08-05 13:22:01 +01:00

2.3 KiB

Displays the current sway mode in a label. If the current sway mode is "default", nothing is displayed.

Note

This module only works under the Sway compositor.

Configuration

Type: sway-mode

Name Type Default Description
truncate 'start' or 'middle' or 'end' or Map null The location of the ellipses and where to truncate text from. Leave null to avoid truncating. Use the long-hand Map version if specifying a length.
truncate.mode 'start' or 'middle' or 'end' null The location of the ellipses and where to truncate text from. Leave null to avoid truncating.
truncate.length integer null The fixed width (in chars) of the widget. Leave blank to let GTK automatically handle.
truncate.max_length integer null The maximum number of characters before truncating. Leave blank to let GTK automatically handle.
JSON
{
  "end": [
    {
      "type": "sway-mode",
      "truncate": "start"
    }
  ]
}
TOML
[[end]]
type = "sway-mode"
truncate = "start"
YAML
end:
  - type: "sway-mode"
    truncate: "start"
Corn
{
  end = [
    {
      type = "sway-mode"
      truncate = "start"
    }
  ]
}

Styling

Selector Description
.sway_mode Sway mode label widget

For more information on styling, please see the styling guide.