Как установить код Голанга в формате vscode при сохранении?
Я использую vscode
с Go
расширения для редактирования golang
исходный код. Каждый раз, когда я хочу отформатировать код, я должен нажать Ctrl-Shift-i
на linux
, Shift-Alt-F
на Windows
, или же Ctrl-Shift-p
и введите format
, Можно ли установить формат при сохранении, то есть когда я нажимаю ctrl-s
, он автоматически форматирует код go.fmt
(или что-то похожее)?
4 ответа
Вы должны установить этот плагин: https://github.com/Microsoft/vscode-go. Один из вариантов - установить "автоформат" при сохранении: go.formatOnSave": false
, Он использует инструменты Golang для форматирования.
Для меня ни один из ответов не сработал. Моя версия Go — 1.17.1, версия VSCode — 1.60.1, и я использую Linux Pop!_os.
После некоторого поиска в Интернете нашел это в официальной документации VSCode для Go. https://code.visualstudio.com/docs/languages/go#_formatting
Мой settings.json выглядит так
"[go]": {
"editor.insertSpaces": true,
"editor.formatOnSave": true,
"editor.defaultFormatter": "golang.go"
},
Примечание. Вам необходимо установить необходимые расширения для языка go в коде VS. Проверьте нижнюю левую панель, и вы должны увидеть версию для перехода. Если вы видите восклицательный значок, нажмите на него и установите предлагаемые расширения.
Из моей версии визуального кода я не могу использовать config go.formatOnSave": false.
Затем я могу отключить их в настройках, как показано ниже:
- Построить (отключить с помощью настройки go.buildOnSave)
- Lint (отключите с помощью настройки go.lintOnSave)
- Вет (Отключить с помощью настройки go.vetOnSave)
- Формат (отключите, добавив ниже в ваших настройках):
"[go]": { "editor.formatOnSave": false }
Для меня работали следующие настройки. Я отключил раздражающий рефакторинг импорта.
"[go]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": false
},
}