zshには補完システムがあり、タブを押すとアクティブになります。
llama@llama:~$ git st<Tab>
Completing main porcelain command
stash -- stash away changes to dirty working directory
status -- show working-tree status
Completing plumbing internal helper command
stripspace -- filter out empty lines
私が理解できたのは、これがスクリプトから来ているということです。/usr/share/zsh/functions/Completion/Unix/_git
ここ_git
で、完了コマンドが呼び出されています。
補完関数の名前(など_git
)がわかっているとすると、特定の文字列を入力してタブを押した場合にどうなるかを出力するにはどうすればよいでしょうか。基本的に、私はexの入力を取得しようとしています。git st
上記の出力を取得します(プログラムから、スクリプトから)。
これに関して bash に関する他の多くの既存の質問がありますが、zshでこれを達成する方法を説明するものは何も見つかりませんでした。
1
参照してくださいunix.stackexchange.com/questions/260544/...
—
olejorgenb