在 Eshell 中用 C-l C-l 清屏

用 Emacs 的 C-l (recenter-top-bottom) 就能达到在 Eshell 中清屏的效果。但是一旦执行任意一条命令就会滚屏至最底部,因此需要禁用掉 Eshell 自动滚屏功能:

(defun chunyang-eshell-mode-setup ()
  (remove-hook 'eshell-output-filter-functions
               'eshell-postoutput-scroll-to-bottom))

(add-hook 'eshell-mode-hook 'chunyang-eshell-mode-setup)

这样一来,用 C-l C-l 把含有 Prompt 的那一行滚动到屏幕最上方,之后执行命令也不会自动滚动,于是就达到清屏的效果了。

P.S. 这是我在回答 Emas StackExchange 上的 这个问题 时想到的,它也困扰了我很久。