---
name: "lcdproc-config"
section: "5"
platform: "linux"
package: "lcdproc"
version: "0.5.9-11"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/lcdproc-config"
---

# lcdproc-config(5)

format of LCDproc's configuration files

## 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)](/LCDd/8.md), [lcdproc(1)](/lcdproc/1.md), [lcdexec(1)](/lcdexec/1.md)

## AUTHOR

This manual page has been written by Peter Marschall \<peter@adpm.de\>
