GNU bug report logs - #4981
C-l during query-replace

Previous Next

Package: emacs;

Reported by: Dan Nicolaescu <dann <at> ics.uci.edu>

Date: Fri, 20 Nov 2009 00:25:05 UTC

Severity: normal

Done: Juri Linkov <juri <at> jurta.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Juri Linkov <juri <at> jurta.org>
To: Dan Nicolaescu <dann <at> ics.uci.edu>
Cc: 4981 <at> debbugs.gnu.org
Subject: bug#4981: C-l during query-replace
Date: Mon, 30 Nov 2009 01:44:30 +0200
> I guess there are many other places that need replacing with the new
> command (e.g. `gnus-recenter').

I fixed `gnus-recenter' in gnus-sum.el.

> But with the patch I proposed in
> http://thread.gmane.org/gmane.emacs.devel/110349/focus=115915
> the name `recenter-top-bottom' makes no sense anymore.
> Maybe we should rename it to something more suitable
> before replacing `recenter' calls with the new name everywhere?

Installed.  Currently I have no opinion about renaming
`recenter-top-bottom' to something more reasonable.

>> C-l during query-replace should run `recenter-top-bottom', not
>> `recenter' for consistency with what C-l normally does nowadays.

I can't find a clean solution because in the case of query-replace,
`this-command' is always `query-replace'.

This patch kinda works (though it doesn't reset the cycling order),
but I don't like this.

Index: lisp/window.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/window.el,v
retrieving revision 1.190
diff -u -r1.190 window.el
--- lisp/window.el	29 Nov 2009 23:34:09 -0000	1.190
+++ lisp/window.el	29 Nov 2009 23:42:30 -0000
@@ -1654,7 +1654,8 @@
    (arg (recenter arg))			; Always respect ARG.
    (t
     (setq recenter-last-op
-	  (if (eq this-command last-command)
+	  (if (or (eq this-command last-command)
+		  (eq this-command 'query-replace))
 	      (car (or (cdr (member recenter-last-op recenter-positions))
 		       recenter-positions))
 	    (car recenter-positions)))

Index: lisp/replace.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/replace.el,v
retrieving revision 1.287
diff -u -r1.287 replace.el
--- lisp/replace.el	12 Nov 2009 06:55:43 -0000	1.287
+++ lisp/replace.el	29 Nov 2009 23:43:28 -0000
@@ -1785,7 +1788,9 @@
 			((eq def 'skip)
 			 (setq done t))
 			((eq def 'recenter)
-			 (recenter nil))
+			 (recenter-top-bottom))
 			((eq def 'edit)
 			 (let ((opos (point-marker)))
 			   (setq real-match-data (replace-match-data

-- 
Juri Linkov
http://www.jurta.org/emacs/



This bug report was last modified 15 years and 179 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.