Script
Executes a script and shows the result of stdout on a label.
Pango markup is supported.
If you want to be able to embed multiple scripts and/or variables, prefer the label module. For more advanced use-cases, use custom.
Configuration
Type:
script
| Name | Type | Default | Description |
|---|---|---|---|
cmd | string | null | Path to the script on disk |
mode | 'poll' or 'watch' | poll | See #modes |
interval | number | 5000 | Number of milliseconds to wait between executing script |
Modes
- Use
pollto run the script wait for it to exit. On exit, the label is updated to show everything the script wrote tostdout. - Use
watchto start a long-running script. Every time the script writes tostdout, the label is updated to show the latest line. Note this does not work for all programs as they may use block-buffering instead of line-buffering when they detect output being piped.
JSON
{ "end": [ { "type": "script", "cmd": "/home/jake/.local/bin/phone-battery", "mode": "poll", "interval": 5000 } ]}TOML
[[end]]type = "script"cmd = "/home/jake/.local/bin/phone-battery"mode = "poll"interval = 5000YAML
end: - type: "script" cmd: "/home/jake/.local/bin/phone-battery" mode: 'poll' interval : 5000Corn
{ end = [ { type = "script" cmd = "/home/jake/.local/bin/phone-battery" mode = "poll" interval = 5000 } ]}{ "end": [ { "type": "script", "cmd": "/home/jake/.local/bin/phone-battery", "mode": "poll", "interval": 5000 } ]}end: - type: script cmd: /home/jake/.local/bin/phone-battery mode: poll interval: 5000[[end]]type = "script"cmd = "/home/jake/.local/bin/phone-battery"mode = "poll"interval = 5_000Styling
| Selector | Description |
|---|---|
.script | Script widget label |
For more information on styling, please see the styling guide.