我正在使用 中的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 完成者)和扩展仍然有效。