если я использую стрелку вверх в сеансе zsh, как и следовало ожидать, я получу предыдущие команды, от самых новых до самых старых. Теперь (будь то zsh или oh-my-zsh, я не знаю), но если я наберу начало строки и нажму стрелку вверх, я получу строки из моей истории, которые начинаются с того, что я напечатал. Пока все хорошо.
Проблема возникает, если я набираю многострочную команду, например:
for i in foo bar
echo $i
затем, если я позже нажму стрелку вверх, как только он попадет в многострочную команду, он будет отображать только результаты, начиная с for
. Так что, если моя история похожа на:
touch foo
rm foo
for i in foo bar
echo $i
ls
и я ударил стрелок вверх , я получаю команду ls
, то мульти-линии for
команды, и с тех пор я вижу только только for
команд , которые находятся в моей истории, а не команды rm
или touch
Есть ли какой-нибудь способ иметь возможность поиска в хронологическом порядке, не застревая, когда история попадает в многострочную команду?