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

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

bug#33870: 27.0.50; xref-goto-xref not configurable


From: Dmitry Gutov
Subject: bug#33870: 27.0.50; xref-goto-xref not configurable
Date: Tue, 11 Jun 2019 03:00:12 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0

Hi Juri,

On 27.01.2019 22:29, Juri Linkov wrote:
If only that patch were able to keep the current behavior by default.
Yep.  If Juri provides a simpler patch that does this I'm all for it.
Ok, here's 100% backward-compatible patch:

So apparently this patch was installed, but without a link to the relevant bug report, and it was not closed either.

Which is just as well, because my testing shows that it's really not 100% backward compatible.

1. display-buffer-in-previous-window, as I mentioned in another email, does not reliably use the supplied `previous-window' value.

2. 'C-x 4 .' followed by TAB (or RET) is broken: instead of using the other window, it uses the original window, just like M-. does. It's a misunderstanding inside the code, see below.

xref.simplify.patch

diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el
index 87ce2299c5..9522d7e475 100644
--- a/lisp/progmodes/xref.el
+++ b/lisp/progmodes/xref.el
@@ -474,27 +474,17 @@ xref--show-pos-in-buf
            (or (eq xref--original-window-intent 'frame)
                pop-up-frames))
           (action
-          (cond ((memq
-                  xref--original-window-intent
-                  '(window frame))
+          (cond ((eq xref--original-window-intent 'frame)
                   t)
+                ((eq xref--original-window-intent 'window)
+                 '(display-buffer-same-window))

That's not what the `window' value means. It should mean "other window".

I really don't want to revert this change after all this discussion, but implementing it in a different way is not straightforward. My very first idea turned out to be to write it more or less like it was before.

But here's an alternative patch. Juri, what do you think? Does it keep your customizations working?

Attachment: xref-display-buffer-functions.diff
Description: Text Data


reply via email to

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