Данный проект представляет собой CLI-утилитку для генерации шаблонных файлов.
Утилита позволяет вам удобно генерировать шаблоны с помощью стандартного языка шаблонов GOLANG
В релизах присутствуют необходимые бинарные файлы для Windows, OSX и Linux
Если необходима доработка генератора под свои нужды, то можно отправить PullRequest или форкнуть проект себе и внести необходимые изменения
Для создания первого шаблона необходимо сохранить его с помощью команды
stgg saveTemplate TEMPLATE_NAME TEMPLATE_PATH
Где
- TEMPLATE_NAME является кратким литералом для нашего шаблона, по которому мы будем обращаться к нему. Можно задать любое имя, по которому удобнее будет обращаться
- TEMPLATE_PATH является путем до директории с нашими файлами для шаблона После этого все файлы в текущей директории станут доступны для генерации
**Примечание все файлы по умолчанию будут сохранены в директорию templates в домашнем каталоге. Для переопределения местоположения директорий, а так же других путей следует переопределить файл конфигурации. Об этом можно узнать в пункте "Конфигурация"
Для генерации шаблона стоит использовать команду
stgg generate TEMPLATE_NAME ...
Имеется два способа передать аргументы для генерации
- Локальные переменные переменные таким способом будут передаться непосредственно в аргументах командной строки. После названия шаблона, который хотим сгенерировать, стоит написать через пробел переменные, которые будут использоваться в процессе генерации. Т.е нечетному аргументу после имени шаблона будет соответствовать название переменной, а четному-значение. Пример:
stgg generate TEMPLATE_NAME my_variable1 my_value1 my_variable2 my_value2
- Переменные по пути из конфига в этом в случае в качестве аргумента мы задаем путь до yaml файла, в котором можем указать необходимые переменные и их значения. Для этого нам нужно применить необходимый флаг: --path или -p. __ Пример:__
stgg generate TEMPLATE_NAME C:\myDir\my_variables.yaml --path
Помимо этого, имеется возможность задать глобальные переменные. После первого использования нашей утилитки в домашней директории будут сгенерированы файлы, среди которых есть globalVariables.yaml. В этом файле можно задать переменные, которые не меняются с каждой новой генерацией
Переменные, которые мы указали используются для валидной подстановке в шаблон. Таким образом, если мы передали с помощью команнды генерации переменную my_variable1 то она будет подставляться в сохраненый шаблон (см синтаксис шаблонов)
Для примера, при передачи аргумента my_value1 в шаблонах, которые мы ранее сохранили все фрагменты {{.my_value1}} будут заменены соответствующем значением
- stgg allTemplates показывает список всех доступных шаблонов для генерации, которые мы ранее скопировали в директорию с шаблонами или сохранили с помощью команды stgg saveTemplate
- stgg editGlobalVariables открывает файл для редактирования, который содержит глобальными переменные, которые мы используем в процессе генерации
- stgg editTemplate TEMPLATE_NAME Открывает файл конфигурации. Там содержаться пути до файла с глобальными переменными и до директории с шаблонами. (Более подробнее о конфигурации в пункте "Конфигурация")
- stgg generate .. команда для генерации шаблонов. Более подробно описание в пункте "Генерация шаблона"
- stgg openTemplate TEMPLATE_NAME открывает директорию с указанном шаблоном
- stgg openTemplatesDir открывает директорию, которая хранит список всех наших шаблонов
- stgg removeTemplate TEMPLATE_NAME удаляет шаблон из нашей директории с ранее сохраненными шаблонами
- stgg saveTemplate .. сохранения нового шаблона. Более подробно в пункте Сохранение шаблона
Утилита имеет некоторую гибкость для настройки. Таким образом, при первом использовании утилиты будут сгенерированы файлы в домашней директории:
- stggConfig.yaml Файл, который содержит путь по умолчанию для директории, куда шаблоны будут сохранятся и путь до файла с глобальными переменными- globalVariables.yaml. Пути можно переопределить на более удобные для вас
- globalVariables.yaml файл, в котором будут содержаться наши глобальные переменные
- templates - папка
Пути до файла с глобальными переменными и директории templates можно переопределить см stggConfig.yaml
- Если мы передали в команде stgg generate переменные, которые уже есть в globalVariables.yaml, то эти новые переменные переопределят уже существующие