ZSH 使用两个制表符来完成文件名

ZSH 使用两个制表符来完成文件名

我喜欢 Zsh 的 Tab 补全功能,但是当只有一个可能的选项并且我必须按 Tab 两次才能补全文件名时,这很令人沮丧。

例如,如果这是目录中的文件列表:

- a.txt
- b.txt
- x.txt

我输入cat x<TAB>ZSH,在提示符下得到以下信息:

$ cat x
x.txt

我必须再次按 TAB 才能获取值。我该怎么做才能让 ZSH 仅使用第一个选项卡来完成文件名?

这是我的设置:

alwaystoend
autocd
autonamedirs
autopushd
cdablevars
completeinword
correctall
extendedhistory
noflowcontrol
histexpiredupsfirst
histignoredups
histignorespace
histverify
incappendhistory
interactive
longlistjobs
menucomplete
monitor
promptsubst
pushdignoredups
sharehistory
shinstdin
zle

答案1

我需要修复的设置是

zstyle '*' single-ignored show

completion.zsh在oh-my-zsh 的文件中。我把它改为

zstyle '*' single-ignored complete

相关内容