[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: |
Tue, 28 May 2019 23:35:16 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) |
>> A patch is proposed in a separate bug#35737.
I'm closing this request because now xref is customizable enough.
And we have no more opinions for changing the default behavior.
FWIW, this is what I currently use to customize xref-find-definitions
to act more like Completions:
(custom-set-variables
'(display-buffer-alist
'((display-buffer-to-xref-p display-buffer-in-direction
(direction . below)
(window-height . fit-window-to-buffer)))))
(defun display-buffer-to-xref-p (buffer-name _action)
(and (string-match-p "\\`\\*\\(xref\\)\\*\\(\\|<[0-9]+>\\)\\'"
buffer-name)
(memq this-command '(xref-find-definitions))))
(with-eval-after-load 'xref
(defvar xref--original-command nil)
(advice-add 'xref-find-definitions :after
(lambda (&rest _args)
(with-current-buffer (window-buffer)
(setq-local xref--original-command 'xref-find-definitions))))
(define-key xref--button-map [(control ?m)]
(lambda ()
(interactive)
(if (memq xref--original-command '(xref-find-definitions))
(call-interactively 'xref-quit-and-goto-xref)
(setq xref--original-window nil)
(call-interactively 'xref-goto-xref)))))