1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-15 03:11:54 -07:00
emacs/lisp/progmodes
João Távora e83c78b8c7 Eglot: respect user's Eldoc configuration by default
This change addresses the problems reported in many Elglot reports
dating back to early 2021 at least:

  https://github.com/joaotavora/eglot/issues/648
  https://github.com/joaotavora/eglot/issues/894
  https://github.com/joaotavora/eglot/issues/920
  https://github.com/joaotavora/eglot/issues/1031
  https://github.com/joaotavora/eglot/issues/1171

In one form or another, the reports point out that the multiple pieces
of information about the "thing at point" made available by the LSP
server are not all being considered by the ElDoc system.

The reason for this is Eglot setting/trampling the variables
'eldoc-documentation-strategy' and 'eldoc-documentation-functions' in
its minor more entry function.

The reason it did that is historical and is partially described in the
issues above.  But, evidently, it never made much sense, because so
many people want to override it, which requires setting
'eldoc-documentation-strategy' to the non-default value
'eldoc-documentation-compose'.

The problem was made worse by the fact that setting it as usual in
either the Customize menu or their init file didn't work, requiring a
fairly complex Elisp snippet.  That is now solved as of this commit.

If the user does not do any setting, then Eglot works basically the
same as before (i.e. shows only one piece of information).

It is arguable that the default value for
'eldoc-documentation-strategy' should change globally to
'eldoc-documentation-compose', but that has other subtle implications
and is not part of this commit.

* lisp/progmodes/eglot.el (eglot--managed-mode): Don't set Eldoc
variables greedily.
2023-02-20 22:44:30 +00:00
..
antlr-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
asm-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
autoconf.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
bat-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
bug-reference.el bug-reference: prevent match-data clobbering (bug#61395) 2023-02-10 19:22:56 +01:00
c-ts-common.el Fix c-ts-mode indentation 2023-02-06 18:29:38 -08:00
c-ts-mode.el Add declaration_list to c-ts-common-indent-type-regexp-alist 2023-02-20 15:07:56 +01:00
cc-align.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cc-awk.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cc-bytecomp.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cc-cmds.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cc-defs.el CC Mode: Fix a coding bug in c-make-keywords-re. This should fix bug #61135 2023-01-30 20:02:36 +00:00
cc-engine.el ; * lisp/progmodes/cc-engine.el: Delete trailing whitespace. 2023-01-27 11:25:08 +01:00
cc-fonts.el Merge from origin/emacs-28 2023-02-19 17:37:59 +01:00
cc-guess.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cc-langs.el Merge from origin/emacs-28 2023-02-19 17:37:59 +01:00
cc-menus.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cc-mode.el CC Mode: On removal of "typedef", remove pertinent types from c-found-types 2023-01-17 18:15:45 +00:00
cc-styles.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cc-vars.el CC Mode: Change the default value of objc-font-lock-extra-types to nil 2023-01-23 21:28:32 +00:00
cfengine.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cl-font-lock.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cmacexp.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cmake-ts-mode.el Make highlighting more regular across TS modes (bug#61205) 2023-02-05 15:50:16 +02:00
compile.el Tighten and simplify typescript compilation-mode regexps (bug#61104) 2023-02-06 17:47:00 +01:00
cperl-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cpp.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
csharp-mode.el Fix object initializer for csharp-mode (bug#61541) 2023-02-20 13:41:30 +01:00
cwarn.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
dcl-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
dockerfile-ts-mode.el Fix dockerfile-ts-mode line continuation indentation (bug#61131) 2023-01-29 00:28:48 -08:00
ebnf-abn.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebnf-bnf.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebnf-dtd.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebnf-ebx.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebnf-iso.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebnf-otz.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebnf-yac.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebnf2ps.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ebrowse.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
eglot.el Eglot: respect user's Eldoc configuration by default 2023-02-20 22:44:30 +00:00
elisp-mode.el Rename native-comp-deferred-compilation into native-comp-jit-compilation 2023-02-13 17:04:22 +01:00
erts-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
etags.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
executable.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
f90.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
flymake-cc.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
flymake-proc.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
flymake.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fortran.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
gdb-mi.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
glasses.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
go-ts-mode.el go-ts-mode: Highlight variable declarations 2023-02-06 04:42:12 +02:00
grep.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
gud.el ; * lisp/progmodes/gud.el (gud-tooltip-modes): Add ts- modes. 2023-01-07 18:44:16 -08:00
hideif.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
hideshow.el Teach 'hs-minor-mode' about tree-sitter based modes 2023-02-02 19:41:09 +02:00
icon.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
idlw-complete-structtag.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
idlw-help.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
idlw-shell.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
idlw-toolbar.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
idlwave.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
inf-lisp.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
java-ts-mode.el Add super node as a keyword 2023-02-15 18:55:17 +01:00
js.el Adjust jsx indentation 2023-02-19 20:48:06 +01:00
json-ts-mode.el Make tree-sitter based modes optional 2023-01-20 10:28:26 +02:00
ld-script.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
m4-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
make-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
meta-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
mixal-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
modula2.el Prefer defvar-keymap in modula2.el 2022-10-20 09:36:11 +02:00
octave.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
opascal.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
pascal.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
perl-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
prog-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
project.el (project-try-vc): Remove unused defvar/require 2023-02-18 15:11:13 +02:00
prolog.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ps-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
python.el Fix point moving when calling python-shell-send-region 2023-02-18 18:43:11 +02:00
ruby-mode.el Fix ruby-mode.el local command injection vulnerability (bug#60268) 2023-02-17 11:20:10 +01:00
ruby-ts-mode.el ruby-ts-mode: Also don't reindent 'identifier' when inside ERROR 2023-02-09 04:48:25 +02:00
rust-ts-mode.el ; * lisp/progmodes/rust-ts-mode.el (treesit-node-end): Declare. 2023-02-20 19:30:02 +02:00
scheme.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sh-script.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
simula.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sql.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
subword.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
tcl.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
typescript-ts-mode.el Typescript-ts-mode: Add switch case handling 2023-02-20 13:41:50 +01:00
vera-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
verilog-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
vhdl-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
which-func.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
xref.el * lisp/progmodes/xref.el: Bump the version. 2023-02-19 19:01:33 +02:00
xscheme.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00