Emacs能否打开最近的文件(例如File> Open Recent ...等菜单)?
我知道OS X的Aquamacs具有此功能。但它是否适用于所有Emacs版本?
答案 0 :(得分:32)
我所知道的提供此功能的最惯用方法是使用recentf-mode
(更多here)。我在初始化文件中使用以下命令启用它:
(require 'recentf)
(recentf-mode 1)
然后它提供了一个交互式函数recentf-open-files
,它绑定到C-x f
,它提供了一个跨越会话的最近打开文件的编号菜单,即使你关闭了emacs并重新启动它,它将保留您最近打开的文件。您可以使用初始化文件中的另一行将函数绑定到加速器,例如:
(global-set-key "\C-xf" 'recentf-open-files)
(可选)
如果你大量使用Tramp,recentf也会跟踪这些文件,并且这是定期清理的事情,因为文件是远程的,所以这可能是一个真正的混乱。通过将其放在启动文件中来防止这种情况:
(setq recentf-auto-cleanup 'never)
答案 1 :(得分:17)
普通的GNU Emacs没有显示最近打开文件的菜单。但是,所有Emacs命令都有历史记录,包括find-file
(C-x C-f
)。选择“文件| “在菜单中打开”或使用emacsclient
打开文件也会添加此历史记录。按C-x C-f
后,按up
和down
以浏览已打开文件的历史记录。
如果您使用desktop
包启用会话保存,则会话之间会保存历史记录。
答案 2 :(得分:10)
如果您只想在emacs调用之间保存迷你缓冲区历史记录,可以将以下内容放在.emacs中:
(savehist-mode 1)
与可以跨调用保存所有打开缓冲区的桌面软件包不同,这只会填充迷你缓冲区历史记录(例如,打开文件时,您可以使用向上箭头导航您在上一个会话中打开的文件列表)。 / p>
答案 3 :(得分:4)
GNU Emacs 包含库recentf.el
,因为Emacs 22.正如R.P. Dillon指出的那样。