1

我正在尝试编写一个自动完成脚本。它还应该输出一些描述。我有一个管理自动完成和获取描述的功能。自动完成相关部分工作正常,但当我想显示帮助时遇到问题。简而言之,这就是我现在所拥有的:

$> myFunction -myOption1<TAB>
Description for myOption1<CURSOR>

我想要什么:

$> myFunction -myOption1<TAB>
Description for myOption1 
$> myFunction -myOption1<CURSOR>

自动完成和输出之间没有冲突。只有当 myOption1 完成时才能显示描述。(myOpt 将作为 myOption1 完成,因此不显示描述)。我做了几次尝试让它工作,但我想我错过了一步。“myOption1 的描述”是一个“回声”。我认为这是相关的,因为compgen正在等待一些价值(我暂时不给它)。我试图用一些转义字符、空格来欺骗 compgen:没有成功。自动完成脚本应在此描述之后继续运行。

在此先感谢您的帮助 ;-)

科尔

4

1 回答 1

0

我会做什么:

  1. 在每种情况下都设置COMPREPLY(您不想弄乱它)。(移出其他)
  2. 在弄乱屏幕之前,我会tput sc在回声之前和tput rc之后做一个。请注意,如果您的终端由于回声而滚动,那仍然会搞砸您的屏幕
于 2016-11-30T14:32:57.003 回答