Précédent   Forum des professionnels en informatique > PHP > Outils > EDI
EDI Forum d'entraide EDI pour les développeurs PHP. Avant de poster -> Cours EDI
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/05/2011, 16h00   #1
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 71
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 71
Points : 39
Points : 39
Par défaut Vim, ctags et PHP

Bonjour, je me suis décidé à quitter Eclipse pour Vim afin de gagner en RAM et pouvoir coder à l'aise sur mon netbook.
Jusqu'ici tout se passe bien mais j'ai quelques problèmes avec la complétion et en particulier omni-complete.

Le premier c'est que l'auto-completion (sans aucun fichier tags) me propose trop de choses. Elle me propose à la fois la totalité des functions disponibles en PHP + les variables et fonctions présentent dans mon fichier.
Y a-t-il un moyen de séparer ces deux modes et donc d'avoir une commande (raccourci) pour les fonctions PHP et un(e) autre pour les variables/fonctions locales ?

Ensuite si je rajoutes mes fichiers ctags, là encore j'en ai beaucoup trop car je retrouve dans la completion même les fonctions de mes fichiers javascript !?

Enfin l'idéal serait de n'avoir dans les propositions que les méthodes/variables de l'objet appelé. Est-ce possible ?

Les lignes pertinentes de mon .vimrc :

Code :
1
2
3
4
5
6
7
8
9
10
11
autocmd FileType php set omnifunc=phpcomplete#CompletePHP 
 
let g:SuperTabDefaultCompletionType = "<c-x><c-o>"
 
" Create tags with '\1' command
function! Phptags()   
    let cmd = '!ctags -f .tags -h ".php" -R --exclude="\.svn" --exclude="./var" --exclude="./temp" --totals=yes --tag-relative=yes'
    exec cmd
    set tags=.tags
endfunction
:let g:proj_run1='call Phptags()'
Après deux jours de Googling je ne trouve toujours pas la solution. Il n'y en a pas ou j'ai raté quelque chose ?

Merci d'avance pour vos suggestions.
faya972 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 15h28   #2
Nouveau Membre du Club
 
Homme Fabien
Développeur Web
Inscription : juin 2011
Messages : 15
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2011
Messages : 15
Points : 29
Points : 29
Ajoute cette ligne dans ton fichier .vimrc
Code :
autocmd FileType php set omnifunc=phpcomplete#CompletePHP
Ensuite, quand tu ouvres un fichier PHP et que tu fais : Ctrl + x Ctrl + o, tu devrais avoir la liste des fonctions PHP.

Puis pour avoir la liste des mots présents dans ton fichier, tu fais : Ctrl + n

Si Ctrl + x Ctrl + o est un peu trop long pour toi, tu peux faire un map :
Code :
imap <C-Space> <C-x><C-o> // Affichera la liste quand tu feras Ctrl + Espace
Vagaweb est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 29/11/2011, 23h04   #3
Membre confirmé
 
Homme
Inscription : février 2005
Messages : 287
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 27
Localisation : France

Informations forums :
Inscription : février 2005
Messages : 287
Points : 271
Points : 271
Bonne idée que de mapper le Ctrl-X Ctrl-O (qui est quand même particulièrement mal placé et donc particulièrement pénible à faire, je ne comprends pas vraiment ce raccourci. Était-ce pour bien nous faire comprendre qu'un développeur qui utilise Vim ne doit pas utiliser l'omni complétion ? ) sur le plus habituel Ctrl+Espace. Merci
PierreAd est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h06.


 
 
 
 
Partenaires

Hébergement Web