5

vim セッションに 2 つのバッファーがあり、vimrc で構文を設定し、minibufexpl を使用して buf を管理しました。

:qを使用して現在の buf を終了しましたが、他の buf は自動的に構文をオフに設定してしまいます。構文の強調表示を手動で開くには、:set syntax=on を使用する必要があります。1 つの buf が終了した後、構文を自動的にオフに設定しない解決策を誰かに教えてもらえますか? ありがとう!!( :qの代わりに:bdを使用して buf を終了しようとしましたが、構文がオンのままになることもあれば、そうでないこともあります)。

4

5 に答える 5

3

minibufexpl.vim を使用している場合は、以下を .vimrc に追加します。

let g:miniBufExplForceSyntaxEnable = 1

vimのバグが原因のようです。詳細については、minibufexpl バージョン 6.3.1 のリリース ノートを参照してください。

これは:bdでは機能しますが、 :qでは機能しないことに注意してください。

于 2013-04-15T16:21:00.520 に答える
2

これは遅すぎるかもしれませんが、まったく同じ問題が発生していて、行を追加することがわかりました

set hidden

私の .vimrc にこの問題を解決します。これにより、「:q」と入力したときにバッファーを閉じるのではなく、vim がバッファーを非表示にします。また、minibufexplorer でナビゲートするときに、ファイル間で構文の強調表示が有効になっているようです。

お役に立てれば。

于 2013-03-25T03:15:29.620 に答える
1

vimrcでsyntaxenableまたはsyntaxonを使用できます。詳細については、:h構文を使用してください。

次に、構文ファイルが正しいことを確認します。次のようになります。

au BufNewFile、BufRead * .cpp set Syntax =cpp11<-これは私がcppファイル用に持っている行です。

この助けを願っています。

于 2012-04-27T02:00:54.477 に答える
1

この行を に追加する必要があるかもしれませんgvimrc:

autocmd BufDelete * syntax on
于 2015-03-03T07:40:17.750 に答える
0

プラグインの動作がおかしい。

バッファを閉じた後 (および構文の強調表示が失われた後)、次のように調査します。

:verbose set syntax?

これは次のようなものを示します

 syntax=cpp
  Last set from C:\Program Files\Vim\vim73\syntax\syntax.vim

あなたはまた、私のやり方がうまくいかないことを見ることができるかもしれません

:debug quit

他のすべてが失敗した場合は、プラグインを 1 つずつ無効にする (またはすべてを削除して 1 つずつ有効にする) ことにより、エラーの原因を排除してみてください。ある時点で問題が現れたり消えたりし、あなたは有罪の当事者を見つけました。

于 2012-04-27T08:33:14.263 に答える