Справочник
Конфигурация
Поиск конфигурации, приоритет источников и структурированные параметры YAML.
Настройки и приоритет
mdv объединяет настройки из нескольких источников в порядке уменьшения приоритета:
- Параметры командной строки (максимальный приоритет).
MDV_COLOR, только для настройкиcolor.- Пресет, выбранный через
--preset. - Конфигурация из
--config-file,MDV_CONFIG_PATHили пользовательского каталога. - Встроенные значения по умолчанию.
Создать конфиг по умолчанию можно командой mdv --init-config. Укажите каталог (mdv --init-config custom/dir), используйте --config-file <CONFIG_DIR> или задайте MDV_CONFIG_PATH, чтобы записать его в другой путь.
Файлы конфигурации поддерживают YAML (.yaml или .yml). Все настройки и примеры приведены в шаблоне конфигурации:
# docs/examples/config.yaml
theme: "terminal"
code_theme: null
inline_style: {}
wrap: "char"
table_wrap: "fit"
table_borders: false
heading_layout: "level"
smart_indent: false
block_spacing: null
code_wrap_indent: "double"
link_style: "clickable"
link_overflow: "wrap"Пути конфигурации
mdv проверяет config.yaml перед config.yml. Кандидаты из --config-file DIR идут перед MDV_CONFIG_PATH; если оба источника отсутствуют, используется пользовательский каталог настроек ОС. В Windows это %USERPROFILE%\.config\mdv, в Linux $XDG_CONFIG_HOME/mdv или ~/.config/mdv, в macOS ~/Library/Application Support/mdv.
Загружается первый существующий файл. Ошибки YAML или настроек останавливают запуск без перехода к следующему файлу. --init-config создаёт новый файл и отказывается перезаписывать существующий. --no-config пропускает основной файл, сохраняя выбранный каталог для тем и пресетов.
mdv --init-config ./mdv-config
mdv --config-file ./mdv-config README.md
mdv --no-config README.mdПравила объединения и очистки
Файлы конфигурации и пресетов принимают структурированные YAML-mapping для custom_theme, custom_code_theme, block_spacing, custom_callout, custom_code_block, custom_checkbox, custom_list, callout_style. Компактные строки CLI также допустимы в YAML.
| Настройка | Объединение |
|---|---|
| Обычные значения | Явно заданное значение большего приоритета заменяет предыдущее, включая false, значения по умолчанию и null. |
custom_theme, custom_code_theme |
Цвета объединяются по полям. Внутри источника порядок цветов синтаксиса: custom_theme, code_theme, custom_code_theme. Более высокий источник важнее даже между разными параметрами переопределения. |
inline_style |
Объединение по элементу и свойству оформления. Явный false отключает атрибут. |
custom_callout, custom_code_block, custom_checkbox, custom_list |
Объединение по записи и свойству; пропущенные свойства сохраняют значения и приоритет источника. |
block_spacing |
Mapping конфигурации/пресета заменяет предыдущий; CLI объединяет только явно указанные элементы и стороны. |
В пользовательских записях null очищает свойство или запись, корневые null и {} очищают всю настройку. Переданный aliases заменяет весь список, aliases: [] очищает его. Структурированный callout_style принимает style, show_icons, show_simple_icons, fold_icons, label_inside, uppercase.
custom_callout:
note:
color: red
tip: null
custom_code_block:
python:
aliases: []
inline_style:
code:
backticks: falseMDV_COLOR важнее пресета и конфигурации, но явный --color важнее переменной. Значения окружения проверяются до переопределений CLI. Неизвестные структурированные свойства, дубликаты и некорректные значения приводят к ошибкам. Все ключи и значения по умолчанию, наследование цветов и переменные окружения описаны на сайте.