При использовании стрелок вверх и вниз в моем терминале (iTerm 2
на Mac OS Catalina
) я могу просматривать свои последние команды с помощью стрелок вверх и вниз.
Я использую ZSH
(точнее, Oh-my-zsh
), и если я набираю, например. vim
, затем нажмите вверх, он просмотрит мою историю для любых команд, выданных, начиная с vim
.
Я думаю, что это раздражает, когда приходится перемещать руку на клавиши со стрелками, поэтому я хотел связать ctrl-j
и ctrl-k
для просмотра вверх и вниз.
Я посмотрел на bindkey
и связал ^j
с down-history
и ^k
с up-history
. Это позволяет мне просматривать мою историю, но не с «умной» функциональностью (здесь я не уверен в правильной терминологии) — она просто перемещается вверх и вниз в моей истории, независимо от моего ввода.
Я просмотрел стандартные виджеты. в руководстве Zsh Line Editor
, но я не могу найти для этого подходящую команду.
К какой команде я должен привязать ^j
и ^k
, чтобы получить желаемый результат?
bindkey | grep -F '^[[A'
; это должно показать вам виджет, к которому в данный момент привязана стрелка вверх. - person chepner   schedule 13.06.2020up-line-or-history
, поэтому, естественно, я привязал к этому^p
. К сожалению, я до сих пор получаю только то, что кажетсяup-history
без умного поиска. - person Fizk   schedule 15.06.2020