2016-11-24 5 views
0
let g:ycm_global_ycm_extra_conf='~/.vim/bundle/youcompleteme/.ycm_extra_conf.py' 
let g:ycm_min_num_of_chars_for_completion=1 
let g:ycm_confirm_extra_conf=0 
let g:ycm_autoclose_preview_window_after_completion = 1 
nnoremap <F5>   :YcmForceCompileAndDiagnostics<CR> 
nnoremap <leader>gic :YcmCompleter GoToInclude<CR> 
nnoremap <leader>gdc :YcmCompleter GoToDeclaration<CR> 
nnoremap <leader>gdf :YcmCompleter GoToDefinition<CR> 
nnoremap <leader>gip :YcmCompleter GoToImprecise<CR> 
nnoremap <leader>f  :YcmCompleter FixIt<CR> 

動作しません(vimのプラグインは)これはycmに関連~/.vimrcの一部です。
.ycm_extra_conf.pyflagsは、C-familyのパスを含むecho | gcc -std=c++11 -v -E -x c++ -の結果を含んでいます。YouCompleteMe GoToDefinitionが

  • 問題
    auto-completeが正常に動作している間、GoToDefinitionはまったく動作しません。
    (ここでは何works手段、ycmは、プロジェクト内のローカルヘッダファイルを認識することができます。)
    NOTEによると、GoToDefinitionは、現在translation unitで動作します。
    ただし、GoToDefinitionは私の場合に編集中のファイルでのみ動作します。プロジェクトのトップにコピー.ycm_extra_conf.py.ycm_extra_conf.pyグローバル

    1. を作るためにあきらめ、~/.vimrcg:ycm_global_ycm_extra_confを変更します。私が試した何

    2. .ycm_extra_conf.pyfileYcmForceCompileAndDiagnostics
    3. チェックfinal_flagsFlagsForFileで関数を実行します。
    4. final_flagsはこのようでした。
      ['-Wall', '-Wextra', '-Werror', '-Wc++98-compat', '-Wno-long-long', '-Wno-variadic-macros', '-fexceptions', '-DN DEBUG', '-DUSE_CLANG_COMPLETER', '-std=c++11', '-x', 'c++', '-isystem', '/home/illuxic/Redbase/../BoostParts', ' -isystem', '/System/Library/Frameworks/Python.framework/Headers', '-isystem', '/home/illuxic/Redbase/../llvm/inc lude', '-isystem', '/home/illuxic/Redbase/../llvm/tools/clang/include', '-I', '/home/illuxic/Redbase/.', '-I', ' /home/illuxic/Redbase/./ClangCompleter', '-isystem', '/home/illuxic/Redbase/./tests/gmock/gtest', '-isystem', '/ home/illuxic/Redbase/./tests/gmock/gtest/include', '-isystem', '/home/illuxic/Redbase/./tests/gmock', '-isystem' , '/home/illuxic/Redbase/./tests/gmock/include', '-isystem', '/usr/include/c++/5', '-isystem', '/usr/include/x86 _64-linux-gnu/c++/5', '-isystem', '/usr/include/c++/5/backward', '-isystem', '/usr/lib/gcc/x86_64-linux-gnu/5/in clude', '-isystem', '/usr/local/include', '-isystem', '/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed', '-isystem ', '/usr/include/x86_64-linux-gnu', '-isystem', '/usr/include']
    5. GoToDefinitionまだ私に 'RuntimeError: Can't jump to definition.' を与え

どのように私はGoToDefinition作業を行うことができますか?
間接的にインクルードされたヘッダーファイルだけでなく、直接インクルードされたヘッダーファイルも認識できません。

答えて

0

詳細はhereで確認できます。
私が誤解したことは、@ puremourningによって書かれたコメントにあります。
このコメントを先に読むことをお勧めします。

関連する問題