Что: 3a417a68fd72f8b882dfc760b7dd6fa3a3940cd4 Когда: 2022-07-01 12:44:49+03:00 ------------------------------------------------------------------------ Темы: go tip vim ------------------------------------------------------------------------ Форматирование Go кода в Vim http://www.git.stargrave.org/?p=dotfiles.git;a=commitdiff;h=68ef15d382d0b6f10c6ad30a7370db57ed8318e9 С самого начала знакомства с Go я использовал их плагин для Vim для вызова :Fmt команды форматирования кода, которую никогда не трогал, ибо работает -- не трожь. Для Си кода я использовал set equalprg опцию, и команду "command! -buffer Fmt normal mtgg=G'tz.", которая ставит метку, переходит в начало файла, вызывает equal программу, возвращается на метку. Ведь то же самое можно было бы применить и к Go коду, ведь goimports и go fmt умеют работать в качестве фильтра текста. Родной Vim плагин умеет заполнять quickfix, что мне не нужно при форматировании. Поэтому вместо тьмы строчек можно бы обойтись двумя. Но в его родном плагине увидел красивый хак с тем, чтобы не портить метки и чтобы не скакал экран при вызове :Fmt: они создают view (winsaveview()) и просто его восстанавливают в конце (winrestview()). Просто, красиво и эффективно. :Fmt команда у меня теперь одинакова и для Си и для Go, только equalprg у них отличается. ------------------------------------------------------------------------ оставить комментарий: mailto:comment@blog.stargrave.org?subject=Re:%20%D0%A4%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20Go%20%D0%BA%D0%BE%D0%B4%D0%B0%20%D0%B2%20Vim%20%283a417a68fd72f8b882dfc760b7dd6fa3a3940cd4%29 ------------------------------------------------------------------------ Сгенерирован: SGBlog 0.34.0