gpt4 book ai didi

vim-go 在写入磁盘时删除未使用的代码

转载 作者:IT王子 更新时间:2023-10-29 02:30:15 26 4
gpt4 key购买 nike

我已经将几个包导入到 Go 包中的一个文件中(包命令)我正在编写(跟随 golang 教程)使用 Vim 和 Vim-Go 插件。其中有几个包尚未在包中使用。当我保存文件 :w 时,Vim 似乎正在删除未使用的包,这真的很烦人,因为那些未使用的包将被使用。我只是没有为他们添加必要的代码。有没有办法在 Vim-Go 中关闭此功能,或者我是否必须删除整个插件才能摆脱这种烦人的行为?

写之前

package commands
import (
"fmt"
"os"
"time"

rss "github.com/jteeuwen/go-pkg-rss"
"github.com/spf13/cobra"
"github.com/spf13/viper"
)

保存后

import (
"github.com/spf13/cobra"
"github.com/spf13/viper"
)

最佳答案

这是因为您使用 goimports 作为格式化您的 go 代码时使用的工具(我认为 vim-go 默认会这样做 - 并且默认情况下它会在保存时格式化代码)。 goimports 为您删除未使用的导入。这就是它如此出色的原因。总有一天你会爱上它:)

现在,您想要使用的是gofmt 来格式化您的代码,它不涉及导入——它只格式化代码。你可以把它放在你的 .vimrc 中:

let g:go_fmt_command = "gofmt"

如果您在完成上述操作后决定要在文件上手动运行 goimports .. 您可以运行 :GoImports

如果您愿意,您也可以选择另一个选项:您可以通过将其放入 .vimrc 来关闭保存时的格式化:

let g:go_fmt_autosave = 0

然后,您仍然可以在格式化代码时使用 goimports .. 但它不会在保存时自动执行。

关于vim-go 在写入磁盘时删除未使用的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26824234/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com