| cowbuttons(1) | cowbuttons - button panel for cow | cowbuttons(1) |
NAME
cowbuttons - Button panel for the cow window manager
SYNOPSIS
cowbuttons [-c config] [-h]
DESCRIPTION
cowbuttons displays a small configurable grid of cells. Cells can run cow(1) commands, periodically display the output of scripts, show selected state from cow's status socket, or act as empty spacers.
Wayland does not provide X11 window reparenting, so cowbuttons does not swallow clients. Use command buttons to launch or focus applications, and use cow rules to style or place companion windows.
OPTIONS
-c config
-h
CONFIGURATION
The format is line-oriented. Blank lines and lines starting with # are ignored. Labels and commands containing whitespace must be quoted.
Colours may be opaque 0xRRGGBB values or 0xRRGGBBAA values carrying an alpha component. In the latter form, 00 is fully transparent and FF is fully opaque. For example, style button.bg 0x282828CC uses an 80-percent opaque dark grey.
cell W H
grid rows cols
col col width N
show panel name [...]
panel name [direction [property value ...]] {
row [height N] { ... }
if [not] command name { ... }
if [not] file path { ... }
if [not] env name { ... }
font name
resizable true|false
style button.bg colour
style button.bg_pressed colour
style button.fg colour
style button.fg_pressed colour
style button.image path
style button.image_pressed path
style button.image_size N
style button.image_position left|center|right|fill
style button.justify left|center|right
button label command [property value ...]
leftclick command click command middleclick command rightclick command
doubleclick command leftdoubleclick command middledoubleclick command rightdoubleclick command
script command interval seconds [property value ...]
The first line written to standard output, limited to 255 bytes, replaces the cell's label when the command exits successfully. Empty output clears the label. If the command fails, the previous successful label is retained and an error is written to standard error.
Script cells support the same click actions, styling, and geometry properties as button cells.
external command [property value ...]
status type [property value ...]
spacer [property value ...]
EXAMPLES
show panel launcher
show panel telephone
show panel pager
show panel statusbar
resizable true
style button.bg 0x39414a
style button.bg_pressed 0x242a30
style button.fg 0x1f2933
style button.fg_pressed 0xffffff
style button.image_size 18
panel launcher {
cell 118 30
grid 2 4
row height 30 {
button "Terminal" "exec xterm" bg 0xcde7d8 image cowbuttons/svg/terminal.svg
button "Firefox" "exec firefox" bg 0xffddc8 image cowbuttons/svg/browser.svg
button "Files" "exec thunar" bg 0xffe4ad image cowbuttons/svg/files.svg
button "Editor" "exec emacs" bg 0xded7f5 image cowbuttons/svg/editor.svg
}
row height 30 {
button "Next" "focus -n" bg 0xf6e2a6
button "Prev" "focus -p" bg 0xcfe8db
}
}
panel telephone left bg 0xf2d6a6 {
cell 42 28
grid 5 3
row height 22 {
button "Telephone" "nop" span fill bg 0xe8d9f2
}
}
panel pager right bg 0x3f5b51 {
external "cowpager" width 420 height 120 bg 0x242a30
}
panel statusbar {
cell 140 30
grid 1 2
row {
script "~/.local/bin/clock.sh" interval 1 click "exec gsimplecal" justify center
script "~/.local/bin/battery.sh" interval 30 justify center
}
}
Remove cowbuttons' own window decors using a cow rule:
decor -d cowbuttons-nodecor border.width 0 decor -d cowbuttons-nodecor border.handles false decor -d cowbuttons-nodecor titlebar.enabled false rule -g -Ton-map -ncowbuttons-chrome -s %cowbuttons decor -a cowbuttons-nodecor
FILES
$XDG_CONFIG_HOME/cow/cowbuttons.conf
~/.config/cow/cowbuttons.conf
SEE ALSO
cow(1), moocow(1), cowbar(1), cowiconman(1), cowpager(1)
AUTHORS
Thomas Adam <thomas@xteddy.org>
| 2026-08-16 | 0.2 |