2016-04-30 44 views
1

我的一个文件,每当我打开它,有一个不同的(不正确的)'tabstop'选项的值。在我的.vimrc中,我有以下行:我的一个文件有一个不正确的tabstop设置

set tabstop=4 softtabstop=4 shiftwidth=4 noexpandtab 

并且'tab'在后面的行中没有提及。当我打开正在处理的特定文件时,“tabstop”选项设置为8,而所有其他相关选项均正确;和所有其他文件(到目前为止)正确显示其缩进。我不使用模式线或智能标签(还)。如果我在文件中输入我的vimrc,它会更正缩进,所以我假设它与vimrc没有任何直接关系。 发生了什么?

回答

3

基本上有两种方法可以取代您的.vimrc:插件(包括特定于文件类型的)可能会重置该选项,或者它可能会被自动命令更改。在任何情况下,你的第一步是勾选的最后修订时(见:set-verbose):

:verbose set tabstop? 

如果这还不够,期待通过,因为它是Vim读取所有脚本和配置文件的列表开始:

:scriptnames 

(更好地做到这一点对于Vim新启动的副本加载有问题的文件,这种方式之后,就会有更少的输出从:scriptnames

这些步骤之后,你应该有一个可能的脚本列表匪徒。有没有简单的方法来缩小它:你必须grep,暂时删除你的~/.vim等插件。

最后,您会找到一行更改设置。如果它在插件中,请查看其文档以找到覆盖设置的方法。如果它位于缩进文件或ftplugin的某处,请将文件放入~/.vim/after/indent/~/.vim/after/ftplugin以覆盖其效果。自动命令也可能起作用。

+0

谢谢,是的,一些python的filetype脚本改变了这个选项。我不知道为什么它最初只影响那一个文件,但今天它只发生在几乎所有的事情上。它似乎已经停止了,所以这很好。 –

相关问题