Всем привет! На связи Дима Котиков, ведущий Android-разработчик в Т-Банке. Я все еще люблю разбираться в технологиях, разрабатывать под Android и KMP и пить латте на фундучном молоке :)

Расскажу, как можно шарить File Templates для своей команды, чтобы облегчить жизнь другим и сэкономить немного времени. Причем коллегам ничего самостоятельно не придется настраивать: подтянутый из git-а репозиторий с кодом все сделает сам. Эта статья — бонус к трем предыдущим, в которых я рассказывал, как уменьшить написание boilerplate-кода. Ссылки на них оставлю в конце статьи.

Экспорт File Templates

Без долгих предисловий — начинаем! Сначала экспортируем File Templates из Intellij IDEA/Android Studio:

1. Идем по пути File → Manage IDE Settings → Export Settings.

Экспортирование настроек
Экспортирование настроек

2. В диалоговом окне выбираем пункты с шаблонами, путь сохранения и нажимаем OK.

Диалоговое окно экспорта настроек
Диалоговое окно экспорта настроек

3. Распаковываем экспортированный архив, вернемся к содержимому немного позже.

В каждом проекте, создаваемом в IDE от Intellij, создается скрытая папка .idea, в которой хранятся настройки, специфичные для конкретного проекта.

Как правило, папка .idea по умолчанию добавлена в список .gitignore и файлы из нее не попадают в git-систему при push-ах коммитов. В .idea хранится информация о запусках и конфигурациях проекта, настройки codestyle, настройки плагинов, иконка для проекта и так далее.

Увидеть папку можно, переключившись на режим отображения Project. На некоторых версия Intellij папка .idea может быть не видна — тогда переключитесь в режим Project Non-Source Files.

 Меню выбора режима отображения
 Меню выбора режима отображения
Содержимое папки .idea
Содержимое папки .idea

Настройка шаринга шаблонов

С помощью размещения файлов в папке .idea будем настраивать шаринг наших шаблонов кода для других членов команды. Для этого понадобится:

1. Зайти в папку, в которую мы распаковывали архив с шаблонами.

Содержимое архива экспортированных File Templates
Содержимое архива экспортированных File Templates

2. Скопировать папку fileTemplates из папки с распакованным архивом в папку .idea нашего проекта.

Скопированная папка fileTemplates
Скопированная папка fileTemplates

3. Вернуться к папке с распакованным архивом с шаблонами, зайти в папку options, скопировать из нее файл file.template.settings.xml и вставить его в корень папки .idea (не в .idea/fileTemplates, а именно в .idea).

Скопированный файл file.template.settings.xml
Скопированный файл file.template.settings.xml

4. Добавить содержимое папки .idea/fileTemplates и файл .idea/file.template.settings.xml в git: выделить папку и файл → нажать правую кнопку мыши → в появившемся меню выбрать Git → Add.

Добавление шаблонов в Git
Добавление шаблонов в Git

4. Сделать commit и push в удаленный Git-репозиторий.

Теперь мы и коллеги смогут подгрузить шаблоны из удаленного репозитория и использовать их. Если шаблоны по умолчанию не видны из контекстного меню (правая кнопка мыши в дереве файлов → New), то необходимо зайти в меню Settings → Editor → File and Code Templates и в пункте Scheme выбрать Project.

Переключение File Templates с Default на Project
Переключение File Templates с Default на Project

Шаблоны появятся в контекстном меню и будут доступны к выбору:

Шаблон Compose feature появился в контекстном меню
Шаблон Compose feature появился в контекстном меню

Заключение

Вот таким незатейливым способом можно делиться шаблонами с членами команды, без передачи zip-архива с шаблонами и манипуляций с импортированием его в IDE.

Плюсы:

  • Повышение автоматизации рутины в команде.

  • Отсутствует необходимость в ручном импортировании шаблонов в IDE.

  • Нет риска утери написанных шаблонов при обновлениях IDE (шаблоны храним в Git).

  • Нет необходимости ручного экспорта или импорта шаблонов при обновлениях IDE.

Минусы:

  • Потраченная минута времени ?

А еще через папку .idea можно:

  • Шарить настройки codeStyle: папка .idea/codeStyles, в ней файлы codeStyleConfig.xml и Project.xml

  • Добавлять иконку к своему проекту: файл .idea/icon.svg — будет отображаться в меню выбора проекта в IDE.

  • Шарить настройки к каким-либо специфичным плагинам.

Всем хорошего кодинга и поменьше рутины!

Ссылки на серию статей по File Templates:

Часть 1. Уменьшаем написание boilerplate с помощью File Templates

Часть 2. Примеры использования File Templates для типовых сценариев, где требуется шаблонный код

Часть 3. Экспорт и импорт File Templates в IDE от Intellij

Комментарии (0)