Lsp-mode: [Feature] better lsp-describe-session

Created on 14 Apr 2019  路  5Comments  路  Source: emacs-lsp/lsp-mode

  1. Replace tree-widget with org-mode text - it will be much easier to work with.
  2. Include the following info:
  3. Presence of the packages lsp-ui/yasnippet/company-lsp/etc + their state (enabled/disabled)
  4. Status of each server - which path will be used, which mode will be enabled in, path to the binary and so on.
  5. workspace folders + what we currently have
  6. blacklisted folders
  7. server-id -> folder association
  8. Anything else that could be useful for diagnostics.
discussion enhancement help wanted

All 5 comments

IMO, a package like ewoc (See https://www.gnu.org/software/emacs/manual/html_node/elisp/Abstract-Display.html) might be useful here.

Thanks for pointing this package, I might have used it in dap-mode for the templates.

One more functionality that we might have is to have a source block which installs the server, like that:

     #+BEGIN_SRC bash
      pip install python-language-server[all]
     #+END_SRC

I was just trying to setup lsp-pyls earlier, and was hoping there would be some diagnostics on what executables where being found/missing. I did see a brief message in on of the log buffers eventually, but it was far from obvious (I'm not a user of lsp-mode in general, so I'm a foreigner here).

I think it would be useful to make it clear what executables are missing, and when found, display the full paths to them. For example, it was using a python 2 pyls server from one of my environments, when I expected another. Something like flycheck-verify-setup would be fantastic.

org-mode would be a much more natural choice. I just spent ten minutes experimenting to figure out that one expands a node with _the left mouse button_, of all things.

Another desired functionality of lsp-describe-session:

  1. Stop running servers
    When I work on Java/Kotlin project, running two servers at the same time takes a lot of resources. Stopping servers from *lsp session* buffer would make resource management easier it these situations
  2. Remove stopped sessions
    Sometimes bash-ls would create session in my /tmp directory or even in mounted volume. This would provide a way to remove these sessions from list
Was this page helpful?
0 / 5 - 0 ratings