mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-11 14:01:43 -08:00
Make sure default-directory relates to the originating buffer
* lisp/progmodes/xref.el (xref--show-xref-buffer):
Pick up default-directory value from the caller
(https://lists.gnu.org/archive/html/emacs-devel/2021-01/msg00551.html).
(xref-show-definitions-buffer-at-bottom): Same.
(cherry picked from commit 6e73e07a6f)
This commit is contained in:
parent
d1455027e0
commit
19534f988c
1 changed files with 6 additions and 2 deletions
|
|
@ -852,8 +852,10 @@ Return an alist of the form ((FILENAME . (XREF ...)) ...)."
|
|||
(or
|
||||
(assoc-default 'fetched-xrefs alist)
|
||||
(funcall fetcher)))
|
||||
(xref-alist (xref--analyze xrefs)))
|
||||
(xref-alist (xref--analyze xrefs))
|
||||
(dd default-directory))
|
||||
(with-current-buffer (get-buffer-create xref-buffer-name)
|
||||
(setq default-directory dd)
|
||||
(xref--xref-buffer-mode)
|
||||
(xref--show-common-initialize xref-alist fetcher alist)
|
||||
(pop-to-buffer (current-buffer))
|
||||
|
|
@ -903,13 +905,15 @@ Return an alist of the form ((FILENAME . (XREF ...)) ...)."
|
|||
When there is more than one definition, split the selected window
|
||||
and show the list in a small window at the bottom. And use a
|
||||
local keymap that binds `RET' to `xref-quit-and-goto-xref'."
|
||||
(let ((xrefs (funcall fetcher)))
|
||||
(let ((xrefs (funcall fetcher))
|
||||
(dd default-directory))
|
||||
(cond
|
||||
((not (cdr xrefs))
|
||||
(xref-pop-to-location (car xrefs)
|
||||
(assoc-default 'display-action alist)))
|
||||
(t
|
||||
(with-current-buffer (get-buffer-create xref-buffer-name)
|
||||
(setq default-directory dd)
|
||||
(xref--transient-buffer-mode)
|
||||
(xref--show-common-initialize (xref--analyze xrefs) fetcher alist)
|
||||
(pop-to-buffer (current-buffer)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue