Решил (частично) свою задачу простым (как мне кажется) и возможно не очень изящным способом.
Все что нужно кастомизировать (имя продукта, названия каталогов установки и т.п.) вставляется в исходный текст через \newcommand.
Соответственно все эти команды описаны в отдельных файлах (назвал их branding.tex) + там же прописаны пути к каталогам со скриншотами для каждой версии продукта.
Итого: есть 2 файла брендинга, каждый содержит одинаковый набор команд (к примеру \productname), но значения разные (для гайда про треугольники эта команда вставляет "красный треугольник", для гайда про квадраты "Синий квадрат").
Сборка pdf происходит из главного файла проекта. Главный файл это "Инструкция по применению.tex", внутри через \input подключаются все необходимые файлы: преамбула, брендинг, и далее само содержание (каждый раздел в своем файле).
Автоматизировать сборку удалось следующим образом:
Создал 2 версии "главного файла": одна для сборки pdf "Красного треугольника", вторая для сборки "Синего квадрата". Отличаются они только подключенными файлами брендинга.
Сделал батник в котором прописал следующее:
1. Запускать pdflatex.exe на сборку главного файла Красный треугольник: Инструкция по применению.tex
2. Складывать готовый pdf в указанную папку.
3. Все файлы, кроме .pdf удалять после сборки
4. Пункты 1-3 повторить для файла Синий квадрат: Инструкция по применению.tex
Получается что 2 версии документа собираются по клику на один батник и pdf раскладываются по разным папкам.
При этом общее количество исходных файлов осталось прежним: при внесении изменений в документацию я буду работать с одной версией исходника (к примеру, системные требования описаны в отдельном файле requirements.tex. Его я и буду править, и он же подключается в 2 разных "главных файлах").
Но теперь этого мало. Требуется еще больше автоматизировать.
Т.е. сделать так, чтобы передавать какой файл брендинга нужно подключать при сборке прямо в параметрах pdflatex.exe и не держать 2 версии "главных файлов".
Может подскажет кто, можно ли как-нибудь определить свой параметр, который бы можно было указать при запуске pdflatex.exe?
Я бы видел нечто такое:
Код:
pdflatex.exe -synctex=1 -interaction=nonstopmode "<путь к исходному файлу>" -некий параметр="<путь к подключаемому файлу брендинга>" -output-directory "<путь к каталогу для выгрузки pdf>"
В описании параметров pdflatex с виду ничего подходящего пока не нашел.
Но верю, в то, что желаемый результат достижим.