zsh Correctall 功能的例外情况?

Jan*_*cek 13 zsh autocorrect

我正在使用 中的correctall选项zsh,我通常对它非常满意。但是,在少数情况下,我发现此功能非常烦人。

例如,假设我有一个文件file1.tex,我想创建一个名为的副本file2.tex,然后我将对其进行编辑以进行一些更改。我会做

cp file1.tex file2.tex
Run Code Online (Sandbox Code Playgroud)

只是被告知zsh我可能拼错了file2.tex,如果我想将其更正为file1.tex.

发生的事情是这样的:当zsh尝试检查拼写时,它在当前目录中查找名为 的文件file2.tex,没有找到它,但发现file1.tex并假设我拼错了file1.tex,并询问我是否要更正。

这种情况经常发生在我身上,以至于我实际上取消了该correctall选项的设置,并且只使用correct. 然而,像我这样糟糕的打字员,我真的很想念这个correctall选项。因此我的问题是:

有没有办法告诉zsh不要更正cp命令的最后一个参数?

(我知道我可以通过修改 的完成设置来获得我想要的结果cp,但我仍然希望完成最后一个参数,我只是不想自动更正它。)

pet*_*eth 15

试试这些。

alias cp='nocorrect cp '
alias mv='nocorrect mv '
alias mkdir='nocorrect mkdir '
Run Code Online (Sandbox Code Playgroud)

等等。

这并不完全正确,因为它会禁用整个命令的正确应用,但我认为这是一个很好的妥协。例如,完成(包括 _correct 完成者)和扩展仍然有效。