Add recentf
authorJoerg Jaspert <joerg@debian.org>
Mon, 19 May 2014 22:06:03 +0000 (00:06 +0200)
committerJoerg Jaspert <joerg@debian.org>
Mon, 19 May 2014 22:06:03 +0000 (00:06 +0200)
.emacs.d/config/emacs.org

index 26f9214..d9cd3b8 100644 (file)
@@ -2332,6 +2332,32 @@ I want to access it from anywhere using =F6=.
  (setq mingus-mpd-root "/share/music/"))
 #+END_SRC
 
+** recentf
+[2014-05-19 Mo 22:56]
+Recentf is a minor mode that builds a list of recently opened
+files. This list is is automatically saved across Emacs sessions.
+#+BEGIN_SRC emacs-lisp :tangle yes
+(use-package recentf
+  :if (not noninteractive)
+  :bind ("C-x C-r" . recentf-open-files)
+  :init
+  (progn
+    (recentf-mode 1)
+    (setq recentf-max-menu-items 25)
+    (setq recentf-save-file (expand-file-name ".recentf" jj-cache-dir))
+    
+    (defun recentf-add-dired-directory ()
+      (if (and dired-directory
+               (file-directory-p dired-directory)
+               (not (string= "/" dired-directory)))
+          (let ((last-idx (1- (length dired-directory))))
+            (recentf-add-file
+             (if (= ?/ (aref dired-directory last-idx))
+                 (substring dired-directory 0 last-idx)
+               dired-directory)))))
+
+    (add-hook 'dired-mode-hook 'recentf-add-dired-directory)))
+#+END_SRC
 ** sessions
 [2013-05-22 Wed 22:40]
 Save and restore the desktop