GNU bug report logs - #33870
27.0.50; xref-goto-xref not configurable

Previous Next

Package: emacs;

Reported by: Juri Linkov <juri <at> linkov.net>

Date: Tue, 25 Dec 2018 20:53:01 UTC

Severity: minor

Found in version 27.0.50

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 33870 <at> debbugs.gnu.org, eliz <at> gnu.org, Dmitry Gutov <dgutov <at> yandex.ru>, João Távora <joaotavora <at> gmail.com>, Juri Linkov <juri <at> linkov.net>
Subject: bug#33870: 27.0.50; xref-goto-xref not configurable
Date: Wed, 09 Jan 2019 08:14:53 -0500
>> I haven't looked in detail, but this seems to make it less trivial to
>> just add a new action alist parameter: it should default to `t` if we
>> matched in display-buffer-alist but to nil if we only rely on
>> display-buffer-base-action?
> I'm missing you here.  An ALIST argument is equally passed to all
> buffer display actions regardless of whether they are specifed by
> 'display-buffer-base-action' or by someone else.  It's their choice
> whether they want to obey or disregard it.  The same currently holds
> for 'display-buffer-mark-dedicated'.

Never mind, I was confused.

>> Also, some (all?) let-bindings of display-buffer-mark-dedicated should
> I don't see any such bindings in our current code base.

    lisp/dired.el:    (display-buffer-mark-dedicated 'soft))
    lisp/epa.el:      (let ((display-buffer-mark-dedicated 'soft))
    lisp/minibuffer.el:             (display-buffer-mark-dedicated 'soft))

> I attach a patch of my proposed changes.  After applying that I have
> no more objections against renaming 'window--display-buffer' any way
> people want.

LGTM.  See some comment/question below.


        Stefan


> @@ -958,7 +957,11 @@ window--make-major-side-window
>  	 ;; window and not make a new parent window unless needed.
>  	 (window-combination-resize 'side)
>  	 (window-combination-limit nil)
> -	 (window (split-window-no-error next-to nil on-side)))
> +	 (window (split-window-no-error next-to nil on-side))
> +         (alist (if (or display-buffer-mark-dedicated
> +                        (assq 'dedicated alist))
> +                    alist
> +                  (cons '(dedicated . side) alist))))

Hmm... the old code used (or display-buffer-mark-dedicated 'side),
so when display-buffer-mark-dedicated is non-nil but (assq 'dedicated
alist) is nil, I think we need to use (cons `(dedicated
. ,display-buffer-mark-dedicated) alist), no?
Or rather:

         (alist (if (assq 'dedicated alist)
                    alist
                  (cons `(dedicated . ,(or display-buffer-mark-dedicated 'side))
                        alist))))

WDYT?

BTW, this code reappears a second time in your patch, but I haven't
checked if the same reasoning applies there.




This bug report was last modified 6 years and 35 days ago.

Previous Next


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