Language Server Protocol (LSP) defines the protocol used between an editor or IDE and a language server that provides language features like auto complete, go to definition, find all references.
Language servers can be installed natively using the following packages. If your programming language is not in the list, search in the Arch official repositories or in the AUR.
This article or section needs language, wiki syntax or style improvements. See Help:Style for reference.
Reason: When multiple packages are listed in one row, it is not clear if users should install all of them to get LSP for given language, or choose one of the alternatives. (Discuss in
Talk:Language Server Protocol)
This article or section needs language, wiki syntax or style improvements. See Help:Style for reference.
LSP config for Neovim
|
Language
|
LSP server package
|
als
|
Ada/SPARK
|
ada_language_serverAUR
|
angularls
|
Angular
|
|
autotools
|
Autotools
|
autotools-language-serverAUR
|
bashls
|
BASH
|
bash-language-server
|
ccls, sourcekit, clangd
|
C, C++, Objective-C
|
ccls, swift-languageAUR, clang
|
clojure_lsp
|
Clojure
|
clojure-lsp-binAUR
|
cmake, neocmakelsp
|
CMake
|
cmake-language-serverAUR, neocmakelspAUR
|
codeqlls
|
CodeQL
|
codeqlAUR
|
cssls
|
CSS, LESS, SASS
|
vscode-css-languageserver
|
crystalline
|
Crystal
|
crystallineAUR
|
dartls
|
Dart
|
dart
|
dhall_lsp_server
|
Dhall
|
dhall-lsp-server
|
dockerls
|
Dockerfile
|
dockerfile-language-serverAUR
|
elixirls
|
Elixir
|
elixir-lsAUR
|
elmls
|
Elm
|
elm-language-serverAUR
|
erlangls
|
Erlang
|
erlang_ls-gitAUR
|
flow
|
Flow
|
flowAUR
|
fortls
|
Fortran
|
fortlsAUR, fortran-language-serverAUR
|
fsautocomplete, fsharp-language-server
|
F#
|
fsharp-language-serverAUR
|
gdscript
|
GDScript
|
godot
|
diagnosticls, efm
|
General purpose
|
diagnostic-languageserverAUR, efm-langserverAUR
|
gopls
|
GOlang
|
gopls
|
graphql
|
GraphQL
|
graphql-lspAUR
|
groovyls
|
Groovy
|
groovy-language-server-gitAUR
|
ghcide, hls
|
Haskell
|
ghcideAUR, haskell-language-server
|
haxe_language_server
|
Haxe
|
|
html
|
HTML
|
vscode-html-languageserver
|
denols
|
JavaScript
|
deno
|
java_language_server, jdtls
|
Java
|
java-language-serverAUR, jdtlsAUR
|
jsonls
|
JSON
|
vscode-json-languageserver
|
julials
|
Julia
|
|
kotlin_language_server
|
Kotlin
|
kotlin-language-serverAUR
|
lean3ls
|
Lean
|
lean-language-serverAUR
|
lua_ls
|
Lua
|
lua-language-server
|
marksman
|
Markdown
|
marksman
|
nimls
|
Nim
|
nimlspAUR
|
nil
|
nix
|
nil-gitAUR
|
ocamllsp
|
OCaml, Reason
|
ocaml-lsp-gitAUR
|
omnisharp
|
OmniSharp
|
omnisharp-roslynAUR
|
perlls
|
Perl
|
perl-perl-languageserverAUR
|
phpactor, intelephense
|
PHP
|
phpactorAUR, nodejs-intelephenseAUR
|
powershell_es
|
PowerShell
|
powershell-editor-servicesAUR
|
purescriptls
|
PureScript
|
purescript-language-serverAUR
|
pylsp, basedpyright, pyright, jedi_language_server, ruff
|
Python
|
python-lsp-server, pyright, basedpyrightAUR, jedi-language-server, ruff
|
r_language_server
|
R
|
r-languageserverAUR
|
racket_langserver
|
Racket
|
|
rescriptls
|
ReScript
|
rescript-lsAUR
|
biome
|
Rome
|
biome
|
rust_analyzer
|
Rust
|
rust-analyzer
|
solargraph, sorbet
|
Ruby
|
ruby-solargraphAUR, ruby-sorbet-runtime
|
metals
|
Scala
|
metalsAUR
|
sqlls, sqls
|
SQL
|
sqlsAUR, sql-language-serverAUR
|
stylelint_lsp
|
CSS
|
stylelint-lspAUR
|
svelte
|
Svelte
|
svelte-language-server
|
svls
|
SystemVerilog
|
svlsAUR
|
terraformls
|
Terraform
|
terraform-lsAUR
|
texlab
|
(La)TeX
|
texlab
|
tflint
|
Terraform
|
tflint
|
tsserver, denols
|
TypeScript
|
typescript-language-server, deno
|
vala_ls
|
Vala
|
vala-language-serverAUR
|
vimls
|
Vim
|
vim-language-serverAUR
|
v-analyzer
|
V
|
v-analyzer-binAUR
|
volar
|
Vue
|
vue-language-server
|
yamlls
|
YAML
|
yaml-language-server
|
zls
|
Zig
|
zls
|
See also