2013-07-16 33 views
17

我想重寫插件中的高亮設置。該插件做到這一點:加載vimrc後,Vim是否加載插件?

highlight! link WordUnderTheCursor Underlined 

首先,我不知道!加入highlight做任何事情。但這是無關緊要的。

中的vimrc

highlight clear WordUnderTheCursor        
highlight WordUnderTheCursor cterm=bold ctermfg=254 ctermbg=160 

做這樣的東西似乎並不影響行爲。

只有當我直接在vimrc中修改Underlined樣式(感覺錯誤)時,纔會應用更改。

是否證明插件正在運行之後 vimrc運行?

我該如何取消鏈接樣式?我無法確定這是否只是插件做了一些富有創造性和不受支持的事情,或者這是正常的Vim行爲。 Here is the vimscript itself

回答

31

是的。 vimrc在插件之前加載。

如果你看:h initialization你會發現第3步是加載vimrc,第4步是加載插件。

通過查看:scriptnames的輸出,您還可以看到在插件之前加載了vimrc。腳本名列出了所有源腳本,並且源代碼是vimrc。 (看看:h :scriptnames)。


要修復突出顯示,只需在插件獲取後運行突出顯示命令即可。爲此,請將文件放在.vim目錄的after目錄中。 (看看:h after-directory

因此,創建文件.vim/after/plugin/hicursorwords.vim具有以下內容

highlight clear WordUnderTheCursor        
highlight WordUnderTheCursor cterm=bold ctermfg=254 ctermbg=160 

這將導致你改變插件的設置之前採購的插件。

(當然,這假設你不想編輯插件)

+1

太棒了,謝謝。我已經有了幾個'after'腳本來覆蓋語法設置,所以這很適合整個方案。 –

+0

請注意,'_gvimrc'(用於圖形用途)是在插件後讀取的。因此,您必須在_vimrc的插件中輸入要作爲標記的命令,而不是_gvimrc。 –

9

除了輸出scriptnames,看看什麼樣的順序VIM運行的東西在啓動時,你可以使用:

vim --startuptime <file>

因此它會記錄它按順序執行的所有任務,以及每個任務需要多少時間。