我在我的vim會話中有兩個緩衝區,並且在我的vimrc中設置了語法,我使用了minibufexpl來管理bufs。當一個緩衝區退出時vim語法關閉?
我用:q退出當前的buf,但另一個buf會自動設置句法關閉,我必須使用:set syntax = on手動打開語法高亮。有人能給我一個解決方案,在一個buf退出後不會自動設置語法嗎?謝謝!! (我試過:bd退出buf而不是:q,有時它保留語法,但有時沒有)。
我在我的vim會話中有兩個緩衝區,並且在我的vimrc中設置了語法,我使用了minibufexpl來管理bufs。當一個緩衝區退出時vim語法關閉?
我用:q退出當前的buf,但另一個buf會自動設置句法關閉,我必須使用:set syntax = on手動打開語法高亮。有人能給我一個解決方案,在一個buf退出後不會自動設置語法嗎?謝謝!! (我試過:bd退出buf而不是:q,有時它保留語法,但有時沒有)。
您可以在您的vimrc中使用語法啓用或語法。有關更多信息,請使用:h語法。
好吧然後檢查你的語法文件是正確的,它應該looke這樣
AU BufNewFile,BufRead *等的.cpp設置語法= cpp11 < - 這是行我有cpp文件。
希望得到這個幫助。
我已經在我的vimrc中設置了語法。關鍵是當我退出一個文件時,其他文件會自動設置句法。 – 2012-04-27 02:03:08
一個插件行爲不端。
關閉緩衝區(並且丟失語法突出顯示)後,
:verbose set syntax?
這會顯示類似
syntax=cpp
Last set from C:\Program Files\Vim\vim73\syntax\syntax.vim
您可能還能夠看到什麼不順心我做
:debug quit
如果一切都失敗,請嘗試禁用消除錯誤的來源一個接一個的插件(或全部刪除,並逐個啓用)。在某個時候,問題將會出現/消失,並且您已經找到了犯罪派對。
這可能是太遲,但我遇到相同問題,發現添加行
set hidden
到我的.vimrc解決了這個問題。當你輸入「:q」時,這會讓vim隱藏緩衝區而不是關閉緩衝區。當我使用minibufexplorer進行導航時,它似乎還能讓文件之間啓用語法高亮顯示。
希望這會有所幫助。
如果您使用minibufexpl.vim,以下內容添加到您的.vimrc:
let g:miniBufExplForceSyntaxEnable = 1
這似乎在VIM中的錯誤引起的。有關詳情,請參閱release notes for minibufexpl version 6.3.1
請注意,這會爲工作:BD但不:Q
v 6.5.2版本(2013年6月17日發佈) – 2015-03-03 07:41:18
可能是你應該加入這一行gvimrc
:
autocmd BufDelete * syntax on
v 6.5.2(2013年6月17日發佈) – 2015-03-03 07:41:35
': set syntax = on'會強制使用syntax/on來突出顯示當前緩衝區。vim'腳本,它不會啓用語法高亮顯示。 – ZyX 2012-04-27 04:21:25