我有一个与git df
一起使用的git的自定义别名(它基本上是git diff
的快捷方式)。
但是,使用git的zsh自动更正,每次我在包含git df
目录的目录中使用db
时,我都会这样:
% ls
app/ config/ db/ lib/ log/ spec/
% git alias | grep "df"
df = diff
% git df
zsh: correct 'df' to 'db' [nyae]?
有没有办法让zsh知道我的git别名,所以在尝试自动更正我的命令时会考虑到它们?我希望它检测到git df
存在,而不是建议我git db
。
我不想创建zsh别名(例如。alias gdf="git diff"
)或使用alias git="nocorrect git"
。
感谢您的帮助!
答案 0 :(得分:3)
您可以通过运行命令hash -rf
或rehash
强制zsh重建自动更正缓存。当zsh自动修正错误时,这解决了我的问题。
答案 1 :(得分:3)
Git有一个自动更正功能:
git config --global help.autocorrect
在自动校正前等待2秒:
git config --global help.autocorrect 2
我认为如果你想在zsh中实现这个功能,你必须直接改变git完成功能。
答案 2 :(得分:1)
有时,我发现自动纠正有点烦人。所以我在〜/ .zshrc中做,
DISABLE_CORRECTION="true"
这会禁用自动更正功能。否则,你可以做
alias git="nocorrect git"
但你似乎不喜欢那个