Dans zsh
, la cd
commande a une forme à deux arguments: cd OLD NEW
devient ${PWD/OLD/NEW}
. Avec le système d'achèvement de nouveau style, zsh est capable de terminer NEW
: le deuxième argument est complété en fonction de ce qui OLD
peut être remplacé par pour obtenir un répertoire existant. Mais le premier argument n'est complété que pour les répertoires existants.
Comment puis-je demander à zsh de proposer des complétions qui sont des valeurs possibles pour OLD
, en plus de compléter les répertoires existants?
Par exemple, si le répertoire actuel est /path/to/foo
et qu'il existe également des répertoires /also/to/foo
et /path/to/foo/prime
, puis se cd p
Tabtermine p
par prime
. Si j'ai l'intention de courir, cd path also
j'aimerais que zsh propose également path
un achèvement. Comment?
L'utilisation de valeurs déjà saisies du deuxième argument pour limiter les possibilités du premier argument serait un plus, mais compléter le premier argument indépendamment serait également très bien.
cd p also<Left*5><Tab>
: si j'appuie <Tab>
alors que le curseur est en place also
, je m'attends also
à ce que ce soit terminé p
.
cd t<tab>
devrait-il offrir th/to/foo/prime
et to/foo/prime
? Ou devrait-il simplement se limiter aux limites des répertoires?
cd p also <Tab>
oucd p also <left arrow x 5> <Tab>
?