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

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

Re: recentf.el and listing recently visited files


From: Sandip Chitale
Subject: Re: recentf.el and listing recently visited files
Date: 17 Mar 2003 12:25:01 -0800

Oh...I see. What you want is synchronization of
changes to the recentf-save-file.

No, my functions do not do that.

What you want may be slightly more difficult.
I do not know if emacs has an efficient mechanism
(i.e. not based on polling) to monitor changes to files on disk.

One approach may be:

1. Before showing the entries to the user the recentf package could
check the timestamp of the recentf-save-file. If
it is later than the time it was last read it could reread the file.

2. Similarly Before writing out the entries to the recentf-save-file
the entries of the current session should be merged with what is
on the disk.

-sandip


"Javier Oviedo" <email_joviedo@yahoo.com> wrote in message 
news:<b54pbl$e61$1@tilde.itg.ti.com>...
> Sandip,
> 
> Thanks for your reply. I tried your functions but they don't seem handle the
> cases that I want covered.
> 
> What I have noticed is that when I close emacs, the recentf-list
> updates....the list gets written. I noticed a undesirable behavior with
> this. Let say that I have two emacs session open. In one I open foo.c and in
> the other I open bar.c (both happen to be in the same directory). When I
> close the session with foo.c I then see foo.c added to the recentf-list. I
> then close the second session with bar.c and I see bar.c written to the list
> but I no longer see foo.c. It seems to have been deleted from the list.
> 
> First, I think that once a file is written, it should be saved. Is it
> possible to have the list update as soon as any file is opened in any emacs
> window? Once the list has updated, any emacs window should be able to now
> see the new recently visited file.
> 
> Do you functions handle this case?
> 
> Thanks for your help.
> 
> 
> "Sandip Chitale" <sandipchitale@yahoo.com> wrote in message
> b607d812.0303141643.761485a5@posting.google.com">news:b607d812.0303141643.761485a5@posting.google.com...
> > Javier,
> >
> > I had hacked the recentf.el so that it takes into account
> > the file-name-history variable. Thus all files opened using
> > the find-file (and it's variants) also get added to the
> > recent files list.
> >
> > My changes were top of the following version of recentf.el :
> >
> > ;; Author: David Ponce <david@dponce.com>
> > ;; Created: July 19 1999
> > ;; Keywords: customization
> >
> > Here are the changed defuns:
> >
> > (defun recentf-add-file (filename)
> >   "Add or move FILENAME at the beginning of `recentf-list'.
> > Does nothing if FILENAME matches one of the `recentf-exclude' regexps."
> >   (let ((filename (expand-file-name filename)))
> >     (when (recentf-include-p filename)
> >       (setq recentf-list (cons filename (delete filename recentf-list)))
> >       (setq file-name-history (cons filename (delete filename
>  file-name-history)))
> >       (setq recentf-update-menu-p t))))
> > :
> > :
> > (defun recentf-find-file (filename)
> >   "Edit file FILENAME using `find-file'.
> > If FILENAME is not readable it is removed from `recentf-list'."
> >   (if (file-readable-p filename)
> >       (progn
> > (find-file filename)
> > (setq file-name-history (cons filename file-name-history))
> > )
> >     (progn
> >       (message "File `%s' not found." filename)
> >       (setq recentf-list (delete filename recentf-list))
> >       (setq recentf-update-menu-p t))))
> > :
> > :
> > (defun recentf-add-file (filename)
> >   "Add or move FILENAME at the beginning of `recentf-list'.
> > Does nothing if FILENAME matches one of the `recentf-exclude' regexps."
> >   (let ((filename (expand-file-name filename)))
> >     (when (recentf-include-p filename)
> >       (setq recentf-list (cons filename (delete filename recentf-list)))
> >       (setq file-name-history (cons filename (delete filename
>  file-name-history)))
> >       (setq recentf-update-menu-p t))))
> >
> > HTH,
> > sandip
> >
> > "Javier Oviedo" <email_joviedo@yahoo.com> wrote in message
>  news:<b4ta0u$t55$1@tilde.itg.ti.com>...
> > > Hello all:
> > >
> > > I really like recentf.el and use it quite frequently. I do however have
>  a
> > > few questions:
> > > 1. Would it be possible to make entries timeout after some period of
>  time?
> > > After a few days or something like that, the list would drop files.
> > >
> > > 2. How does the recentf-list update? Is it possible to have recentf-list
> > > update whenever a new file is opened regardless of which emacs window it
>  is
> > > opened in?
> > >
> > > Example: I have one emacs window open. I then open a second emacs window
>  for
> > > some temporary work. I would like the recentf-list to update and show
>  the
> > > file(from second window) in the original window list. Is this possible?
> > >
> > >
> > >
> > > Thanks In Advance.


reply via email to

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