« Auto-complétion avec Vim » : différence entre les versions
Aller à la navigation
Aller à la recherche
Ligne 10 : | Ligne 10 : | ||
set nocp | set nocp | ||
filetype plugin on | filetype plugin on | ||
" Reconstruire les tags de son projet avec | " Reconstruire les tags de son projet avec F12 | ||
map <F12> :!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q .<CR> | map <F12> :!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q .<CR> | ||
" OmniCppComplete | " OmniCppComplete |
Version du 3 février 2011 à 14:33
Vim est un éditeur de texte puissant. Afin de rendre encore plus complet et pratique, ce tutoriel va expliquer comment configurer la complétion automatique en C++ et plus particulièrement pour Qt4.
Ce tutoriel est basé sur cet article.
Les paquets nécessaires sont : vim, ctags
Configuration de Vim
Votre fichier de configuration doit comporter les commandes suivantes :
set nocp filetype plugin on " Reconstruire les tags de son projet avec F12 map <F12> :!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q .<CR> " OmniCppComplete let OmniCpp_NamespaceSearch = 1 let OmniCpp_GlobalScopeSearch = 1 let OmniCpp_ShowAccess = 1 let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters let OmniCpp_MayCompleteDot = 1 " autocomplete after . let OmniCpp_MayCompleteArrow = 1 " autocomplete after -> let OmniCpp_MayCompleteScope = 1 " autocomplete after :: let OmniCpp_DefaultNamespaces = ["std", "_GLIBCXX_STD"] " gestion plus intelligente du popup au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif set completeopt=menuone,menu,longest
Avec cette configuration, F12 crééra un fichier tags
dans le repertoire courant, pour les sources du repertoire courant. De cette manière, vos projets pourront être auto-complété.
Omnicppcomplete
Il faut d'abord récupérer Omnicppcomplete. Pour son installation :
- Le dézipper dans son dossier ~/.vim
Tags C++
Il faut ensuite télécharger les stdc++ tags.
- D'abord créer un dossier ~/.vim/tags si inexistant
- Extraire le dossier
cpp_src
dans le dossiertags</coed>
- Les créer :
ctags -f ~/.vim/tags/cpp -R --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ cpp_src
- Et enfin rajouter dans la configuration de Vim:
set tags+=~/.vim/tags/cpp
Tags Qt4
Plus rien de très compliqué :
- Générer les ctags :
ctags -f ~/.vim/tags/qt -R --c++-kinds=+p --fields=+iaS --extra=+q /usr/include/Qt/
- Et rajouter dans la configuration de son Vim :
set tags+=~/.vim/tags/qt