Skip to content

Setting the status

Avahe Kellenberger edited this page Aug 28, 2021 · 8 revisions

Nimdow's bar allows users to easy add text on the right-hand side - this is the status section.

The status is the text read from the root window's name property, which can be set with xsetroot -name "My status". This is the exact same way dwm manages its status. I recommend reading their page about setting statuses.

The status supports plaintext, emojis, and colors (via ANSI escape codes).

Example with emojis

xsetroot -name "Hello, world 🙂"

Example with colors

xsetroot -name "$(echo "Hello, \e[31mworld\e[0m")"

If writing a shell script, it may be easier to set variables for these colors.

red=$'\e[31m'
green=$'\e[32m'
blue=$'\e[34m'
magenta=$'\e[35m'
cyan=$'\e[36m'
white=$'\e[0m'

xsetroot -name "Hello, ${red}world"

We support up to 24-bit color. See this page detailing how custom colors can be defined.

Controlling fonts

Similar to how you would set colors in the status, you can now select fonts.

A simple \e[11m would select the first font, \e[12m would select the second font (and so on up until \e[19m).

To reset to the first font in your config (the default), you can use \e[10m to get the default font behavior or \e[0m to reset everything, including colors.

You can of course also use the normal color commands along with this, so \e[32;41;12m would set a green foreground color, red background color, and font 2 (the second font in your config).

Setting status for individual monitors

Use the following syntax to set the status of individual monitors:

xsetroot -name "NIMDOW_MONITOR_INDEX=0 First Monitor NIMDOW_MONITOR_INDEX=1 Second Monitor"