如何在emacs eshell中運行irb時訪問命令歷史記錄?在eshell上的irb命令歷史記錄keystroke
當我在emacs之外的命令行運行irb時,可以使用向上箭頭獲取最後一個命令或ctrl-r來搜索命令歷史記錄。在eshell內部的irb中,向上箭頭什麼都不做(即它運行eshell-previous-matching-input-from-input
,它在irb中什麼都不做),而ctrl-r使用緩衝區的emacs反向搜索而不是搜索命令歷史記錄。我想irb永遠不會收到向上箭頭擊鍵,因爲它必然會出現在eshell-previous-matching-input-from-input
之間,但我不知道如何解決它。運行(global-unset-key (kbd "<up>"))
不會取消綁定eshell中的向上箭頭,我不確定這是否可取。
我知道inf-ruby,但我更喜歡在eshell中使用irb,此外up-arrow
和ctrl-r
也不適用於此。
這可能是一個與irb readline有關的問題,但我不這麼認爲。在irb命令歷史工作正常的命令行中,conf.use_readline
爲零。在eshell中運行irb --readline將conf.use_readline
設置爲true,但不修復向上箭頭或ctrl-r。