2013-04-28 11 views
17

vundleを使ってVimのYouCompleteMeをインストールしました。それは動作しますが、現在のファイルに含まれている単語だけを表示します。私はそれを使ってC++プログラムを開発したいのですが、どのようにして/ usr/includeのC++ヘッダファイルから自動補完を表示するように設定できますか?どうもありがとう。Vim YouCompleteMeの設定

+2

セマンティックな完了のためにclangをビルドしてインストールする必要があります。 YCMのreadmeファイルに記載されているインストール手順に従っていましたか? – romainl

+0

はい、私は指示に従いますが、私はローカルのオートコンプリートを得るだけです。 YCMをバンドルバンドルとしてインストールし、YCMディレクトリにあるインストールスクリプトを実行するために、私が逃した設定のいくつかの種類はありますか? – mastergap

+8

'./install.sh --clang-completer'や'。/ install.sh'をやりましたか? – romainl

答えて

0

ここでの提案は最初はうまくいくかもしれませんが、私はそれが適切な方法であるかどうかはわかりません。あなたがプロジェクトを開始するたびにYCMの開発者によると、あなたが開いたファイルのディレクトリに.ycm_extra_conf.pyファイルを探しhttps://valloric.github.io/YouCompleteMe/#ubuntu-linux-x64-super-quick-installation

YCMから新しい.ycm_extra_conf.pyファイル

が必要階層内の任意のディレクトリ(再帰的に)に置くことができます。ファイルが見つかると、Pythonモジュールとしてロードされます(一度だけ!)。 YCMは、現在のファイルをコンパイルするのに必要な情報を提供する必要があるそのモジュールのFlagsForFileメソッドを呼び出します。グローバルな.ycm_extra_conf.pyファイルへのパスを指定することもできます。このファイルはフォールバックとして使用されます。あなたが書き込んでいないファイルから悪質なコードが実行されないようにするには、読み込みが安全であればYCMは.ycm_extra_conf.pyごとに1回質問します。これは無効にすることができ、ファイルをホワイト/ブラックリストすることができます。詳細については、オプションのセクションを参照してください。

バニラ.ycm_extra_conf.pyからコンパイルフラグを変更する必要があるかもしれませんが、開始するすべてのプロジェクトに対して新しいファイルを作成することをお勧めします。

18

~/.vim/bundles/YouCompleteMeに移動し、--clang-completerでインストールスクリプトを実行する必要がありますので、./install.sh --clang-completerを実行してください。終了したら、C言語のような言語のサポートが必要です。

~/.vimrclet g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py'を配置する必要がある場合もあります。

+8

新しいバージョンのycmに変更されました: 'let g:ycm_global_ycm_extra_conf =" .vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py " –

+2

私には完全にうまく定義されていないようですこの設定。この設定をプラグインフォルダの深い隠しファイルに設定する必要があるのはなぜですか?私にとっては、これは間違っていると感じます。 – Arne

6

私は病原体とともにインストールしました。私は上記の指示を./install.sh --clang-completeで試してみました。その後、それはうまくいかず、私は本当にパスを追加する必要がありました。しかし、別の返信とは異なり、

let g:ycm_global_ycm_extra_conf = '.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py' 

です。そのため、パスに余分な「third_party/ycmd」があります。

+0

ありがとうたくさん:) 私の問題を解決しました –

関連する問題