2016-04-30 52 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腳本改變了這個選項。我不知道爲什麼它最初隻影響那一個文件,但今天它只發生在幾乎所有的事情上。它似乎已經停止了,所以這很好。 –

相關問題