NAME¶
lcdproc-config - format of LCDproc's configuration files
SYNTAX¶
The syntax for LCDproc's configuration files is INI-file style.
They are 8-bit text files divided into sections, each containing zero or more
key-value pairs. Sections are introduced by section labels which start with '
[' and end with '
]', and key-value pairs consist of a key name,
a '
=' sign and a value each.
Key names are sequences of non-space characters, not starting with '
['
and not containing '
=' or '
\n', while values are shell like
strings. I.e. they are either simple sequences of non-space characters, or
double quoted-strings with C-style syntax (except the missing support for
'\NNN' and '\xNN' escape sequences) or or a mix of both of these forms.
Section labels and key names are case-insensitive and may occur more than once.
Keys of duplicate sections will be merged into one section, while the values
of duplicate keys in a section will be appended to form an array of values for
this key. (In the program, all values of a key can be retrieved individually)
Spaces around section labels, keys, and values are ignored. Lines starting with
'
;' or '
#' are considered comments and ignored too.
While all of the above is quite common to almost all INI-file implementations,
there are a few special features that make LCDproc's config files special:
- *
- Section labels may contain any character except ']',
' \n' or '\0'. However, all characters are interpreted
literally (i.e. neither quoting, nor escaping done).
- *
- Key names may contain any non-space character except
'\n' or ' \0'. However, all characters are interpreted
literally (i.e. neither quoting, nor escaping done).
- *
- Comments are allowed after section labels and key value
pairs
- *
- Values may be a mix of quoted and unquoted strings similar
as strings are interpreted in the shell. E.g. the value 'string" with
"blanks"\t!"' will be parsed as 'string with
blanks<TAB>!' where <TAB> stands for the TAB character.
In case of a a parsing error the rest of the line is ignored and parsing
continues with the next line.
EXAMPLE¶
Here is fully working example of an LCDd.conf (formatted somewhat strange to
show the features):
# the server section
[server]
Bind=127.0.0.1
Port=13666
User="nobody"
#Foreground=no
#ReportLevel=3
#ReportToSyslog=yes
Driver="my Curses Driver"
DriverPath=/usr/lib/lcdproc/
WaitTime= "5"
ServerScreen=no
# assign keys to special functions #
ToggleRotateKey = Enter
PrevScreenKey = Left
NextScreenKey = Right
# ScrollUpKey = Up
#ScrollDownKey=Down
# menu section: define keys to use in the server menu #
[menu]
MenuKey = Escape # ESC switches to server menu
EnterKey =Enter
UpKey= Up
DownKey="Down"
LeftKey= "Left"
RightKey = "Right"
# configuration of the curses driver #
[my curses Driver] # yes I use the curse driver
File= "curses.so"
Size="20"x"4" # LCD screen dimensions
TopLeftX=7 # screen position: X coordinate
TopLeftY=7 # screen position: Y coordinate
Foreground=blue # foreground color
Background=cyan # background color when backight is off
Backlight=red # background color when backight is on
FILES¶
These are the default config files for the various parts of the LCDproc suite:
- /etc/LCDd.conf
- configuration of the LCDd server daemon
- /etc/lcdproc.conf
- configuration of the lcdproc system monitoring
client
- /etc/lcdexec.conf
- configuration of the lcdexec the program starter
client
- /etc/lcdvc.conf
- configuration of the lcdvc virtual console client
SEE ALSO¶
LCDd(8),
lcdproc(1),
lcdexec(1)
AUTHOR¶
This manual page has been written by Peter Marschall <peter@adpm.de>