summaryrefslogtreecommitdiff
path: root/lisp/progmodes/java-ts-mode.el
diff options
context:
space:
mode:
authorJoão Távora <joaotavora@gmail.com>2023-03-12 18:19:40 +0000
committerJoão Távora <joaotavora@gmail.com>2023-03-12 18:43:35 +0000
commitb916ec88b2ffe22a49128f17cdfb78f0ab1bc713 (patch)
treecf8cfe39528013796d8494a6244da5a339963d9a /lisp/progmodes/java-ts-mode.el
parent1c05175c21adc5e3af4ea518f25b76be4c60abed (diff)
downloademacs-b916ec88b2ffe22a49128f17cdfb78f0ab1bc713.tar.gz
emacs-b916ec88b2ffe22a49128f17cdfb78f0ab1bc713.tar.bz2
emacs-b916ec88b2ffe22a49128f17cdfb78f0ab1bc713.zip
Make eglot-ensure's post-command-hook run a bit later (bug#62065)
'eglot-ensure', typically used in the major-mode-hook, use 'post-command-hook' to schedule an automated, non-interactive connection attempt to a server. The goal is to connect when the buffer is ready, i.e. after the user command that found the file. However, if there are dir-local or buffer-local variables to confirm, finding the file will cause a minibuffer prompt to appear. In that case, 'eglot-ensure's addition to the global post-command-hook runs before it was intended too and a connection is started prematurely. In turn, this means that a call to 'hack-dir-local-variables' -- which is part of the connection process -- which also needs a minibuffer prompt, collides with the previous one. This generates an error and confuses the user, who doesn't know if the directory-local variables have been applied or not. This commit fixes the clash by having 'eglot-ensure' set 'post-command-hook' buffer-locally. This causes the automated connection to take place, as intended, after the user's original file-finding command has ended. However, the problem reported in bug#62065 is not completely fixed. If the user answers "no" to the first "confirm local variables" "prompt, she will be prompted again in the second one. A subsequent commit will address this separate problem. * lisp/progmodes/eglot.el (eglot-ensure): Use buffer-local post-command-hook.
Diffstat (limited to 'lisp/progmodes/java-ts-mode.el')
0 files changed, 0 insertions, 0 deletions