2011-08-11 43 views
1

在我的vimrc中,我設置了cpoptions + = n。通常這個選項保持啓用狀態,但只要我打開一個XML文件就會被禁用。我已經通過vim文件夾查看了修改cpo的東西,但看不到任何有趣的內容(除了某些選項的保存和恢復,以便可以使用 - = C,但註釋掉這些不會改變任何內容)。VIM cpoptions + = n在一個XML文件中

任何想法是什麼導致了這樣或一些指針,以尋找什麼?

回答

4

打開一個XML文件並運行:verbose set cpoptions?。這將顯示設置的當前值以及該值的文件集。這個設置可能被xml的語法文件覆蓋(這是我的情況)。

編輯:雖然這通常幫助,似乎在這種情況下,已加載的XML文件類型,僅僅保存CPO關,將其更改爲自己的腳本,然後恢復原值許多文件。看起來這不會對你有很大的幫助。

打開一個XML文件並運行:scriptnames,然後通過列出的cpo列出的腳本查看是否可以找到罪魁禍首。

+0

感謝這些命令。沒有直接的運氣,所有符合'cpo'的行我都看到了保存和恢復。有些東西一定是設置cpo&vim而不是恢復它,現在我會進一步瞭解。 – PAG

+0

仍然沒有運氣。目前,我已經使用BufWinEnter來重置它,但它並不理想。 – PAG

+0

(接受,因爲這些一般的想法幫助了我!) – PAG

1

如果使用GVIM,設置它在你的.gvimrc裏,因爲這是最後加載的配置文件。見:help initialization

其他方式,如@Randy莫里斯說,一個插件可以將其設置爲默認值。在我的配置中,Tabularize最後一次在.vim/bundle/after/plugin/TabularMaps.vim中設置它。

編輯:我找到了!

在自動關閉插件,在plugin/autoclose.vim保存cpoption不是在年底所著回來。只需添加

 
" restore cpoptions 
let &cpo = s:global_cpo 

到文件末尾。

如果你不使用自動關閉插件,您可以搜索插件,通過:vimgrep "set cpo&vim" ~/.vim/** 復位cpotions的狀態,然後在列表中,你可以不恢復原來的狀態(通常在結束後的文件搜索文件的腳本以let &cpo =開頭的行缺失)。