Совместимость с Marp
Презентация, написанная для Marp, — это презентация go-slides. Приведённые ниже правила — правила Marpit и Marp Core; там, где go-slides отличается, это сказано на этой странице.
Слайды
Горизонтальная черта — --- на отдельной строке, как разделяет Marpit, —
начинает новый слайд, как и заголовок того уровня, который называет директива
headingDivider. Front matter между первыми двумя --- содержит глобальные
директивы и данные презентации.
Директивы
| Вид | Где | Действует на |
|---|---|---|
| глобальная | front matter или <!-- theme: gaia --> в любом месте | всю презентацию: theme, style, headingDivider, lang… |
| локальная | <!-- paginate: true --> | этот слайд и следующие за ним |
| точечная | <!-- _class: lead --> (подчёркивание) | только этот слайд |
Локальные директивы — директивы Marpit: paginate, header, footer, class,
backgroundColor, backgroundImage, backgroundPosition,
backgroundRepeat, backgroundSize, color. Директивы разбираются как
«свободный» YAML, как это делает Marp Core; --strict-yaml разбирает их так,
как это делает чистый Marpit.
Изображения
 делает изображение фоном слайда с ключевыми словами Marp:
bg contain, bg cover, bg 50%, bg left/bg right для разделённого
фона, несколько изображений bg рядом и фильтры изображений
(blur, sepia, grayscale…). Размеры встроенных изображений (w:200px,
h:) читаются так же, как их читает Marp.
Вокруг слайда
- Верхний и нижний колонтитулы: директивы
header:иfooter:, в Markdown. - Нумерация:
paginate: true. - Заметки докладчика: HTML-комментарий, не являющийся директивой, — это
заметка.
slides notesих выводит. - Списки с постепенным появлением: список, написанный через
*(или1)), появляется по пунктам, как в Marp. <style scoped>: CSS только для одного слайда.- Сырой HTML: по умолчанию разрешённый список Marp Core;
--htmlразрешает его целиком. - Эмодзи:
:shortcodes:и эмодзи Unicode становятся изображениями Twemoji, как в Marp Core, но встроенными, а не загружаемыми с CDN: см. Эмодзи.
Темы
default, gaia и uncover встроены, выбираются через theme:. Собственная
тема — это файл CSS с комментарием Marp /* @theme name */, передаваемый через
--theme-set или перечисленный в themes: в slides.yaml.
Чем go-slides отличается
- Шаблоны.
{{ }}в теле — это действие шаблона Go (см. Шаблоны). Презентации, которая показывает{{как текст вне блока кода, нужен--no-templateлибо текст, экранированный так, как шаблоны Go экранируют. Блоки кода и фрагменты кода остаются нетронутыми. - Kinds (типы слайдов).
kind:и_kind:— директивы, которых в Marp нет (см. Kinds).slides expandзаменяет их директивами, которые они обозначают, так что развёрнутая презентация — это обычный Marp. - Форматы вывода. HTML, PNG, JPEG, PDF, PPTX и ODP — через библиотеки Go, а
не через headless-браузер (известное ограничение см. в разделе
Командная строка). В v0.4.0, как и в
marp-cli, PPTX содержал картинки; начиная с v0.5.0 его слайды — редактируемые
текстовые блоки и фигуры, а
--pptx-rasterсохраняет картинки. - Заголовки по ширине.
# <!-- fit --> Titleподдерживается: заголовок занимает всю ширину слайда в одну строку — на странице и в каждом экспорте. - Математика и код.
$…$и$$…$$следуют правилам разделителей Marp Core и набираются go-tex/math; блоки кода подсвечивает go-rouge с именами классов highlight.js (см. Математика и код).
Created on by tannevaled
Modified on by tannevaled