zsh:完成菜单。如何放置名称的共同部分?

时间:2012-06-29 04:10:36

标签: zsh tab-completion

我在zsh中配置了完成菜单。它很棒,没问题。

现在我想让我的zsh表现得那样:

假设目录中有3个文件:

  1. somefile_first
  2. somefile_second
  3. somefile_third
  4. 现在,当我按下[TAB]时,我会在第一个文件放在命令行中获得完成菜单。 但我希望zsh完成文件名的公共部分(在这个例子中它将是 somefile _ ),在公共部分之后放置任何其他内容,让我导航通过完成菜单。

    我该怎么做?

1 个答案:

答案 0 :(得分:0)

我意识到这个问题已经过时了,但在寻找相同的答案时我偶然发现了它。这是我发现的。

使用完成菜单时,AFAIK将始终在命令行中显示突出显示的完成。但是你可以不那么草率。

unsetopt menucomplete
setopt automenu

改变行为

  • 首先 TAB 完成公共部分
  • 第二个列出完成而不更改命令行
  • 第三个启动菜单并完成突出显示完成的命令行

如果您不喜欢命令行更改而不是花哨的菜单取消设置automenu:

unsetopt menucomplete automenu

这给了类似bash的完成。只完成了共同部分并列出了命题。