Obwohl ich zsh liebe und seine Rechtschreibkorrektur nützlich finde, ist es ärgerlich, dass es Dinge korrigiert, die offensichtlich sind sollte nicht korrigiert werden. Zum Beispiel habe ich gerade ausgeführt
mv iso_ iso
und es antwortete
zsh: correct 'iso' to 'iso_' [nyae]?
Denk darüber nach. Das Korrigieren von „iso“ in „iso_“ würde bedeuten, dass ich versucht habe,
auszuführenmv iso_ iso_
was NIE Sinn machen würde. Daher ist dies wirklich ein Designfehler in zsh und sollte allgemein korrigiert werden. Aber da dies nicht der Fall war (zumindest in der von mir verwendeten Version) und dies wahrscheinlich auch nicht der Fall sein wird, gibt es eine Einstellung, um dies zu korrigieren? Ich würde eine nicht-kludgey-Methode bevorzugen, um es zu beheben. Aliase für mv
, zum Beispiel, sind kludgey.
Akzeptierte Antwort:
Verwenden Sie nicht den correct_all
Option, wenn Sie nicht mögen, was es tut.
FWIW, es ist NICHT standardmäßig eingestellt. Es gibt eine beliebte Konfiguration im Netz (ich werde nicht sagen, welche), die aus irgendeinem Grund denkt, dass es eine lustige Idee ist, diese Option für alle festzulegen … dennoch macht sie für viele Anwendungen keinen Sinn. Es macht jeden Befehlszeilenargument unterliegt der Rechtschreibkorrektur des Dateinamens … Das ist verrückt.
Um es kurz zu machen:Nur setopt correct
und NICHT setopt correctall
.
Wenn Sie Hilfe bei der Schreibweise von Dateinamen benötigen, kann Ihnen das Vervollständigungssystem von zsh mit seinem _approximate
helfen und _correct
Vervollständiger. Details finden Sie im zshcompsys(1)
Handbuchseite.