all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Mark Oteiza <mvoteiza@udel.edu>
To: Eli Zaretskii <eliz@gnu.org>
Cc: mbork@mbork.pl, 24580@debbugs.gnu.org
Subject: bug#24580: 25.2.50; query-replace history doesn't work
Date: Sun, 2 Oct 2016 12:51:28 -0400	[thread overview]
Message-ID: <20161002165128.GA1032@holos.localdomain> (raw)
In-Reply-To: <8337kfkzcd.fsf@gnu.org>

On 02/10/16 at 10:02am, Eli Zaretskii wrote:
> > Date: Sun, 2 Oct 2016 00:17:15 -0400
> > From: Mark Oteiza <mvoteiza@udel.edu>
> > Cc: Marcin Borkowski <mbork@mbork.pl>, 24580@debbugs.gnu.org
> > 
> > > > - start emacs -Q
> > > > - press `a' `C-b', `M-%', `a', `RET', `b', `RET', `!'
> > > > - press `M-%', `M-p'
> > > > 
> > > > Emacs says "Beginning of history; no preceding item".
> > > 
> > > Mark, this regression was caused by the lexical-binding change in
> > > replace.el.  Could you please take a look?
> > 
> > The problem lies (at least) in query-replace-read-from, where
> > query-replace-from-to is let bound, and later read-from-minibuffer
> > refers to the symbol 'query-replace-from-to.  At first sight, it looks
> > like it could be fixed by putting some of the setup done by these
> > bindings into the minibuffer setup hook.
> 
> Isn't there a less intrusive change to fix this?  A significant change
> like the one you propose is more risky, but if there's no safer one, I
> guess we should take it.

Perhaps just adding a (defvar query-replace-from-to-history …) will be
sufficient.  That read-from-minibuffer and friends' HIST argument can
only be a symbol is a bit frustrating.

> > As for the other problem Marcin mentioned, that seems to be due to the
> > custom-reevaluate-setting call in the same function.
> 
> I'm not sure I understand: what's wrong with
> custom-reevaluate-setting in this case?

From -Q:

1. (setq-default query-replace-from-to-separator " => ")
2. Do an M-% (Like Marcin's in original recipe) once to get some default in the prompt
3. M-%

I would expect to see (default a => b) in the prompt, but
custom-reevaluate-setting apparently ignores settings done outside of
customize.  The first step instead needs to be

  (custom-set-variables '(query-replace-from-to-separator " => "))

or something with the default for query-replace-from-to-separator should
be changed.





  reply	other threads:[~2016-10-02 16:51 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-01  6:43 bug#24580: 25.2.50; query-replace history doesn't work Marcin Borkowski
2016-10-01  8:40 ` Eli Zaretskii
2016-10-02  4:17   ` Mark Oteiza
2016-10-02  7:02     ` Eli Zaretskii
2016-10-02 16:51       ` Mark Oteiza [this message]
2016-10-03  1:08         ` Mark Oteiza
2016-10-03  7:16           ` Eli Zaretskii
2016-10-04  0:24             ` Mark Oteiza
2016-10-04  6:36               ` Eli Zaretskii
2016-10-05 15:39                 ` Mark Oteiza
2016-10-03  7:08         ` Eli Zaretskii
2016-10-03 11:24           ` Mark Oteiza
2016-10-03 12:14             ` 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=20161002165128.GA1032@holos.localdomain \
    --to=mvoteiza@udel.edu \
    --cc=24580@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=mbork@mbork.pl \
    /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.