eshell 内からの上矢印キーを、ポイントが point-max にあるときはそのまま eshell-previous-matching-input-from-input に、それ以外の場合は前の行にしたいと思います。私は書いた
(defun my-up-arrow-in-eshell() (インタラクティブ)
(if (= (ポイント) (ポイント最大))
(eshell-previous-matching-input-from-input)
; そうしないと
(前の行)
)
)
(add-hook 'eshell-mode-hook
(ラムダ ()
(define-key eshell-mode-map (kbd "<up>") 'my-up-arrow-in-eshell)))
eshell-previous-matching-input-from-input には引数が必要なためです。これを 0 にハードコードすることはできますが、それは上矢印キーを 1 回押すだけで機能します (最大ポイントの場合)。ポイントマックスのときは、箱から出してすぐに使えるようにしたい。私は議論のために何を与えますか?