Rename project to SSAU Generator and restructure content

- Move projects into content/<project>/{docx,pptx} with shared assets/
- Flatten config paths; output = project name in project folder
- Add pptx --init scaffold; remove docx exe build
- Add feature-complete content/example; ignore content/* except example
- Rewrite README and AGENTS.md
This commit is contained in:
2026-10-11 23:25:22 +04:00
parent 35611e2a91
commit bf7816ab7c
80 changed files with 1166 additions and 3432 deletions

View File

@@ -0,0 +1,51 @@
# Демонстрационный проект генератора PPTX.
# Показывает все типы слайдов и все доступные блоки разметки.
# Все относительные пути считаются от каталога этого файла.
# Общие ресурсы проекта лежат выше, в ../assets, и используются и для docx, и для pptx.
presentation:
# Имя файла = имя проекта = имя папки проекта, в папке проекта.
output: ../example.pptx
author: "Автор примера"
track: "Название трека"
theme:
width: 13.333
height: 7.5
font: "Segoe UI"
backgrounds:
# Задники — общие ресурсы проекта.
title: ../assets/title-bg.jpeg
content: ../assets/content-bg.jpg
final: ../assets/final-bg.jpeg
plantuml:
enabled: true
java: auto
# plantuml.jar лежит в корне репозитория.
jar: ../../../tools/plantuml.jar
format: png
charset: UTF-8
cache: true
cacheDir: .plantuml-cache
timeoutMs: 30000
# Каталог контента — папка этого config.yaml.
content:
dir: .
# Список слайдов: тип задаёт макет, file — Markdown-файл слайда.
slides:
- { type: title, file: slides/00-title.md }
- { type: content, file: slides/01-text.md }
- { type: content, file: slides/02-lists.md }
- { type: content, file: slides/03-table.md }
- { type: content, file: slides/04-image.md }
- { type: content, file: slides/05-puml.md }
- { type: content, file: slides/06-metrics.md }
- { type: content, file: slides/07-flow.md }
- { type: content, file: slides/08-chart.md }
- { type: content, file: slides/09-columns.md }
- { type: content, file: slides/10-notes.md }
- { type: section, file: slides/11-section.md }
- { type: final, file: slides/12-final.md }

View File

@@ -0,0 +1,3 @@
# Генератор презентаций
## Демонстрация возможностей

View File

@@ -0,0 +1,5 @@
# Форматирование текста
Абзацы и inline-разметка: **полужирный**, *курсив*, ==акцент== и `код`.
Строки автоматически переносятся и подгоняются под ширину слайда.

View File

@@ -0,0 +1,6 @@
# Списки
- пункт первого уровня;
- второй пункт с вложенными элементами:
- вложенный пункт;
- ещё один вложенный пункт.

View File

@@ -0,0 +1,10 @@
# Таблицы
::: table
| Блок | Директива | Назначение |
|---|---|---|
| Таблица | ::: table | Данные в виде таблицы |
| Метрики | ::: metrics | Карточки с числами |
| Схема | ::: flow | Цепочка блоков |
| Диаграмма | ::: chart | График или диаграмма |
:::

View File

@@ -0,0 +1,5 @@
# Изображения
::: image ../assets/images/diagram.png height=3.6
Подпись под рисунком выводится курсивом.
:::

View File

@@ -0,0 +1,5 @@
# PlantUML
::: image ../assets/images/flow.puml height=4.6
Схема собрана автоматически из исходного файла .puml.
:::

View File

@@ -0,0 +1,8 @@
# Метрики
::: metrics
4 | типа слайдов
8 | типов блоков
12 | директив разметки
100% | возможностей
:::

View File

@@ -0,0 +1,5 @@
# Схема-цепочка
::: flow
Markdown -> Разбор -> Рендеринг -> PPTX
:::

View File

@@ -0,0 +1,9 @@
# Диаграммы
::: chart bar "Пример столбчатой диаграммы"
| Категория | Значение |
|---|---|
| Блок | 8 |
| Типы слайдов | 4 |
| Директивы | 12 |
:::

View File

@@ -0,0 +1,12 @@
# Две колонки
::: image ../assets/images/scheme.png side=left height=3.6
Рисунок в левой колонке.
:::
::: callout "Плашка-вывод" side=right
Внутри плашки работает ==выделение== и списки:
- первый пункт;
- второй пункт.
:::

View File

@@ -0,0 +1,7 @@
# Заметки докладчика
Текст слайда набирается как обычно, а сценарий выступления — в директиве notes.
::: notes
Эти строки видны только в режиме заметок и не попадают на слайд.
:::

View File

@@ -0,0 +1,3 @@
# Раздел
## Разделительный слайд

View File

@@ -0,0 +1,3 @@
# Спасибо за внимание
Демонстрация возможностей генератора завершена.