使用与上一行相同的字符将vim设置为autoindent

时间:2017-04-17 22:55:59

标签: vim indentation spaces

我在所有文件中使用制表符进行缩进。但是,一些较大的项目仍然使用空格,所以当我贡献时我也需要遵循这些准则。

如果编辑器检测到编辑文件中使用的缩进字符,则可以轻松解决此问题,并在例如自动缩进。

可悲的是,vim强制缩进空格,即使我正在编辑一个否则只使用制表符的文件。

我如何告诉vim始终只使用文件正在使用的内容(如果文件没有使用任何内容,请使用标签)?

我尝试添加以下行(据我所知,这应该是强制标签 - 不完全是我想要的,但比在任何地方插入空格更好)到~/.vimrc并重新打开我正在编辑的文件,但是这个未能生效。

我正在运行vim-8.0.0386

2 个答案:

答案 0 :(得分:2)

看起来tpope/sleuth插件正是您想要的。

否则,DetectIndent也有效。 在 .vim / bundle / 目录中克隆DetectIndent仓库(我使用病原体安装插件),然后打开任何文件并输入::DetectIndent

现在应该调整shiftwidth,expandtab和tabstop到你的文件。

答案 1 :(得分:1)

这是另一个插件推荐:我的IndentConsistencyCop plugin。它不仅检测使用的缩进设置,还会警告您是否在同一文件中使用了不一致的设置。