zsh-historyプレビューでトップ10のゲームをリアルタイムで検索しますか?

zsh-historyプレビューでトップ10のゲームをリアルタイムで検索しますか?

プレビューを含むリアルタイム検索履歴を見たことがあります。BUFFER行の下のリストに履歴の最初の10件の一致が表示され、キーを押すたびに更新され、残りの時間は標準のCtrl + R検索と同様に機能します。 (ただし、この機能を使用するユーザーが3週間消えて連絡が取れません)

tl;dr: このプラグイン/スクリプトをご存知で、私にリンクしていただける方はいらっしゃいますか?

または、プログラムしてリストを正しく更新するのに役立ちますか?

私の現在のコードは次のように更新されていません(最初から静的リストにすぎず、検索は完全に自然には見えません)。

zle -N search

bindkey "^R" search

search () {
echo "";
fc -ln -30 | grep $(printf "%q\n" "$BUFFER");
<standard-history-backwards-search-widget>; #not on linux atm
}

ベストアンサー1

あなたはすでに知っているかもしれませんzsh-history-substring-search

私が知っているのは、今見ているプレビューは実行されていませんが、それ以外は非常に似ているようです。

知らないなら試してみる価値があります。

zsh-history-substring-search緊密なfishシェルベースの履歴検索。fishインタラクションの面で確かに学ぶ価値があるいくつかの高度な機能があります。残念ながら。bashzsh


また、解決策ではありませんが、密接に関連しています。

zshディストリビューションには、history-beginning-search-menu探しているタスクの一部を実行しますが有用ではないウィジェットが含まれています。

autoload -Uz history-beginning-search-menu
zle -N history-beginning-search-menu
bindkey '^P' history-beginning-search-menu

現在の入力から始まり、履歴行をリストし、リストから番号で選択します。

以下で+を押しますControlP|

$ dialog  -| 
Enter digit:
1 dialog  --infobox text 5 15| sed 's/...104..//'
2 dialog  --yesno SomeText 0 0
3 dialog  --yesno text 0 0
4 dialog  --yesno text 5 15

おすすめ記事