Оформление

Разметка и переносы

Ширина, поля, заголовки, таблицы, интервалы и номера строк документа.

Ширина и поля

Явный --cols задаёт общую ширину терминального вывода.

  • Без него используется определённая ширина терминала, если она не меньше 20 столбцов, затем значение cols из конфигурации, затем 80 столбцов.
  • Поля и номера строк уменьшают доступное место.
  • Их суммарная ширина должна быть меньше общей.

Ширина вывода

mdv --no-config --theme catppuccin --cols 40 --wrap word example.md
Вывод mdvВерсия 6.1.1
Просмотрщик Markdown сохраняет 
читаемость длинного абзаца при изменении
ширины терминала. Каждый параметр 
управляет расположением слов без 
изменения самого документа.
Исходный Markdown
Просмотрщик Markdown сохраняет читаемость длинного абзаца при изменении ширины терминала. Каждый параметр управляет расположением слов без изменения самого документа.

Горизонтальные поля

mdv --no-config --theme catppuccin --cols 64 example.md
Вывод mdvВерсия 6.1.1
Просмотрщик Markdown сохраняет читаемость длинного абзаца при из
менении ширины терминала. Каждый параметр управляет расположение
м слов без изменения самого документа.
Исходный Markdown
Просмотрщик Markdown сохраняет читаемость длинного абзаца при изменении ширины терминала. Каждый параметр управляет расположением слов без изменения самого документа.

Ширина табуляции

mdv --no-config --theme catppuccin --cols 64 --tab-length 2 example.md
Вывод mdvВерсия 6.1.1
  name  status
  mdv  ready
Исходный Markdown
```text
name	status
mdv	ready
```

В --margin можно указать одну или обе стороны; пропущенная сторона равна нулю. --tab-length задаёт число пробелов вместо табуляции, по умолчанию четыре. Поля терминала не применяются при экспорте HTML.

Перенос строк и переформатирование абзацев

Значение --wrap Поведение
char Перенос по границам графем Unicode, используется по умолчанию.
word Перенос по словам; слишком длинные слова разбиваются по графемам.
none Без мягких переносов. Ограниченные по ширине ячейки таблиц всё ещё могут разбиваться.

--reflow объединяет мягкие переносы исходника внутри абзаца перед переносом по текущей ширине. Жёсткие переносы Markdown сохраняются. Для этой функции перенос строк должен быть включён.

Перенос строк

mdv --no-config --theme catppuccin --cols 40 --wrap char example.md
Вывод mdvВерсия 6.1.1
Просмотрщик Markdown сохраняет читаемост
ь длинного абзаца при изменении ширины т
ерминала. Каждый параметр управляет расп
оложением слов без изменения самого доку
мента.
Исходный Markdown
Просмотрщик Markdown сохраняет читаемость длинного абзаца при изменении ширины терминала. Каждый параметр управляет расположением слов без изменения самого документа.

Переформатирование абзаца

mdv --no-config --theme catppuccin --cols 64 --wrap word example.md
Вывод mdvВерсия 6.1.1
Этот абзац перенесён
в исходном файле.
Просмотрщик может объединить
его мягкие переводы строк.
Исходный Markdown
Этот абзац перенесён
в исходном файле.
Просмотрщик может объединить
его мягкие переводы строк.

Заголовки

Значение --heading-layout Поведение
level Отступ заголовка зависит от уровня, содержимое сдвигается ещё на столбец. Режим по умолчанию.
center Заголовки по центру, содержимое без отступа.
flat Заголовки слева, содержимое с отступом в один столбец.
none Заголовки и содержимое слева, без отступа.

--show-heading-markers добавляет маркеры # по уровню заголовка. В режиме level параметр --smart-indent сглаживает скачки, например переход от H1 сразу к H4.

Разметка заголовков

mdv --no-config --theme catppuccin --cols 64 --heading-layout level example.md
Вывод mdvВерсия 6.1.1
Руководство
 
 Введение.

 Установка
  
  Установите программу.

  Использование
   
   Откройте документ.
Исходный Markdown
# Руководство

Введение.

## Установка

Установите программу.

### Использование

Откройте документ.

Маркеры заголовков

mdv --no-config --theme catppuccin --cols 64 example.md
Вывод mdvВерсия 6.1.1
Руководство
 
 Введение.

 Установка
  
  Установите программу.

  Использование
   
   Откройте документ.
Исходный Markdown
# Руководство

Введение.

## Установка

Установите программу.

### Использование

Откройте документ.

Скачки уровней заголовков

mdv --no-config --theme catppuccin --cols 64 example.md
Вывод mdvВерсия 6.1.1
Руководство
 
 Введение.

   Подробности
    
    Пропущен уровень заголовка.
Исходный Markdown
# Руководство

Введение.

#### Подробности

Пропущен уровень заголовка.

Таблицы

Значение --table-wrap Поведение
fit Уместить ячейки в доступную ширину, используется по умолчанию.
wrap Разбить широкую таблицу на последовательные блоки столбцов.
none Разрешить горизонтальное переполнение без ограничения ширины ячеек.

Геометрия таблицы не зависит от --wrap, который выбирает места разрыва в ячейках. В ограниченных режимах fit и wrap ячейка при необходимости разбивается по графемам даже с отключённым переносом текста. --table-borders включает полную скруглённую сетку. --table-smart-indent уменьшает отступ при нехватке ширины.

Широкие таблицы

mdv --no-config --theme catppuccin --cols 40 --table-wrap fit example.md
Вывод mdvВерсия 6.1.1
 Name    │ Description         │ Status 
─────────┼─────────────────────┼────────
 reader  │ Comfortable long-fo │ ready  
         │ rm reading with wor │        
         │ d wrapping          │        
 compact │ Dense output for a  │ ready  
         │ narrow terminal wor │        
         │ kspace              │
Исходный Markdown
| Name | Description | Status |
| --- | --- | --- |
| reader | Comfortable long-form reading with word wrapping | ready |
| compact | Dense output for a narrow terminal workspace | ready |

Рамки таблиц

mdv --no-config --theme catppuccin --cols 64 example.md
Вывод mdvВерсия 6.1.1
 Name    │ Wrap 
─────────┼──────
 reader  │ word 
 compact │ char
Исходный Markdown
| Name | Wrap |
| --- | --- |
| reader | word |
| compact | char |

Отступ таблицы

mdv --no-config --theme catppuccin --cols 40 example.md
Вывод mdvВерсия 6.1.1
     Settings
      
 Name    │ Description         │ Status 
─────────┼─────────────────────┼────────
 reader  │ Comfortable long-fo │ ready  
         │ rm reading with wor │        
         │ d wrapping          │        
 compact │ Dense output for a  │ ready  
         │ narrow terminal wor │        
         │ kspace              │
Исходный Markdown
###### Settings

| Name | Description | Status |
| --- | --- | --- |
| reader | Comfortable long-form reading with word wrapping | ready |
| compact | Dense output for a narrow terminal workspace | ready |

Пустые строки между блоками

--block-spacing принимает записи element:top=N,bottom=N, разделённые ;. Пропущенные стороны сохраняют текущие значения. Соседние промежутки схлопываются до большего значения, а не складываются.

Доступные элементы: paragraph, h1 по h6, code-block, display-math, table, horizontal-rule, unordered-list, ordered-list, task-list, blockquote, callout, definition-list, inline-references, end-references, attached-footnotes, endnotes.

Интервалы между блоками

mdv --no-config --theme catppuccin --cols 64 example.md
Вывод mdvВерсия 6.1.1
 Первый раздел
  
  Первый абзац.
  
  Второй абзац.

 Следующий раздел
  
  Продолжайте чтение.
Исходный Markdown
## Первый раздел

Первый абзац.

Второй абзац.

## Следующий раздел

Продолжайте чтение.

В YAML используется mapping, например paragraph: {top: 0, bottom: 1} внутри block_spacing.

Разделители и скрытое содержимое

--horizontal-rule-style pretty добавляет декоративные окончания, а simple рисует сплошную линию. Параметр также управляет HTML <hr>, когда включено отображение встроенного HTML.

--hide-comments скрывает Markdown-комментарии. --show-empty-elements сохраняет обычно скрываемые пустые заголовки, списки, цитаты, блоки кода и таблицы. У front matter есть отдельные режимы отображения.

Горизонтальные линии

mdv --no-config --theme catppuccin --cols 64 --horizontal-rule-style pretty example.md
Вывод mdvВерсия 6.1.1
До разделителя.

◈──────────────────────────────────────────────────────────────◈

После разделителя.
Исходный Markdown
До разделителя.

---

После разделителя.

Видимость комментариев

mdv --no-config --theme catppuccin --cols 64 example.md
Вывод mdvВерсия 6.1.1
Видимый текст.

<!-- Внутренний комментарий. -->
Другой текст.
Исходный Markdown
Видимый текст.

<!-- Внутренний комментарий. -->

Другой текст.

Пустые блоки

mdv --no-config --theme catppuccin --cols 64 --code-block-style 'pretty:show-name' example.md
Вывод mdvВерсия 6.1.1
Перед пустым блоком кода.

После блока.
Исходный Markdown
Перед пустым блоком кода.

```rust
```

После блока.

Нумерация строк документа

--line-numbers без значения нумерует строки отображённого текста. source использует физические строки Markdown, separator добавляет разделитель, source;separator сочетает оба режима. Составные значения заключаются в кавычки. Имя файла после флага без режима остаётся позиционным аргументом.

Номера строк документа

mdv --no-config --theme catppuccin --cols 64 example.md
Вывод mdvВерсия 6.1.1
 Пример
  
  Длинный абзац переносится на несколько строк вывода при выбран
  ной ширине терминала.
  
  Последний абзац.
Исходный Markdown
## Пример

Длинный абзац переносится на несколько строк вывода при выбранной ширине терминала.

Последний абзац.

Нумерация внутри блоков кода настраивается отдельно.