====== Использование YAML ======
Для составления конфигурации ''jroboplc'' используется формат YAML.
Внимание! В YAML отступы имеют значение. Для отступов используется пробел. TAB'ы использовать запрещено.
===== Основные сведения о YAML =====
https://yaml.org/start.html
===== Инструменты для работы с YAML =====
http://yaml-online-parser.appspot.com/
===== Группировка =====
Довольно часто может потребоваться описать несколько наборов параметров с небольшими, либо отсутствующими различиями, например:
module.ser:
- portnum: 1
sysname: /dev/ttyMXUSB0
baud: 9600
databits: 8
parity: 0
stopbits: 1
timeout: 200
- portnum: 2
sysname: /dev/ttyMXUSB1
baud: 9600
databits: 8
parity: 0
stopbits: 1
timeout: 200
Как видно, отличия лишь в двух параметрах - ''portnum'' и ''sysname''. В следующем примере мы вынесем общие параметры в отдельную группу:
group: &group
baud: 9600
databits: 8
parity: 0
stopbits: 1
timeout: 200
module.ser:
- portnum: 1
sysname: /dev/ttyMXUSB0
<<: *group
- portnum: 2
sysname: /dev/ttyMXUSB1
<<: *group
Теперь, если потребуется изменить параметр ''baud'' сразу всем, достаточно будет изменить его в группе. В тоже время параметры можно указывать явно, чтобы перекрыть значение, установленное в группе, например:
group: &group
baud: 9600
databits: 8
parity: 0
stopbits: 1
timeout: 200
module.ser:
- portnum: 1
sysname: /dev/ttyMXUSB0
<<: *group
- portnum: 2
sysname: /dev/ttyMXUSB1
baud: 115200
<<: *group
Группа обязательно должна располагаться выше места ее использования.