UverseWiki

Формат файлов conf

Большинство конфигурационных файлов в папке config в UverseWiki имеют одинаковых формат и расширение conf. Особенности:

  1. Aайл должен всегда быть сохранён в UTF-8;
  2. Aайл разделён на столбцы, чаще всего разделитель — пробел или табуляция. Несколько пробелов и/или табуляций подряд считается одним разделителем (т.е. они не задают пустые колонки);
    • если специально не указано, файл имеет фиксированное количество столбцов, поэтому пробелы игнорируются в последнем столбце (см. пример).
  3. Jбычно пропускать столбцы (задать им пустое значение) можно с помощью дефиса (—).
  4. Vожно использовать комментарии — строки, начинающиеся с точки с запятой или решётки;
    • перед ; или # не должно быть пробелов — иначе строка считается обычной.
  5. Gробелы в начале и конце каждого столбца обрезаются;
    • если требуется сохранить пробел, то нужно задать его явно — с помощью escape-последовательности \x20 (см. пример ниже).
  6. Пустые строки игнорируются;
  7. Можно использовать escape-последовательности: прямой слэш обозначает спецсимвол, поэтому прямые слэши всегда нужно дублировать — тогда он обозначает сам себя. Примеры:
    \n
    разрыв строки, код 13;
    \r
    перевод каретки, код 10 (если вы хотите начать новую строку, используйте только \n, но не \r\n — в UverseWiki все строки в Unix-стиле, если не сказано отдельно);
    \\
    прямой слэш;
    \x20
    пробел, код 32;
    \t
    табуляция, код. 9.

Версии всех файлов по-умолчанию можно найти в SVN-хранилище проекта.

См. также функции UWikiSettings->LoadKeyValuesFrom(), LoadArrayFrom().

Пример файла

Для файла с 3 столбцами (это важно, так как в последнем столбце можно использовать пробелы — они не являются разделителями).

# Комментарий до конца строки.
; Ещё один комментарий.

Значение_первой_колонки     ВТорой    Наконец, последней - пробелы входят в её значение.
# строка ниже - не комментарий, ибо начинается с пробела.
  ;-)                       -         Смайлик!

Что-нибудь_из_Юникода:      あおういえ
Колонка,_содержащая_лишь_пробел:      \x20