UNO-Templater
Шаблонизатор для LibreOffice, который использует Java UNO API для своей работы. Полностью написан на языке Java. Позволяет автоматизировать подготовку документов, оформленных в соответствии с какими-либо стандартами (например, ГОСТ 7.32-2017). Шаблонизатор работает, в первую очередь, с документами в формате ODT, однако возможна поддержка и любых других форматов.
Шаблонизатор может быть составным элементом системы автоматической подготовки программной и научной документации. В первую очередь, он исправляет некоторые недочёты, которые возникают при преобразовании документа из Markdown в ODT при помощи Pandoc (например, формулы и их привязка).
Поддерживаемые возможности
- Подстановка текста документов в шаблон
- Подстановка оглавления
- Разворачивание строковых макросов
- Исправление формул StarMath
- Оформление всех таблиц (за исключением тех, что находятся в секциях, начинающихся на
eq:
иunproc-tbl:
) - Выравнивание формул и изображений по центру
- Установка привязки формул и изображений как символов
- Оформление списков в соответствии с ГОСТ 7.32-2017
Использование
UNO-Templater - консольное приложение на Java. Для его работы требуется Java версии не ниже 18, поскольку в Java предыдущих версий имеются проблемы с кодировкой UTF-8: строки интерпретируются в нативной кодировке ОС, из-за чего возникают проблемы с их передачей в LibreOffice.
Ключи программы UNO-Templater:
usage: templater [-D <KEY=VALUE>] [-e] [-f] [-h] -m <MAINFILE> [-M
<MACRO_FILE>] -o <OUTFILE> [-P] -t <TEMPLATE> [-v] [--version]
-D <KEY=VALUE> Указать макрос
-e,--embed-fonts Встроить шрифты
-f,--force Перезаписать итоговый файл
-h,--help Вывести справку о программе
-m,--main <MAINFILE> Указать файл основного текста
-M,--macros <MACRO_FILE> Указать файл со строковывми макросами
-o,--output <OUTFILE> Указать итоговый файл
-P,--make-pdf Сгенерировать PDF-файл
-t,--template <TEMPLATE> Указать файл шаблона
-v,--verbose Выводить сообщения о процессе обработки
--version Показать версию программы
Подстановка макросов
Макросы обрабатываются в следующем порядке:
- Обрабатывается включение основного текста (макрос
%MAIN_TEXT%
) - Обрабатывается включение других документов (макрос
%INCLUDE(filename)%
, где filename - имя включаемого файла) - Подставляется оглавление на месте макроса
%TOC%
- В самом конце - подставляются счётчики страниц, рисунков, таблиц в тексте (макросы
%N_PAGES%
,%N_FIGURES%
,%N_TABLES%
)
Описание
Шаблонизатор документов на базе LibreOffice UNO API. Может приводить документы в соответствии с ГОСТ, особенно, если шаблон подготовлен в соответствии со стандартом.