Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

complétion avec bash

3 réponses
Avatar
Thomas
bonjour :-)


j'ai trouvé comment avoir la liste des possibilités quand il y en a
plusieurs pour la complétion
il suffit d'appuyer une 2eme fois sur tab, quand la 1ere fois ça a juste
fait bip pour indiquer un blocage :-)

par contre, il y a qqch qui m'ennuie un peu, c'est que ca considere les
fichiers .* comme les autres
y a t il moyen de parametrer ça en sorte que ça ne prenne pas en compte
les fichiers .* tant qu'on n'a pas tapé "." ?

--
j'agis contre l'assistanat, je travaille dans une SCOP !

3 réponses

Avatar
Rémi Moyen
bonjour :-)


j'ai trouvé comment avoir la liste des possibilités quand il y en a
plusieurs pour la complétion
il suffit d'appuyer une 2eme fois sur tab, quand la 1ere fois ça a juste
fait bip pour indiquer un blocage :-)

par contre, il y a qqch qui m'ennuie un peu, c'est que ca considere les
fichiers .* comme les autres
y a t il moyen de parametrer ça en sorte que ça ne prenne pas en compte
les fichiers .* tant qu'on n'a pas tapé "." ?


Pour autant que je me souvienne, la complétion sous bash est gérée avec
la commande built-in 'complete' (quelque part au fin fond du man de
bash, donc), dont la syntaxe varie entre l'incompréhensible et
l'imbittable...

En se battant avec ça et des expressions régulières aux petits oignons,
ça doit être faisable, mais je serais bien en peine de t'en dire plus.
--
Rémi Moyen

Avatar
Thomas
In article <fd69o3$3146$,
Rémi Moyen <r.moyen+ wrote:

bonjour :-)


j'ai trouvé comment avoir la liste des possibilités quand il y en a
plusieurs pour la complétion
il suffit d'appuyer une 2eme fois sur tab, quand la 1ere fois ça a juste
fait bip pour indiquer un blocage :-)

par contre, il y a qqch qui m'ennuie un peu, c'est que ca considere les
fichiers .* comme les autres
y a t il moyen de parametrer ça en sorte que ça ne prenne pas en compte
les fichiers .* tant qu'on n'a pas tapé "." ?


Pour autant que je me souvienne, la complétion sous bash est gérée avec
la commande built-in 'complete' (quelque part au fin fond du man de
bash, donc), dont la syntaxe varie entre l'incompréhensible et
l'imbittable...

En se battant avec ça et des expressions régulières aux petits oignons,
ça doit être faisable, mais je serais bien en peine de t'en dire plus.



tDeContes:~ thomas$ help complete
complete: complete [-abcdefgjksuv] [-pr] [-o option] [-A action] [-G
globpat] [-W wordlist] [-P prefix] [-S suffix] [-X filterpat] [-F
function] [-C command] [name ...]
For each NAME, specify how arguments are to be completed.
If the -p option is supplied, or if no options are supplied, existing
completion specifications are printed in a way that allows them to be
reused as input. The -r option removes a completion specification
for
each NAME, or, if no NAMEs are supplied, all completion
specifications.


ça nous explique -p et -r, et rien d'autre ...

si qq veut bien m'aider ... :-)

--
j'agis contre l'assistanat, je travaille dans une SCOP !


Avatar
Rémi Moyen

j'ai trouvé comment avoir la liste des possibilités quand il y en a
plusieurs pour la complétion
il suffit d'appuyer une 2eme fois sur tab, quand la 1ere fois ça a juste
fait bip pour indiquer un blocage :-)

par contre, il y a qqch qui m'ennuie un peu, c'est que ca considere les
fichiers .* comme les autres
y a t il moyen de parametrer ça en sorte que ça ne prenne pas en compte
les fichiers .* tant qu'on n'a pas tapé "." ?


Pour autant que je me souvienne, la complétion sous bash est gérée avec
la commande built-in 'complete' (quelque part au fin fond du man de
bash, donc), dont la syntaxe varie entre l'incompréhensible et
l'imbittable...

En se battant avec ça et des expressions régulières aux petits oignons,
ça doit être faisable, mais je serais bien en peine de t'en dire plus.



tDeContes:~ thomas$ help complete
[...]

ça nous explique -p et -r, et rien d'autre ...

si qq veut bien m'aider ... :-)


Chez moi, y'a pas mal de choses dans le man de bash, section
"Programmable Completion" et surtout "SHELL BUILTIN COMMANDS", rubrique
"complete".

Mais je ne serais pas celui qui t'aidera à comprendre et appliquer
toutes les subtilités, je m'y suis déjà cassé les dents... :-/

Tu peux éventuellement essayer de regarder le fichier de complétions
fourni avec ta distribution, il regorge probablement d'exemples plus
compliqués les uns que les autres (sur ma Debian, c'est
/etc/bash_completion et /etc/bash_completion.d/).

Par ailleurs, il parait que zsh a une complétion très puissante aussi et
d'autres avantages, ça serait peut-être une autre piste de solution
(mais je n'ai pas d'avis personnel sur la question, je n'ai jamais
utilisé et je ne fais que rapporter ce que j'ai lu ici).
--
Rémi Moyen