« Auto-complétion avec Vim » : différence entre les versions
Aller à la navigation
Aller à la recherche
(Page créée avec « 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 p... ») |
m (Typo) |
||
(9 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
[[Category:Développement]] | |||
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. | 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. | ||
Ligne 5 : | Ligne 6 : | ||
Les paquets nécessaires sont : vim, ctags | Les paquets nécessaires sont : vim, ctags | ||
=Configuration de Vim= | =Auto-complétion Cpp/Qt4= | ||
==Configuration de Vim== | |||
Votre fichier de configuration doit comporter les commandes suivantes : | Votre fichier de configuration doit comporter les commandes suivantes : | ||
<pre> | <pre> | ||
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 < | map <F12> :!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q .<CR> | ||
" OmniCppComplete | " OmniCppComplete | ||
let OmniCpp_NamespaceSearch = 1 | let OmniCpp_NamespaceSearch = 1 | ||
Ligne 25 : | Ligne 28 : | ||
set completeopt=menuone,menu,longest | set completeopt=menuone,menu,longest | ||
</pre> | </pre> | ||
Avec cette configuration, F12 crééra un fichier <code>tags</code> dans le repertoire courant, pour les sources du repertoire courant. De cette manière, vos projets pourront être auto-complété. | |||
=Omnicppcomplete= | ==Omnicppcomplete== | ||
Il faut d'abord récupérer [http://www.vim.org/scripts/script.php?script_id=1520 Omnicppcomplete]. | Il faut d'abord récupérer [http://www.vim.org/scripts/script.php?script_id=1520 Omnicppcomplete]. | ||
Pour son installation : | Pour son installation : | ||
* Le dézipper dans son dossier ~/.vim | * Le dézipper dans son dossier ~/.vim | ||
=Tags C++= | ==Tags C++== | ||
Il faut ensuite télécharger les [http://www.vim.org/scripts/script.php?script_id=2358 stdc++ tags]. | Il faut ensuite télécharger les [http://www.vim.org/scripts/script.php?script_id=2358 stdc++ tags]. | ||
* D'abord créer un dossier ~/.vim/tags si inexistant | * D'abord créer un dossier ~/.vim/tags si inexistant | ||
Ligne 44 : | Ligne 48 : | ||
</pre> | </pre> | ||
=Tags Qt4= | ==Tags Qt4== | ||
Plus rien de très compliqué : | Plus rien de très compliqué : | ||
* Générer les ctags : | * Générer les ctags : |
Dernière version du 10 février 2011 à 16:19
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
Auto-complétion Cpp/Qt4
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