vim - 在 vim ide 中禁用 vim-plug 中的 gofmt

标签 vim go gofmt

如何在 vim 的 vim-plug ide 中禁用 gofmt?

您好, 我使用 vim-plug 作为基于 vim 的 golang IDE。 我有一个非常具体的查询。我不希望 gofmt 对我的代码进行任何不必要的格式化。我在 github 上提出了 vim-plug 的问题,但有人建议我问题出在 vim-go 上。

我在我的 .vimrc 中有我自己的 set tabstop=4。 我将 header 部分添加到 .go 源代码中,以帮助读者了解源文件的确切含义。此外,在代码的许多地方,我在代码中添加了不止 1 行以实现更清晰的隔离。早些时候,gofmt 在保存文件时修改了所有内容。

通过在我的 .vimrc 中包含以下两行

let g:go_fmt_fail_silently = 1
let g:go_fmt_autosave = 0
I've gotten rid of unnecessary errors and formatting by gofmt to my .go 

分别是源文件。

但是,我无法禁止 gofmt 添加 8 个空格的制表符。因为我有自己的 4 个空格的制表符,所以我不想使用 gofmt 添加的那些 8 个字符的制表符。

所以,我想完全禁用 gofmt。有人可以帮我禁用 gofmt 吗?

版本信息: 我在 CentOS 7.2 上使用 vim-7.4

问候, - 相同的橡木。

最佳答案

您可以不禁用 gofmt,而是让它按您期望的方式工作。 This answer about tabs/spaces会有用的。

您需要设置 shiftwidth=4 以便制表符缩进看起来与制表符大小相同。没有 8 个空格制表符与 4 个空格制表符(制表符没有宽度,vim 使用这些设置将制表符显示为 4 个字符。

你真的应该重新考虑对抗 gofmt,它会让任何有 Go 经验的人更容易阅读代码。

关于vim - 在 vim ide 中禁用 vim-plug 中的 gofmt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38010819/

相关文章:

windows - 如何正确设置 Vim 的 makeprg (Windows)

google-app-engine - 在代理后面使用 Go App Engine 的问题

go - 防止 Go Public 文件夹中的目录列表

python - 我如何使用 pony.vim

vim - 忽略 ctrlp.vim 中的自定义目录

vim - 从管道命令的输出中使用 vim 打开文件

go - 在 golang 中将数据渲染到模板中

Go fmt 为数学表达式生成格式不一致的结果

Go 等效于 C 的否定扫描集

go generate with gofmt,替换变量值