シェルの便利な機能として前方検索と後方検索がある.
それぞれhistoryの前方,後方に向けてコマンドを検索でき,
長くてコマンドを打ち直すのが面倒な場合に重宝する.
多分,デフォルトで次のように設定されてる.
.zshrc
bindkey "^s" history-incremental-search-forward
bindket "^r" history-incremental-search-forward
このうち,history-incremental-search-fowardの方が
ずっと機能していなかった.
主に使うのは後方検索なので,放置してたが,次の二つを疑うと良い.
emacsキーバインドにしてるか
.zshrc
bindkey -e
フロー制御オフにしてるか
.zshrc
setopt noflowcontrol
私の場合は2番目が原因だった.
iTerm2だとデフォルトでフロー制御がオフになってる(?)っぽいが
zshrcに明示しないと駄目.
フロー制御をオフにする副作用についてはわかっていない.