7

私はvimでclangを使うのが好きです。

私が常に抱えている問題の 1 つは、boost を含めるたびに、"." を入れるたびに clang が boost ライブラリを通過することです。オブジェクト名の後。5〜10秒かかります。

ブースト ヘッダーに変更を加えていないため、ブーストを通じて検索をキャッシュする方法はありますか? そうでない場合、オートコンプリート検索からブーストを削除する方法はありますか?

:let g:clang_use_library = 1 後のadaszkoによる回答に応じて更新 (1)

  1. 変数の名前を入力します。
  2. ^N を押します。Vim はブースト ツリーの検索を開始します。変数をオートコンプリートします。
  3. 「。」を押します。次のエラーが表示されます。
Error detected while processing function ClangComplete:
line   35:
Traceback (most recent call last):
Press ENTER or type command to continue
Error detected while processing function ClangComplete:
line   35:
  File "<string>", line 1, in <module>
Press ENTER or type command to continue
Error detected while processing function ClangComplete:
line   35:
NameError: name 'vim' is not defined
Press ENTER or type command to continue
Error detected while processing function ClangComplete:
line   40:
E121: Undefined variable: l:res
Press ENTER or type command to continue
Error detected while processing function ClangComplete:
line   40:
E15: Invalid expression: l:res
Press ENTER or type command to continue
Error detected while processing function ClangComplete:
line   58:
E121: Undefined variable: l:res
Press ENTER or type command to continue
Error detected while processing function ClangComplete:
line   58:
E15: Invalid expression: l:res
Press ENTER or type command to continue

...そして自動強制はありません

更新 (2) clang_complete がブーストの問題を処理する必要があるかどうかはわかりません。プラグインなしの vim は、boost を検索します。スーパーユーザーには、ブーストディレクトリを介して検索をコメントアウトするための回答がありますset include=^\\s*#\\s*include\ \\(<boost/\\)\\@!

4

3 に答える 3

0

ここから、以下を に追加できます.vimrc

:set include=^\\s*#\\s*include\ \\(<boost/\\)\\@!

(ただし、boost による検索のキャッシュの問題はまだ未解決です)

于 2012-05-11T18:43:43.570 に答える
0

私は clang_complete に対して多くのパフォーマンス強化を行いました。これについては issue #187で確認できます。問題の大部分は、最適化されていないコードによるスクリプトのパフォーマンスの低さにありました。

于 2012-08-30T21:37:25.147 に答える