如何获取空格以附加中间标签完成

时间:2017-10-17 17:15:27

标签: bash bash-completion

这是一个正确执行此操作的程序示例。

如果输入:

git stash list

在终端

然后将光标移动到" h" 并按TAB您的输出将是:

git stash h list

并且您的光标将位于最后一个" h"

我认为在我的compgen中添加-S(后缀)命令会附加一个空格,但是唉,它没有。

COMPREPLY=($(compgen -W "$1"  -S " " -- ${cur}))

作为一个例子,我的程序将输出:

git stashh list.

如何获得所需的行为?我的后缀方法是否正确?我是否需要让bash忽略它是一个空白的事实?

我应该添加-o nospace以便始终获得我期望的确切空间量吗?在我的COMPREPLY中的任何地方添加-o nospace似乎都没有消除空格?也许我没有使用正确的?

带有-o nospace的

命令用于记录:

COMPREPLY=($(compgen -o nospace -W "$1"  -S " " -- ${cur}))

0 个答案:

没有答案