VScode 格式保存不适用于 Golang

Win*_*g99 7 go visual-studio-code

我正在使用 vscode 并通过远程 ssh 开发一个 go 项目。但是,保存时的格式不起作用。我发现它可以在没有 git 的正常项目上工作。如果我删除.git,它将按预期工作。有人可以给我一些建议吗?

环境版本如下:

  1. vscode 1.63.2
  2. 去1.17.6
  3. 远程机器 Ubuntu 20.04
  4. 去扩展 v0.30.0

Thi*_*tes 12

我最近遇到了同样的问题,自动格式仅适用于没有 .git 目录的项目。对我来说解决这个问题的方法是将保存模式下的格式从 更改modificationsIfAvailablefile. 由于我modificationsIfAvailable更喜欢file​​所有内容,因此我更改为仅formatOnSaveMode适用于具有file以下内容的 go 源文件:

 "[go]": {
    "editor.formatOnSaveMode": "file"
  }
Run Code Online (Sandbox Code Playgroud)

  • 谢谢你!我将顶级设置为“editor.formatOnSaveMode”:“modificationsIfAvailable”以避免重新格式化整个文件以进行小编辑。看起来 golang 扩展不知道如何处理该模式。 (2认同)

小智 5

尝试通过按Ctrl+ Shift+P打开命令面板并选择“格式化文档”来手动格式化代码。如果您的文件格式正确且没有任何问题,则意味着设置有问题formatOnSave

选择默认格式化程序而不是 null。像这样 :

"editor.defaultFormatter": "esbenp.prettier-vscode"
Run Code Online (Sandbox Code Playgroud)

将其他格式化程序一一卸载,看看是否有什么原因导致冲突。

尝试使其特定于语言。

为了更好地理解,请参阅此链接:https ://github.com/microsoft/vscode/issues/108447

关于 Git 具体内容:

可能是你正在跑步的情况Git Atom。Atom 是桌面应用程序,因此可能会导致访问远程安装路径出现问题。请尝试安装Git Repo.

还要确保Go: Install/Update Tools是最新的。