Marp: создание презентаций с помощью «Маркдаун»
Marp — программа с графическим интерфейсом, которая позволяет использовать простой язык размётки текста «Маркдаун» для создания презентаций и сохранять их в формате PDF. Общественная лицензия MIT. Сайт: github.com/yhatt/marp/
Разметка текста «Маркдаун» находит всё большее и большее применение. Например, можно ли создать презентацию, используя эту лёгкую разметку для текста? С помощью программы Marp, которую создал японец Юки Хаттори, это можно сделать.
Программа Marp — это одновременно редактор, просмотрщик и конвертер текстовых файлов «Маркдаун», которая позволяет написанные с особыми допущениями тексты «Маркдаун» превращать в презентации в формате PDF.

Практическая необходимость в такой программе есть. Например, в связи со смартфонами и планшетами, на которых вполне приемлемо в плане удобства создать текстовой файл презентации, чтобы потом с помощью Marp быстро.конвертировать в презентацию PDF.
В этом обзоре рассматриваются возможности версия 0.8, в которой, например, нет режима просмотра по клавише F5, как в офисных программах для создания презентаций. Тем не менее в последующих версиях программы это может вполне появиться, как и многие дополнительные возможности.
Интерфейс
Marp — оконное графическое приложение. При запуске откроется в двухоконном виде: окно редактора «Маркдаун» слева и окно просмотра готовой презентации справа.

Окно редактора имеет подсветку синтаксиса «Маркдаун» и обеспечивает самые базовые операции с текстом как вставка, копирование и другое.
Окно просмотра презентации может работать в трёх режимах. Переключаться между режимами можно по кнопкам в правом нижнем углу этого окна. Или через главное меню «View».
По умолчанию в программе открывается режим просмотра отдельного слайда (см. Фиг. 1 выше). Навигация по слайдам в этом окне оригинальная:. Чтобы перейти на нужный слайд, нужно кликнуть манипулятором мышь в окне редактора на текст этого слайда.
Есть режим просмотра преобразованного текста «Маркдаун» в HTML, как в браузере.

И третий режим — просмотр слайдов как в готовом PDF-файле.

Как разбить текст на слайды
Теперь об особенностях форматирования презентаций. Marp разбивает текст «Маркдаун» на слайды с помощью набора символов --- из трёх дефисов, которые в разметке текста «Маркдаун» используются для обозначения горизонтальной линии.
Слайд 1
Содержание слайда…
---
Слайд 2
Содержание слайда…
При этом сама горизонтальная линия в Marp отображаться не будет.
Директивы
Marp даёт возможность применять разные параметры и эффекты к презентации и отдельным слайдам Это делается с помощью специальных директив, которые нужно заключить в комментарии HTML <!-- -->
<!--
Имя директивы 1: значение
Имя директивы 2 : значениеe
…
Имя директивы N : значениеe
-->
Директива page_number
Это директива управляет отображением номеров страниц в презентации. Зачения: true, false.
<!--
page_number: true
-->
Директива $theme
Это директива позволяет выбрать визуальную тему для презентации. На текущий момент в программе две темы: default и gaia.
<!-- $theme: gaia -->
В дальнейшем, наверное, этих тем будет больше.
Директива template
Визуальная тема может имеет разные варианты — тёмная светлая. Для выбора не по умолчанию варианта темы имеется директива template со значением invert.
<!--
$theme: gaia
template: invert
-->
Директивы $width, $height
- Директивы
$width,$heightзадают физический размер слайдов. Значения px(по умолчанию),cm,mm,in,pt,pc.
Директива $size
Директива $size задаёт пропорции и ориентацию слайдов презентации. Параметры: 4:3, 16:9, A0-A8, B0-B8. Суффикс -portrait задаст портретную ориентацию слайдам.
<!-- $size: 16:9 -->
Глобальные и локальные директивы
Директивы $width, $height, $size, $theme являются глобальными и действуют на все слайды презентации. Директивы template, page_number могут действовать локально только, если их вставить в отдельный слайд. Для этого директива должна иметь в начале символ *.
<!-- *page_number: false -->
<!-- *template: invert -->
Приятные мелочи
Можно ещё отметить, что в программе есть преобразование смайликов в виде символов в соответствующие смайлы из юникода.
## Enjoy writing slides! :-):
Код или текст
Нужно отметить, что подход к использованию «Маркдаун» может вызвать вопросы о нарушении главных простых принципов этой размётки текста «не загромождай» и «без обязательной латиницы».
Директивы Marp могут выглядеть как попытка нагромоздить в «Маркдаун» излишние сущности и навязать обязательное использование латиницы». Для мышления программистов характерно воспринимать любой текстовой файл как код условной программы. А размётка «Маркдаун» — всё же таки текст, а не код.
С другой стороны в пределах одной программы эти директивы вполне допустимы. Главное, чтобы в последующих версиях приложения не было погони за большим количеством директив.
Свойства программы
Marp является программой многоплатформенной — для Windows, Linux, Mac OS. Это общественное программное обеспечение, исходные тексты которого распространяются по общественной лицензии MIT. Создана программа с использованием фреймворка для создания мультиплатформенных приложений Electron. Рабочий размер архива программы около 60 мегабайт на диске.