The configuration file uses a simplified INI file format:
# Properties not preceded by a section are considered global
# and merged into every section declarations.
foo=bar
[block1]
baz=qux
# This is a comment
[block2]
quux= quuz
In this example, block2 contains a foo property equal to "bar" and a quux property equal to " quuz" (including the leading space).
Everything after the equal sign will be part of the value, thus inline comments won’t be stripped out.
At runtime, these properties are simply variables, that are passed along to the status bar program when printing is necessary.
However on startup, i3blocks checks some optional properties to eventually setup the scheduling of a command.
If a block specifies a command, then all of its properties are passed as environment variables at execution, which means that the foo=bar property will be available from a shell script with $foo.
The output of the command is used to update the values of these variables.
The values are reset to default (as defined in the configuration file) before the update, so that blocks get a consistent behavior at each execution.
|
Note
|
Each line from a block output must be terminated with a newline.
|