現在私の.zshrcには次のものがあります。
bindkey '^[[A' up-line-or-search
bindkey '^[[B' down-line-or-search
ただし、これは空白文字が表示されるまで、現在の入力と一致するようです。たとえば、sudo ls /
私の履歴から始まるすべての行に一致しますsudo
が、私は入力全体に一致する行だけを一致させたいと思います。 (つまりsudo ls /etc
、一致するが一致しないsudo cat /var/log/messages
)
必要な動作を得るために何を変更する必要がありますか?
関連がある場合、全体の.zshrcは次のようになります。https://gist.github.com/919566
ベストアンサー1
zsh は以下を使用してこの機能を提供します。
history-beginning-search-backward
history-beginning-search-forward
前任者。
bindkey "^[[A" history-beginning-search-backward
bindkey "^[[B" history-beginning-search-forward
ctrl+で正しいキーコードを見つけてください。vKEY
前任者。
ctrl+++++などvUP
ctrlvDOWN
ctrl
vPageUp
ctrlvPageDown
Mac をお使いの場合、OSX Catalina には次の事項が適用されます。
bindkey "\e[5~" history-search-backward
bindkey "\e[6~" history-search-forward