gnu-emacs-sources
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Access recent files menu from minibuffer


From: Drew Adams
Subject: RE: Access recent files menu from minibuffer
Date: Thu, 16 Mar 2006 11:41:40 -0800

    Here is another possible implementation I use:

    (defun my-recentf-open-file-from-minibuffer (&optional arg)
       "Open a recent file from the minibuffer, with completion.
    Prompt for an item of the recentf menu, until a file is selected.
    By default, consider only the `recentf-max-menu-items' most recent
    files.  \\[universal-argument] \\[my-recentf-complete] consider all
    files.  With optional argument ARG a positive integer, consider the
    ARG most recent files."
       (interactive "P")
       (let* ((pr recentf-menu-title)
              (tb (recentf-apply-menu-filter
                   recentf-menu-filter
                   (mapcar 'recentf-make-default-menu-element
                           (cond
                            ((null arg)
                             (recentf-elements recentf-max-menu-items))
                            ((natnump arg)
                             (recentf-elements arg))
                            (recentf-list)))))
              (e (assoc (completing-read (concat pr ": ") tb nil t) tb)))
         (while (and (consp e) (consp (cdr e)))
           (setq tb (cdr e)
                 pr (concat pr "/" (car e))
                 e (assoc (completing-read (concat pr ": ") tb nil t) tb)))
         (when (and (consp e) (stringp (cdr e)))
           (funcall recentf-menu-action (cdr e)))))

Great. Why don't you add that too to the Emacs-Wiki page in the same section
("Recentf Filters (Structured Menu)"):
http://www.emacswiki.org/cgi-bin/emacs/RecentFiles.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]