Description
When you run lsp-treemacs-cycle-severity
, it disables lsp-treemacs-error-list-mode
. Because treemacs
and lsp-treemacs
both bind to the =
key, once the minor mode is disabled, treemacs tries to change the error list window width. I tracked this down to treemacs
changing to special-mode
. I cut some stuff out of the backtrace to keep it short.
* special-mode()
* #<subr treemacs-mode>()
* apply(#<subr treemacs-mode> nil)
* (cond (treemacs--in-this-buffer (apply mode-activation args)) ((eq major-mode 'treemacs-mode)
* #f(lambda (mode-activation &rest args) [t] ... (#<subr treemacs-mode>)
* apply(#f(lambda (mode-activation &rest args) [t] "... #<subr treemacs-mode>)
* treemacs--mode-check-advice(#<subr treemacs-mode>)
apply(treemacs--mode-check-advice #<subr treemacs-mode> nil)
treemacs-mode()
lsp-treemacs-render(((... (["Cycle Severity" lsp-treemacs-cycle-severity]))
lsp-treemacs-errors-list--refresh()
lsp-treemacs-errors-list()
funcall-interactively(lsp-treemacs-errors-list)
Then to verify it's not some hook I created causing the problem, I started emacs without my init.el, loaded lsp-treemacs
, turned on lsp-treemacs-error-list-mode
, and then ran special-mode
.
Also, probably unrelated, but I get the following error (silently), when I try to use the context menu:
Debugger entered--Lisp error: (wrong-type-argument commandp lsp-treemacs-list-errors-quick-fix)
call-interactively(lsp-treemacs-list-errors-quick-fix)
#f(compiled-function () #<bytecode -0x12772c5cc987d17d>)()
apply(#f(compiled-function () #<bytecode -0x12772c5cc987d17d>) nil)
timer-event-handler([t 0 0 1000 nil #f(compiled-function () #<bytecode -0x12772c5cc987d17d>) nil idle 0 nil])
Using the 'x' key works, but again, it disables lsp-treemacs-error-list-mode
and collapses the error list. I couldn't find lsp-treemacs-list-errors-quick-fix
anywhere.