ZSH:即使不明确,在第一个选项卡上插入完成?

rps*_*rps 14 zsh autocomplete

目前,当我第一次点击 Tab 时,ZSH 会显示一个菜单,并且完成不明确。所以,如果我在命令提示符中有 'cd' 并且我点击了 tab,它会显示不同的可用完成。如果我再次点击 Tab,它将选择第一个可用的完成。

我想将这两个步骤合并为一次按 Tab 键。所以,如果我在 'cd' 并且我使用 tab,我希望 ZSH 插入第一个可用匹配(当不明确时)并显示菜单,如果第一个匹配不是我拥有的目录,我可以通过 tab心里。

ZSH 设置工具将它放在我的 .zshrc 中,以防其中任何一个影响我的 shell 的行为:

zstyle ':completion:*' 完成器 _expand _complete _ignored
zstyle ':completion:*' 列表颜色''
zstyle ':completion:*' list-prompt %SAt %p: 点击 TAB 获取更多信息,或插入 %s 的字符
zstyle ':completion:*' 匹配器列表 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' '' 'm:{[:lower:] [:upper:]}={[:upper:][:lower:]}'
zstyle ':completion:*' 菜单选择=5
zstyle ':completion:*' select-prompt %SScrolling active: 当前选择在 %p%s
zstyle :compinstall 文件名 '/home/robb/.zshrc'

小智 13

将此行添加到您的~/.zshrc

setopt menu_complete
Run Code Online (Sandbox Code Playgroud)

详情请参阅man zshoptions