Skip to content

y-kitamu/emacs-lsp-docker-plus

Repository files navigation

lsp-docker+

Description

lsp-docker+ is convenient wrapper of lsp-docker.

This package make it easier to switch language server via settings in .dir-locals.el.

You can easily use an actual development environment (docker image) as language server.

Usage

  • clone the repo
git clone https://github.com/y-kitamu/emacs-lsp-docker-plus.git
  • add settings in your init.el file.
(use-package lsp-docker+
  :load-path "<path-to-lsp-docker+>"
  :config
  (enable-lsp-docker+)
  )
  • create .dir-locals.el to your project root directory. Configurable variables are similar to these of lsp-docker. An example is as follows.
((python-mode
  . (
     (lsp-docker+-server-id . pyright)
     (lsp-docker+-docker-server-id . pyls-docker)
     (lsp-docker+-server-command . "pyright-langserver --stdio")
     (lsp-docker+-image-id . "<docker-image-id>")
     (lsp-docker+-container-name . "py-lsp-docker")
     (lsp-docker+-docker-options . "--env-file <path/to/envfile>")
     (lsp-docker+-priority. 10)
     (lsp-docker+-path-mappings . (("<path-to-project-root>" . "/project/")))
     ))
 (c++-mode
  . (
     (lsp-docker+-server-id . ccls)
     (lsp-docker+-docker-server-id . ccls-docker)
     (lsp-docker+-server-command . "ccls")
     (lsp-docker+-image-id . "<docker-image-id>")
     (lsp-docker+-container-name . "cpp-lsp-docker")
     (lsp-docker+-priority. 10)
     (lsp-docker+-path-mappings . (("<path-to-project-root>" . "/project/")))
     ))
(rust-mode
  . (
     (lsp-docker+-server-id . rust-analyzer)
     (lsp-docker+-docker-server-id . rust-analyzer-lsp-docker)
     (lsp-docker+-server-command . "rust-analyzer")
     (lsp-docker+-image-id . "<docker-image-id>")
     (lsp-docker+-container-name . "rust-lsp-docker")
     (lsp-docker+-path-mappings . (("<path-to-project-root>" . "/project/")))
     ))
 )

In .dir-locals.el, you must specify lsp-docker+-server-id, lsp-docker+-docker-server-id and lsp-docker+-server-command.

About

Convenient wrapper of lsp-docker

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published