all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Liu Hui <liuhui1610@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 62413@debbugs.gnu.org
Subject: bug#62413: 29.0.60; [PATCH] save-place-mode cannot restore saved position
Date: Sun, 26 Mar 2023 09:26:22 +0800	[thread overview]
Message-ID: <CAOQTW-MGAd9f+UfJpt8vY5wngO_6BPFqXQCQXVx1fcYM2yhhLA@mail.gmail.com> (raw)
In-Reply-To: <83y1nkc3vc.fsf@gnu.org>

Eli Zaretskii <eliz@gnu.org> 于2023年3月25日周六 22:17写道:

> >  lisp/saveplace.el | 9 ++++++++-
> >  1 file changed, 8 insertions(+), 1 deletion(-)
> >
> > diff --git a/lisp/saveplace.el b/lisp/saveplace.el
> > index 7512fc87c5d..6c3ed34f198 100644
> > --- a/lisp/saveplace.el
> > +++ b/lisp/saveplace.el
> > @@ -353,7 +353,14 @@ save-place-find-file-hook
> >    "Function added to `find-file-hook' by `save-place-mode'.
> >  It runs the hook `save-place-after-find-file-hook'."
> >    (or save-place-loaded (save-place-load-alist-from-file))
> > -  (let ((cell (assoc buffer-file-name save-place-alist)))
> > +  (let ((cell (and (stringp buffer-file-name)
> > +                   (if save-place-abbreviate-file-names
> > +                       (or (assoc (abbreviate-file-name buffer-file-name)
> > +                                  save-place-alist)
> > +                           (assoc buffer-file-name save-place-alist))
> > +                     (or (assoc buffer-file-name save-place-alist)
> > +                         (assoc (abbreviate-file-name buffer-file-name)
> > +                                save-place-alist))))))
> >      (if cell
>
> But now testing save-place-abbreviate-file-names here should be
> redundant, right?
>
> Also, I think we should first test buffer-file-name, and only after
> that its abbreviated variant.

I don't think so. Consider the following case:

- open file A and then close the buffer:
  (buffer-file-name . position1) is saved in save-place-alist

- then set save-place-abbreviate-file-names to t

- open file A, scroll the buffer and close it:
  (abbreviated-file-name . position2) is saved

- open file A again, and the point will be at position1 if
  buffer-file-name is tested first. But I would expect the point is at
  position2.





  reply	other threads:[~2023-03-26  1:26 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-24  2:19 bug#62413: 29.0.60; [PATCH] save-place-mode cannot restore saved position Liu Hui
2023-03-25 11:52 ` Eli Zaretskii
2023-03-25 14:14   ` Liu Hui
2023-03-25 14:17     ` Eli Zaretskii
2023-03-26  1:26       ` Liu Hui [this message]
2023-03-26  5:20         ` Eli Zaretskii
2023-03-28  5:56           ` Liu Hui
2023-03-28 12:03             ` Eli Zaretskii
2023-03-30  2:49               ` Liu Hui
2023-03-30  5:34                 ` Eli Zaretskii
2023-04-03  1:02                   ` Liu Hui
2023-04-03  2:45                     ` Ruijie Yu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-04  1:37                       ` Liu Hui
2023-04-06 10:27                         ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAOQTW-MGAd9f+UfJpt8vY5wngO_6BPFqXQCQXVx1fcYM2yhhLA@mail.gmail.com \
    --to=liuhui1610@gmail.com \
    --cc=62413@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.