単一のコマンドライン引数を使用する小さなシェルスクリプトを作成しました。
パラメータの作成を開始するときにオートコンプリートしたいです。オートコンプリートの選択は、特定のテキストファイルから入手する必要があります。
たとえば、私のテキストファイルに次のものが含まれている場合
foo
foobar
書き込みを開始しmy-cli fo
、I like zshを押すとTAB
選択項目foo
とfoobar
。
関連文書やチュートリアルに関するアドバイスを歓迎します。
ベストアンサー1
同様の問題で苦労していますが、もう少し複雑です。静的オートコンプリートオプションファイルを使用すると、次のコードが私にとって効果的でした。
#compdef test
_test_comp(){
t=($(cat /tmp/file_with_opts))
_wanted t expl "availavle options" compadd -a t
}
_arguments -C -S \
'*:test_autocomplete:_test_comp'
このように、スクリプトはtest
以下からオプションを取得します。/tmp/file_with_opts