1

オートコンプリート スクリプトをコーディングしようとしています。また、何らかの説明を出力する必要があります。自動補完と説明の取得を管理する関数が 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 に答える