aboutsummaryrefslogtreecommitdiffstats
path: root/doc/lispintro/cons-2.txt
diff options
context:
space:
mode:
authorJoão Távora2026-04-16 08:03:33 +0100
committerJoão Távora2026-04-16 08:05:13 +0100
commit213b8e0b978a28305a1a3c9735114449962cfbef (patch)
tree834b3eea4dee286eafb77a969e7a552c61b31f8c /doc/lispintro/cons-2.txt
parentabcd0d3c8da637f3b0e828afcbc92ca90954744f (diff)
downloademacs-master.tar.gz
emacs-master.zip
Eglot: un-canonicalize server URIs to project's rootHEADmaster
Some LSP servers prefer to canonicalize all document URIs to their "true name", chasing all fs symbolic links. If the user is visiting a project under a symlink, say ~/myprojects/foo which points to /data/true/projects/foo. When visiting a ~/myprojects/foo/f.c and trying to jump to a nearby file f.h via LSP 'xref-find-definitions', the path should probably be ~/myproject/foo/f.h, not /data/true/projects/foo/f.h. Even though Emacs can recognize that the two files are the same, 'buffer-file-name' is not. This confuses tools like C-x C-f, ibuffer, and ultimately the users themselves who probably oblivious to the true place of the project. After all they started Eglot under a syminked file. * lisp/progmodes/eglot.el (eglot-lsp-server): Add trueroot slot. (eglot-uri-to-path): Rework to consider trueroot and project root.
Diffstat (limited to 'doc/lispintro/cons-2.txt')
0 files changed, 0 insertions, 0 deletions