]> git.eshelyaron.com Git - emacs.git/commit
Manage cross-referenced files outside project in same server
authorMichael Livshin <mlivshin@gmail.com>
Sat, 15 Dec 2018 01:17:32 +0000 (01:17 +0000)
committerJoão Távora <joaotavora@gmail.com>
Sun, 16 May 2021 10:44:26 +0000 (11:44 +0100)
commit7eddb6f950b0a067a55347600d499cae608aa728
tree76a8ee0ffc867e4297d168216c0e1bb3e230ec99
parentfe9d6daa57102c7daebdcced2d7b6253cecb047c
Manage cross-referenced files outside project in same server

Close https://github.com/joaotavora/eglot/issues/686, Close https://github.com/joaotavora/eglot/issues/695.

Co-authored-by: João Távora <joaotavora@gmail.com>
* eglot.el (eglot-extend-to-xref): new defcustom, default to
nil.
(eglot--servers-by-xrefed-file): new hash table, mapping file names
to servers.
(eglot--managed-mode): use eglot-current-server, instead of
eglot--cached-server directly.
(eglot--current-server-or-lose): ditto.
(eglot--maybe-activate-editing-mode): ditto.
(eglot-current-server): move all cached-server update logic here -- if
eglot--cached-server is nil, try to find it using current project or
(optionally) xref location.
(eglot--xref-make-match): record the xref location.

* README.md (Customization): Mention new defcustom.

* NEWS.md: Mention new feature

GitHub-reference: fix https://github.com/joaotavora/eglot/issues/76
lisp/progmodes/eglot.el