2013-09-22 1 views
1

J'ai essayé pendant des heures pour obtenir le plugin YouCompleteMe pour que vim reconnaisse mes ctags exubérants. Tout le reste dans YouCompleteMe semble fonctionner, comme les fonctions d'auto-complétion des en-têtes et autres. Je veux vraiment qu'il par défaut pour marquer les fichiers. Ci-dessous j'ai énuméré mon .vimrc un fichier balises de test qui est situé à ~/.vim/tags/Rendre le plugin YouCompleteMe de vim reconnaître exuberant-ctags

Ceci est mon fichier testtags

!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ 
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ 
!_TAG_PROGRAM_AUTHOR Darren Hiebert /[email protected]/ 
!_TAG_PROGRAM_NAME Exuberant Ctags // 
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/ 
!_TAG_PROGRAM_VERSION 5.9~svn20110310 // 
myfunc test.h /^void myfunc(int a, int b);$/;" p language:C++ 

Le fichier testtags a été généré avec la commande ctags -R --sort=1 --fields=+l --c++-kinds=+p -f testtags test.h

et mon dossier .vimrc ici

syntax on 
filetype off 

set runtimepath+=~/.vim/bundle/vundle/ 
call vundle#rc() 

Bundle 'gmarik/vundle' 
Bundle 'Valloric/YouCompleteMe' 

let g:ycm_collect_identifiers_from_tags_files = 1 
set tags+=~/.vim/tags/testtags 

filetype plugin indent on 

La sortie de l'entrée du vim La commande :echo tagfiles() est ['/home/jodag/.vim/tags/testtags'] et la commande :set filetype? est filetype=cpp. Cela signifie que YCM trouve les fichiers de balise et reconnaît que je suis en train d'éditer un fichier source C++, mais qu'il ne montrera pas l'achèvement myfunc quand il appuie sur Ctrl + Espace. Toute aide pour comprendre pourquoi cela se passe serait grandement appréciée!

+1

Ceci est une question pour le suivi des problèmes de YCM. – romainl

Répondre

0

J'ai donc trouvé la solution après avoir posté sur le tracker de problème YCM. Apparemment, le fichier de balises n'est lu que lorsque vous n'appuyez pas sur ctrl+space.

Questions connexes