E185: 找不到 synload.vim 的配色方案(第 19 行)

E185: 找不到 synload.vim 的配色方案(第 19 行)

.vimrc我已經指定了和的位置.vim

  • .vimrc文件保存於~/.marslo/.vimrc
  • .vim資料夾保存於~/.marslo/.vim

設定rumtimepath、插件(由vundle安裝)和colorscheme都可以成功載入。但是每次儲存檔案時都會出現錯誤:

Error detected while processing /root/.marslo/myprograms/vim74/share/vim/vim74/syntax/synload.vim:
line   19:
E185: Cannot find color scheme 'marslo256'
Press ENTER or type command to continue

我自己創造的colorscheme名字。marslo256.vim有什麼問題嗎my colorscheme或者my vimrc

如果colorscheme設定為desert,那麼就沒有問題。我很確定我的配色有問題。


順便說一句,這個colorscheme (marslo256)我已經使用了很長時間了,這個錯誤還是第一次出現。

Ctrl在命令列中按+後可以顯示我的兩個顏色方案D(我認為這意味著runtimepath設定沒有問題): 配色方案

最終的運行時路徑(差不多):

/root/.vim,/root/.marslo/.vim/bundle/vundle,/root/.marslo/.vim/bundle/indentLine,/root/.marslo/.vim/bundle/ctrlp.vim,/root/.marslo/.vim/bundle/gundo.vim,/root/.marslo/.vim/bundle/tagbar,/root/.marslo/.vim/bundle/authorinfo,/root/.marslo/.vim/bundle/EnhCommentify.vim,/root/.marslo/.vim/bundle/vim-pathogen,/root/.marslo/.vim/bundle/MatchTag,/root/.marslo/.vim/bundle/supertab,/root/.marslo/.vim/bundle/auto-pairs,/root/.marslo/.vim/bundle/snipmate.vim,/root/.marslo/.vim/bundle/mru,/root/.marslo/.vim/bundle/Conque-Shell,/root/.marslo/.vim/bundle/taglist.vim,/root/.marslo/.vim/bundle/winmanager,/root/.marslo/.vim/bundle/accelerated-jk,/root/.marslo/.vim/bundle/MarsloFunc,/root/.marslo/.vim/bundle/groovy.vim--Ruley,/root/.marslo/.vim/bundle/groovy-vim-files,/root/.marslo/.vim/bundle/python_fold,/root/.marslo/.vim/bundle/pyflakes,/root/.marslo/.vim/bundle/python_match.vim,/root/.marslo/.vim/bundle/python-syntax,/root/.marslo/.vim/bundle/vim-python-ftplugin,/root/.marslo/.vim/bundle/vim-rails,/root/.marslo/.vim/bundle/vim-ruby,/root/.marslo/.vim/bundle/vim-textobj-rubyblock,/root/.marslo/.vim/bundle/vim-textobj-user,/root/.marslo/.vim/bundle/ruby-matchit,/root/.marslo/.vim/bundle/vim-javascript,/root/.marslo/.vim/bundle/vim-javascript-syntax,/root/.marslo/.vim/bundle/vim-surround,/root/.marslo/.vim/bundle/vim-repeat,/root/.marslo/.vim/bundle/rainbow,/root/.marslo/.vim/bundle/txt.vim,/root/.marslo/.vim/bundle/vim-css3-syntax,/root/.marslo/.vim/bundle/vim-coloresque,/root/.marslo/.vim/bundle/marslo.vim,/root/.marslo/.vim/bundle/MarsloVimOthers,/root/.marslo/.vim/bundle/vim-markdown,/root/.marslo/.vim,/root/.marslo/myprograms/vim74/share/vim/vimfiles,/root/.marslo/myprograms/vim74/share/vim/vim74,/root/.marslo/myprograms/vim74/share/vim/vimfiles/after/.vim,/root/.marslo/.vim/bundle/vim-markdown/after,/root/.marslo/.vim/bundle/vim-css3-syntax/after,/root/.marslo/.vim/bundle/vim-coloresque/after,/root/.marslo/.vim/bundle/snipmate.vim/after,/root/.marslo/.vim/bundle/indentLine/after,/root/.marslo/.vim/bundle/groovy-vim-files/after,/root/.marslo/.vim/after,/root/.marslo/.vim/bundle/vundle/after,/root/.marslo/.vim/bundle/ctrlp.vim/after,/root/.marslo/.vim/bundle/gundo.vim/after,/root/.marslo/.vim/bundle/tagbar/after,/root/.marslo/.vim/bundle/authorinfo/after,/root/.marslo/.vim/bundle/EnhCommentify.vim/after,/root/.marslo/.vim/bundle/vim-pathogen/after,/root/.marslo/.vim/bundle/MatchTag/after,/root/.marslo/.vim/bundle/supertab/after,/root/.marslo/.vim/bundle/auto-pairs/after,/root/.marslo/.vim/bundle/mru/after,/root/.marslo/.vim/bundle/Conque-Shell/after,/root/.marslo/.vim/bundle/taglist.vim/after,/root/.marslo/.vim/bundle/winmanager/after,/root/.marslo/.vim/bundle/accelerated-jk/after,/root/.marslo/.vim/bundle/MarsloFunc/after,/root/.marslo/.vim/bundle/groovy.vim--Ruley/after,/root/.marslo/.vim/bundle/python_fold/after,/root/.marslo/.vim/bundle/pyflakes/after,/root/.marslo/.vim/bundle/python_match.vim/after,/root/.marslo/.vim/bundle/python-syntax/after,/root/.marslo/.vim/bundle/vim-python-ftplugin/after,/root/.marslo/.vim/bundle/vim-rails/after,/root/.marslo/.vim/bundle/vim-ruby/after,/root/.marslo/.vim/bundle/vim-textobj-rubyblock/after,/root/.marslo/.vim/bundle/vim-textobj-user/after,/root/.marslo/.vim/bundle/ruby-matchit/after,/root/.marslo/.vim/bundle/vim-javascript/after,/root/.marslo/.vim/bundle/vim-javascript-syntax/after,/root/.marslo/.vim/bundle/vim-surround/after,/root/.marslo/.vim/bundle/vim-repeat/after,/root/.marslo/.vim/bundle/rainbow/after,/root/.marslo/.vim/bundle/txt.vim/after,/root/.marslo/.vim/bundle/marslo.vim/after,/root/.marslo/.vim/bundle/MarsloVimOthers/after

答案1

經過調查,我想說,這個錯誤訊息有沒有什麼與我有關的指定地點

真正的原因是,有一個配置為了自動載入 vimrc 更改儲存 vimrc 檔案時。因為我發現此錯誤僅在儲存vimrc檔案時顯示:

autocmd! bufwritepost $HOME/.marslo/.vimrc source % 

而且,我檢查了19號線syntax/synload.vim

17 " Set the default highlighting colors.  Use a color scheme if specified.
18 if exists("colors_name")
19   exe "colors " . colors_name
20 else
21   runtime! syntax/syncolor.vim
22 endif 

也就是說,錯誤顯示:來源vimrc->exe 顏色 marslo256。我還不知道原因。


然而,我發現解決方法為了防止錯誤顯示:FORCE SILENT,配置如下所示:

autocmd! bufwritepost $HOME/.marslo/.vimrc silent! source %

一切都很好。詳情可查在 vim_dev 谷歌組


根本原因

終於,終於,根本原因出現了!

顯示此錯誤的原因是在將指定位置新增至 vim 執行時間路徑之前啟用語法

解決辦法是

  • 移動19號線 ( syntax enable on) 至第 97 行(Vundle 的末尾部分)
  • 20號線 ( filetype plugin indent on) 可以去掉(保留也可以),因為這個設定與96號線

詳細資訊可參見vim_dev 谷歌組

答案2

put in marslo256.vim 
if exists("syntax_on")
      syntax reset
endif
let g:colors_name = "marslo256"

相關內容