【问题标题】:Goland automatic formattingGoland 自动格式化
【发布时间】:2021-04-27 21:59:06
【问题描述】:

是否可以调整 Goland 自动格式化、添加和删除导入的方式?它不断删除我的程序需要运行的导入,所以我需要在每次推送后手动重新添加它,这让我发疯了。

另外,是否可以将 Goland 设置为在保存时自动格式化(如go fmt)?

【问题讨论】:

    标签: go goland


    【解决方案1】:

    是否可以调整 Goland 自动格式化、添加和删除导入的方式?

    我怀疑 this (Git | Commit -> Settings -> Optimize imports ) 是您正在寻找的选项(请注意,引用页面上还有很多其他相关设置)。

    请注意,未使用的导入会导致编译错误(例如 imported and not used: "net/http"),因此这可能是您在签入代码之前需要解决的问题。

    另外,是否可以将 Goland 设置为在保存时自动格式化(如在 go fmt 中)?

    您可以在保存时运行go fmt,但this blog post 中涵盖了许多需要考虑的因素(主要考虑因素是GoLand 有自己的格式化程序)。总而言之,当前状态(来自链接)是:

    目前,GoLand 提供了三种与“go fmt”交互的方式:专用操作、提交前工具和文件观察器。

    在工具下 | Go Tools 菜单,你可以找到与代码格式化相关的两个动作:Go Fmt File 和 Go Fmt Project。每个都有一个分配给它的快捷方式:Alt + Shift + Control + F(在 macOS 上是 Alt + Shift + Cmd + F)和 Alt + Shift + Control + P(Alt + Shift + Cmd + P)。这些操作的唯一目的是运行“go fmt”,为其提供文件路径或项目目录的路径,并且它们仅在您手动调用它们时才起作用。

    在提交之前可以运行几个钩子。它们可以通过设置进行配置(macOS 上的首选项)|版本控制 |提交 |在提交之前。在那里你可以找到默认启用的 Go fmt。

    第三种方式是配置文件观察器。在设置(首选项)下,您可以找到工具 |文件观察者。使用预定义的“go fmt”模板很容易添加新的观察者。每当更改 Go 文件时,都会对其执行命令。在这种情况下,关键词是“随时”,因为用户无法完全控制文件被修改的确切时间。我将在下一次会议中更详细地描述这个问题。

    【讨论】:

      猜你喜欢
      • 2021-06-26
      • 2021-05-16
      • 1970-01-01
      • 1970-01-01
      • 2012-11-21
      • 2023-04-02
      • 2015-11-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多