https://github.com/johejo/lsm
Language Server Manager
https://github.com/johejo/lsm
go golang language-server lsp
Last synced: 12 months ago
JSON representation
Language Server Manager
- Host: GitHub
- URL: https://github.com/johejo/lsm
- Owner: johejo
- License: mit
- Archived: true
- Created: 2020-05-13T00:56:04.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-08-15T12:57:46.000Z (almost 4 years ago)
- Last Synced: 2024-06-19T05:58:26.956Z (about 2 years ago)
- Topics: go, golang, language-server, lsp
- Language: Go
- Size: 143 KB
- Stars: 17
- Watchers: 2
- Forks: 1
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Language Server Manager (LSM)
[](https://github.com/johejo/lsm/actions?query=workflow%3Aci)
[](https://codecov.io/gh/johejo/lsm)
## Motivation
Language Server is difficult to set up and is tightly coupled with each editor plugin.
https://github.com/neovim/nvim-lsp/issues/200#issuecomment-618807759
There are also lots of scripts to support different platforms and Language Servers, which is becoming difficult to maintain.
https://github.com/mattn/vim-lsp-settings/tree/master/installer
LSM aims to be a simple and cross platform installation manager for Language Server.
## Notice
Windows support is still incomplete.
## Language Server Destination
### macOS, Linux
```
$HOME/.local/share/lsm/servers
```
If you defined `$XDG_DATA_HOME`
```
$XDG_DATA_HOME/lsm/servers
```
### Windows
```
%LOCALAPPDATA%\lsm\servers
```
## Install
go get
```
go get github.com/johejo/lsm
```
pre-built binary
```
# COMMING SOON
```
## Usage
For example, when gopls is the target
install
```
lsm install gopls
```
uninstall
```
lsm uninstall gopls
```
list (Installation status of Language Servers)
```
lsm list
```
## Supported Language Servers
- [bash-language-server](https://github.com/bash-lsp/bash-language-server)
- [cmake-language-server](https://github.com/regen100/cmake-language-server)
- [dockerfile-language-server-nodejs](https://github.com/rcjsuen/dockerfile-language-server-nodejs)
- [eclipse.jdt.ls](https://github.com/eclipse/eclipse.jdt.ls)
- [efm-langserver](https://github.com/mattn/efm-langserver)
- [eslint-server(vscode-eslint)](https://github.com/microsoft/vscode-eslint)
- [fortran-language-server](https://github.com/hansec/fortran-language-server)
- [gopls](https://github.com/golang/tools/tree/master/gopls)
- [graphql-language-service-cli](https://github.com/graphql/graphiql)
- [kotlin-language-server](https://github.com/fwcd/kotlin-language-server)
- [lemminx](https://github.com/eclipse/lemminx) ([vscode-xml](https://github.com/redhat-developer/vscode-xml))
- [metals](https://scalameta.org/metals/)
- [purescript-language-server](https://github.com/nwolverson/purescript-language-server)
- [python-language-server](https://github.com/palantir/python-language-server)
- [reason-language-server](https://github.com/jaredly/reason-language-server)
- [rust-analyzer](https://rust-analyzer.github.io/)
- [sqls](https://github.com/lighttiger2505/sqls)
- [svelte-language-server](https://github.com/sveltejs/language-tools/tree/master/packages/language-server)
- [terraform-ls](https://github.com/hashicorp/terraform-ls)
- [terraform-lsp](https://github.com/juliosueiras/terraform-lsp)
- [typescript-language-server](https://github.com/theia-ide/typescript-language-server)
- [vim-language-server](https://github.com/iamcco/vim-language-server)
- [vls](https://github.com/vuejs/vetur/tree/master/server)
- [vscode-css-languagesever](https://github.com/vscode-langservers/vscode-css-languageserver)
- [vscode-html-languagesever](https://github.com/vscode-langservers/vscode-html-languageserver)
- [vscode-json-languagesever](https://github.com/vscode-langservers/vscode-json-languageserver)
- [yaml-language-sever](https://github.com/redhat-developer/yaml-language-server/)
We plan to add more Language Servers.
If you want to add a new Language Server, please create a PR.
## Thanks
Language Server Manager inherits the concept of [vim-lsp-settings](https://github.com/mattn/vim-lsp-settings).