[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#33992: 27.0.50; xref-find-definitions wastes too much space
From: |
Juri Linkov |
Subject: |
bug#33992: 27.0.50; xref-find-definitions wastes too much space |
Date: |
Sun, 06 Jan 2019 01:43:35 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) |
Tags: patch
Severity: wishlist
X-Debbugs-CC: João Távora <joaotavora@gmail.com>, Dmitry Gutov
<dgutov@yandex.ru>
As noted in bug#33870 the buffer produced by xref-find-definitions
(bound to ‘M-.’) has a transient nature like the *Completions* buffer.
Therefore it makes sense not to waste its space needlessly:
diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el
index 87ce2299c5..169f49a348 100644
--- a/lisp/progmodes/xref.el
+++ b/lisp/progmodes/xref.el
@@ -782,7 +773,7 @@ xref--show-xref-buffer
(erase-buffer)
(xref--insert-xrefs xref-alist)
(xref--xref-buffer-mode)
- (pop-to-buffer (current-buffer))
+ (pop-to-buffer (current-buffer) (assoc-default 'display-action-alist
alist))
(goto-char (point-min))
(setq xref--original-window (assoc-default 'window alist)
xref--original-window-intent (assoc-default 'display-action
alist))
@@ -808,12 +799,15 @@ xref--show-xrefs
(cond
((and (not (cdr xrefs)) (not always-show-list))
(xref-push-marker-stack)
- (xref--pop-to-location (car xrefs) display-action))
+ (xref--pop-to-location (car xrefs) (unless (listp display-action)
display-action)))
(t
(xref-push-marker-stack)
(funcall xref-show-xrefs-function xrefs
`((window . ,(selected-window))
- (display-action . ,display-action))))))
+ (display-action
+ . ,(unless (listp display-action) display-action))
+ (display-action-alist
+ . ,(when (listp display-action) display-action)))))))
(defun xref--prompt-p (command)
(or (eq xref-prompt-for-identifier t)
@@ -864,7 +858,7 @@ xref-find-definitions
Otherwise, display the list of the possible definitions in a
buffer where the user can select from the list."
(interactive (list (xref--read-identifier "Find definitions of: ")))
- (xref--find-definitions identifier nil))
+ (xref--find-definitions identifier '((display-buffer-maybe-below-selected))))
;;;###autoload
(defun xref-find-definitions-other-window (identifier)
- bug#33992: 27.0.50; xref-find-definitions wastes too much space,
Juri Linkov <=