~rkintzi/statusbar

9a0ebfd2f32bd22ef75802ed3b5512a3556511f9 — RadosÅ‚aw Kintzi 9 months ago d54a0a0
Add documentation for the Window widget
2 files changed, 30 insertions(+), 6 deletions(-)

M README.md
M widgets/window.go
M README.md => README.md +30 -5
@@ 20,10 20,17 @@ By default, the program reads its configuration from the
for further customization:

```
- widget: Window
  excludeAppIDs: ["foot"]
- widget: ExternalProgram
  command: /usr/bin/i3status
- widget: SystemMonitor
  format: "\ue8b0 {cpu}% \ue8b2 {mem}% \ue8b3 {load}%"
- widget: Volume
  scrollDownCommand: volumeup
  scrollUpCommand: volumedown
  rightClickCommand: mute toggle
  leftClickCommand: pavuctrl
- widget: BatteryMonitor
  format: "{icon} {level}%"
  statusIcons: "\ue85b\ue85b  "


@@ 31,11 38,6 @@ for further customization:
  dischargingIcons: "\ue860\ue861\ue862\ue863\ue864\ue866\ue866\ue867\ue868\ue869\ue86a"
  colors: "#9e1828,10,#968a38,20,#ccc"
  criticalLevel: 5
- widget: Volume
  scrollDownCommand: volumeup
  scrollUpCommand: volumedown
  rightClickCommand: mute toggle
  leftClickCommand: pavuctrl
- widget: DateTime
  format: "\uf2ab 2006-01-02 \uf394 15:04:05"
```


@@ 155,16 157,23 @@ device. It offers the following options for customization:

- `format`: Determines how the widget is displayed. The default format is
  `{icon} {level}%`.

- `icon`: Specifies the icon that appears when the device is not muted.

- `muteIcon`: Specifies the icon that appears when the device is muted.

- `leftClickCommand`: Specifies the command that is executed when the left
  mouse button is clicked.

- `rightClickCommand`: Specifies the command that is executed when the right
  mouse button is clicked.

- `scrollUpCommand`: Specifies the command that is executed when the mouse
  scroll up event occurs.

- `scrollDownCommand`: Specifies the command that is executed when the mouse
  scroll down event occurs.

- `volMonCommand`: Specifies the program responsible for monitoring the volume
  level of the devices. The program should print the volume level to its
  standard output each time it detects a change. An example program that works


@@ 173,6 182,22 @@ device. It offers the following options for customization:
  [README.md](https://git.sr.ht/~rkintzi/statusbar/tree/master/item/cmds/pavolmon/README.md)
  for instructions on how to install it.

### Window

The window widget displays the title of the focused window. It provides the
following options:

- `titlePrefix` - a string that is added before the title (default: "\uf2a3 ")
- `maxTitleLength` - if the length of the title exceeds the specified value,
  it is trimmed and an ellipsis symbol is added (default: 80, set to -1 to
  disable trimming)
- `ellipsis` - the symbol used as an ellipsis after trimming the window's
  title (default: "\u2026")
- `excludeAppIDs` - to make the title appear more standardized, the Window
  widget first removes the app ID from the title (because different
  applications place them in different locations) and then appends it back.
  This option allows you to specify a list of application IDs that will not be
  appended.

## statusbar - The Library


M widgets/window.go => widgets/window.go +0 -1
@@ 16,7 16,6 @@ type Window struct {
	MaxTitleLen   int      `yaml:"maxTitleLength"`
	Ellipsis      string   `yaml:"ellipsis"`
	ExcludeAppIDs []string `yaml:"excludeAppIDs"`
	AllowSymbols  bool     `yaml:"allowSymbols"`

	excludeAppIDs map[string]bool
	events        chan *swayipc.WindowEvent