j'avoue n'avoir que survolé la doc. mais j'ai un besoin urgent de rajouter de la completion pour des collègues avant de prendre 1 semaine de vacances.
mon pb me parait simple, je cherche a faire en sorte que le premier argument soit complété par create, delete ou manage.
en tcsh :
complete ldapusers p/1/create delete manage/
j'ai essayé de faire la même avec zstyle mais la fonction est plus ... riche que prévue.
un peu d'aide ? d'avance, merci
Marc Chantreux marc.chantreux@ulpmm.u-strasbg.fr writes:
j'avoue n'avoir que survolé la doc. mais j'ai un besoin urgent de rajouter de la completion pour des collègues avant de prendre 1 semaine de vacances.
mon pb me parait simple, je cherche a faire en sorte que le premier argument soit complété par create, delete ou manage.
en tcsh :
complete ldapusers p/1/create delete manage/
j'ai essayé de faire la même avec zstyle mais la fonction est plus ... riche que prévue.
On ne peut pas faire ce genre de chose avec zstyle. Cet outil sert a paramétrer (dans le sens régler) le comportement de la complétion, pas à la définir.
#compdef _command
local commands commands=(create delete manage)
_wanted subcommand expl "Subcommand" compadd $commands
devrait fonctionner, si c'est pas le cas n'hésite pas a poster (fais ca de tete)
salut ,
désolé pour la réponse tardive mais je suis en vacances et privé d'internet depuis 1 semaine (dégroupage total en cours).
#compdef _command local commands commands=(create delete manage)
_wanted subcommand expl "Subcommand" compadd $commands
ok .. merci pour la piste. rien compris a _wanted (pas trop cherché non plus) mais j'ai trouvé _sub_commands qui fait manifiquement le boulot :)
++
Marc Chantreux marc.chantreux@ulpmm.u-strasbg.fr writes:
salut ,
désolé pour la réponse tardive mais je suis en vacances et privé d'internet depuis 1 semaine (dégroupage total en cours).
#compdef _command local commands commands=(create delete manage)
_wanted subcommand expl "Subcommand" compadd $commands
ok .. merci pour la piste. rien compris a _wanted (pas trop cherché non plus) mais j'ai trouvé _sub_commands qui fait manifiquement le boulot :)
ben _wanted c'est la fonction qui defini ce qu'il y a complete
_wanted TAG expl "DESCRIPTION" compadd $liste
le TAG c'est utilise pour les zstyle expl "DESCRIPTION" c'est ce qui sera affiche quand tu fais <tab><tab> (a condition d'avoir quelque chose du genre zstyle ':completion:*:descriptions' format '%B%d%b')
et $liste contient un tableau des complétions possibles
par exemple, j'ai commence la fonction _openssl et le debut donne :
commands=("s_client" "x509" "req" "dsa" "crl" "ocsp") _wanted subcommand expl "Subcommand" compadd $commands
(mais bon, en pratique c'est moins simple que ca pour écrire une fonction complete)