我经常从笔记本电脑 (mac) ssh 到台式机 (linux),有时,之后,历史搜索向后功能会中断,就像以前的历史记录一样。 (我没有跟踪它是否只在中断的会话后发生,而不是在干净断开的会话后发生。)
我首先怀疑是我的 readline 设置不知何故被重置了。但问题出现前后,我的相关 readline 设置都是相同的:
$ bind -p | grep history | egrep -v "^# "
"\e<": beginning-of-history
"\e\C-i": dynamic-complete-history
"\e>": end-of-history
"\C-s": forward-search-history
"\e^": history-expand-line
"\e[A": history-search-backward
"\e[B": history-search-forward
"\C-n": next-history
"\eOB": next-history
"\en": non-incremental-forward-search-history
"\ep": non-incremental-reverse-search-history
"\C-p": previous-history
"\eOA": previous-history
"\C-r": reverse-search-history
奇怪的是,在 vi 中打印向上箭头显示的内容与我所怀疑的^[OA
并不一样\e[A
。但无论如何,当我的绑定符合我的要求时和不再符合我的要求时,它也不会发生变化。
这是什么原因造成的?如何重置我的按键绑定?如何避免将来出现此问题?