Я знайшов рішення своєї проблеми в документації на ZSH . Ой-мі-зш, здається, відображає ↑та ↓ключі на щось подібне
bindkey '\e[A' history-search-backward
bindkey '\e[B' history-search-forward
Що дає точну поведінку, яку я описав вище. Документація ZSH описує поведінку history-search-backward
як
Шукайте назад в історії рядок, що починається з першого слова в буфері .
Я замість цього хотів, це наступне відображення, яке я вставив у своє ~/.zshrc
:
bindkey '\e[A' history-beginning-search-backward
bindkey '\e[B' history-beginning-search-forward
Поведінка компанії history-beginning-search-backward
така:
Швидкий пошук в історії для рядка, що починається з поточного рядка до курсору . Це залишає курсор у вихідному положенні.
Крім того, якщо \e[A
не працює стрілками вгору або вниз, натисніть <ctrl-v><KEY (e.g., up arrow)>
на іншому терміналі, який дає ^[OA
. Тоді ви можете використовувати це замість \e[A
. Процес описаний тут: http://zshwiki.org/home/zle/bindkeys