当我使用Emacs时,我希望能够轻松地显示和浏览我所处理的文件列表,而不仅仅是当前会话,而是来自之前的会话。 (顺便说一句,在Windows上运行Emacs 22.2)
答案 0 :(得分:23)
来自Joe Grossberg的博客(不再提供):
但是如果你使用的是GNU Emacs 21.2 (最新版本,包括 这是标准发行版的一部分), 你可以把以下几行 进入.emacs文件
;; recentf stuff (require 'recentf) (recentf-mode 1) (setq recentf-max-menu-items 25) (global-set-key "\C-x\ \C-r" 'recentf-open-files)
然后,当你启动emacs时,点击 CTRL - X CTRL - R 。它会显示一个列表 最近打开的文件在缓冲区中。 将光标移动到一行,然后按 输入。这将打开文件 问题,并把它移到顶部 你最近的文件列表。
(注意:Emacs记录文件名。 因此,如果您移动或重命名 在Emacs之外的文件,它不会 自动更新列表。你会 必须用。打开重命名的文件 正常 CTRL - X CTRL - F 方法。)
Jayakrishnan Varnam有page including screenshots这个怎么样 包装工程。
注意:您不需要(require 'recentf)
行。
答案 1 :(得分:0)
即使您没有打开最新文件,Emacs也会将通过微型缓冲区输入的文件列表保存在变量file-name-history
中。此外,在(savehist-mode 1)
文件中执行.emacs
会使该变量在Emacs的调用之间持久存在。
因此,这里有一个小功能,可以显示该列表中实际存在的文件(欢迎任何人使用/构建此文件):
(defun dir-of-recent-files ()
"See the list of recently entered files in a Dired buffer."
(interactive)
(dired (cons
"*Recent Files*"
(seq-filter
'file-exists-p
(delete-dups
(mapcar (lambda (s) (string-trim-right s "/*"))
file-name-history)
))))
)
我发现这非常有用,并将其绑定到我的台式机键盘上的那些小特殊功能键之一。 (所以我还没有看到打开“最近使用...”的意义)