
我在 ubuntu 上安裝了 vim-gnome。我注意到我放入 $HOME/.vimrc 檔案中的內容(例如顏色方案等)被其他內容覆蓋。如果我啟動 Vim,則會使用另一個顏色方案,但如果我隨後執行“:source ~/.vimrc”,我想要正確載入的設定。
這是我的 .vimrc:
set t_Co=256
set paste
set number
syntax on
colorscheme zenburn
當我執行 :scriptnames 時,我看到在我看來很多東西在啟動時運行(也需要幾秒鐘...):
1: /usr/share/vim/vimrc
2: /usr/share/vim/vim72/debian.vim
3: /usr/share/vim/vim72/syntax/syntax.vim
4: /usr/share/vim/vim72/syntax/synload.vim
5: /usr/share/vim/vim72/syntax/syncolor.vim
6: /usr/share/vim/vim72/filetype.vim
7: /etc/vim/vimrc.local
8: /home/tom/.vim/colors/zenburn.vim
9: /home/tom/.vimrc
10: /usr/share/vim/vim72/syntax/nosyntax.vim
11: /home/tom/.vim/plugin/CSApprox.vim
12: /home/tom/.vim/plugin/Light.vim
13: /home/tom/.vim/plugin/codeburn.vim
14: /home/tom/.vim/colors/Light.vim
15: /home/tom/.vim/autoload/csapprox.vim
16: /home/tom/.vim/plugin/coffee.vim
17: /home/tom/.vim/plugin/color_sample_pack.vim
18: /home/tom/.vim/plugin/ir_black.vim
19: /home/tom/.vim/colors/coffee.vim
20: /usr/share/vim/vim72/plugin/getscriptPlugin.vim
21: /usr/share/vim/vim72/plugin/gzip.vim
22: /usr/share/vim/vim72/plugin/matchparen.vim
23: /usr/share/vim/vim72/plugin/netrwPlugin.vim
24: /usr/share/vim/vim72/plugin/rrhelper.vim
25: /usr/share/vim/vim72/plugin/spellfile.vim
26: /usr/share/vim/vim72/plugin/tarPlugin.vim
27: /usr/share/vim/vim72/plugin/tohtml.vim
28: /usr/share/vim/vim72/plugin/vimballPlugin.vim
29: /usr/share/vim/vim72/plugin/zipPlugin.vim
我猜其中一些會覆蓋從 .vimrc 加載的內容。 (CSApprox 是我在 .vim/plugins 中的一個,但大多數其他我還沒有「選擇」在啟動時運行。
我怎麼能改變這個,以便 .vimrc 中的內容推翻其他內容? (或者,我怎麼能阻止這麼多東西在啟動時運行?)
答案1
看起來這部分輸出scriptnames
是相關的:
12: /home/tom/.vim/plugin/Light.vim
13: /home/tom/.vim/plugin/codeburn.vim
14: /home/tom/.vim/colors/Light.vim
15: /home/tom/.vim/autoload/csapprox.vim
16: /home/tom/.vim/plugin/coffee.vim
17: /home/tom/.vim/plugin/color_sample_pack.vim
18: /home/tom/.vim/plugin/ir_black.vim
19: /home/tom/.vim/colors/coffee.vim
看起來你的插件目錄中有一些顏色方案(Light.vim,codeburn.vim,...)。嘗試將它們移至臨時位置,看看是否有幫助。
答案2
標準 VIM 檔案中唯一設定 t_Co 的位置是 /usr/share/vim/vim72/debian.vim 並且在我的 .vimrc 中設定 t_Co 效果很好。
我注意到你的 ~/.vim 資料夾中列出了許多文件,這些文件在 .vimrc 之後運行 - 我懷疑其中一個文件中設置了 t_Co 。
$ grep -r 'set t_Co' .vim/*
應該告訴您哪個文件覆蓋了您的設定。