Exceptions à la fonction zsh correctall?

13

J'utilise l' correctalloption dans zshet j'en suis généralement assez satisfait. Il y a cependant peu de situations où je trouve cette fonctionnalité très ennuyeuse.

Par exemple, disons que j'ai un fichier file1.texet que je veux créer une copie appelée file2.texque je vais ensuite modifier pour apporter des modifications. je ferai

cp file1.tex file2.tex

seulement pour être informé par zshque je pourrais avoir mal orthographié file2.texet si je veux le corriger file1.tex.

Ce qui se passe est le suivant: lorsqu'il zshessaie de vérifier l'orthographe, il recherche dans le répertoire en cours un fichier appelé file2.tex, ne le trouve pas, mais trouve file1.texet suppose que j'ai mal orthographié file1.texet me demande si je veux corriger cela.

Cela m'arrive si souvent que je désactive réellement l' correctalloption et que je l' utilise uniquement correct. Cependant, mauvaise dactylo comme je suis, je manque vraiment l' correctalloption. Ainsi ma ma question:

Existe-t-il un moyen de dire de zshne pas corriger le dernier argument de la cpcommande?

(Je sais que je pourrais obtenir le résultat souhaité en modifiant les paramètres de complétion cp, mais je veux toujours avoir la complétion sur le dernier argument, je ne veux tout simplement pas le corriger automatiquement.)

Jan Hlavacek
la source
Je pense que vous pouvez obtenir le résultat en modifiant les paramètres d'achèvement pour cp, sans perdre l'achèvement. Regardez la section sur zstylela zshcompsyspage de manuel, en particulier la correctionsbalise. Assurez-vous de signaler si vous comprenez quelle commande émettre (je ne sais pas).
Gilles 'SO- arrête d'être méchant'
@Gilles: Merci! Cela me donnera au moins une direction à suivre. La prochaine fois que j'ai quelques jours (ou peut-être des semaines ou des mois?) Sans rien à faire, je vais voir si je peux en comprendre le sens. :)
Jan Hlavacek

Réponses:

14

Essayez-les.

alias cp='nocorrect cp '
alias mv='nocorrect mv '
alias mkdir='nocorrect mkdir '

etc.

Ce n'est pas tout à fait pertinent car cela désactivera l'application de correctallall pour toute la commande, mais je pense que c'est un bon compromis. L'achèvement (y compris le complément _correct) et l'expansion, par exemple, continueront de fonctionner.

peth
la source
Merci. Bien que ce ne soit pas exactement ce que je cherchais, cela semble être la chose la plus proche qui soit réellement possible.
Jan Hlavacek