参考prelude里面的方法,解决了,这个问题,具体的逻辑还再学习,先附上配置:
(require 'recentf)
(setq recentf-save-file (expand-file-name "recentf" simon-savefile-dir)
recentf-max-saved-items 500
recentf-max-menu-items 17
recentf-auto-cleanup 'never)
(defun simon-recentf-exclude-p (file)
(let ((file-dir (file-truename (file-name-directory file))))
(-any-p (lamdba (dir)
(string-prefix-p dir file-dir))
(mapcar 'file-truename (list simon-savefile-dir package-user-dir)))))
(add-to-list 'recentf-exclude 'simon-recentf-exclude-p)
(recentf-mode t)
快捷键,还是绑定到recentf-open-files上,如下:
(global-set-key (kbd "C-x C-r") 'recentf-open-files)