![][1]
Некоторое время назад я начал делать утилиту, которая упростила бы мне жизнь. Она называется **gomodifytags**. Утилита автоматически заполняет поля структурных тегов (struct tag) с помощью имён полей. Пример:
**Пример использования gomodifytags в vim-go**
![][2]
Эта утилита **облегчает управление** многочисленными полями структуры. Она умеет добавлять и удалять теги, управлять их опциями (например, omitempty), определять правила трансформации (_snake\_case, camelCase_ и пр.) и многое другое. Как эта утилита работает? Какие Go-пакеты она использует? Наверное, у вас есть много вопросов.
В этой очень длинной статье я подробно расскажу о том, как написать и собрать такую утилиту. Здесь вы найдёте много советов и хитростей, а также кода на Go.
Налейте кофе и начинайте читать!
[Читать дальше →][3]
[1]:
https://habrastorage.org/webt/ji/t5/ik/jit5ikq3awfpuvm3-0oztkwp3z8.jpeg
[2]:
https://habrastorage.org/webt/er/f3/vk/erf3vkcbbepu286dcplf_ffagyc.gif
[3]:
https://habrahabr.ru/post/341822/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut