Хороший способ управления кодом в презентациях для семинара по программированию

В настоящее время я создаю семинар по программированию (на самом деле речь идет об ООД, но это не должно иметь большого значения).

У меня есть в основном два вида ресурсов:

  • слайды (HTML / show.js)
  • примеры проектов (Java)

Во многих местах код из примеров проектов должен появиться в презентации.

Какой хороший способ достичь этого?

Мои требования

  • простой способ указать фрагмент кода, который будет использоваться в презентации, и место, где он должен отображаться

  • Изменения в коде отражаются в презентации автоматически (запуск инструмента сборки в порядке, ручная обрезка и вставка - нет)

  • неработающие ссылки (например, попытка встроить фрагмент кода, который не существует, или пометка фрагмента, который не используется в презентации, должен создать предупреждение

  • Бонусные баллы за наличие ссылок между кодом и презентацией

1 ответ

Решение

Asciidoctor http://asciidoctor.org/ может решить большинство ваших требований:

  • используйте простой ASCII для написания контента
  • включать фрагменты кода из реальных файлов исходного кода
  • неработающие ссылки создадут предупреждение при построении вывода
  • Создавал презентации в чехол.js и deck.js

На https://github.com/asciidoctor/asciidoctor-gradle-examples вы найдете несколько примеров использования Asciidoctor с Gradle (но другие инструменты сборки также работают).

Вы можете просмотреть пример выходных данных здесь, и вы найдете презентацию, созданную с помощью deck.js и reve.js (ищите подразделы 3.4 и 9.4, помеченные как "Outputs")

Другим источником вдохновения может быть набор колод Дэна Аллана: https://github.com/mojavelinux/decks

Вы также попросили ссылки из кода обратно на презентацию. AFAIK может предоставить вам лучший Asciidoctor - тег, который вы использовали для пометки фрагмента кода в коде (// tag::XXX[]) также будет присутствовать в источнике вашей презентации (include::Class.java[tags=XXX])

Другие вопросы по тегам