Language Server Protocol

From ArchWiki

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.

LSP config for Neovim Language LSP server package
als Ada/SPARK ada_language_serverAUR
angularls Angular
bashls BASH bash-language-server
ccls C, C++, Objective-C ccls ccls-gitAUR
clangd C++ clang
clojure_lsp Clojure clojure-lsp-binAUR
cmake CMake cmake-language-serverAUR
codeqlls CodeQL codeqlAUR
cssls CSS, LESS, SASS vscode-css-languageserver
dartls Dart dart
denols JavaScript, TypeScript deno
dhall_lsp_server Dhall dhall-lsp-server
diagnosticls General purpose diagnostic-languageserverAUR
dockerls Dockerfile dockerfile-language-serverAUR
efm General purpose efm-langserverAUR
elixirls Elixir elixir-lsAUR
elmls Elm elm-language-serverAUR
erlangls Erlang erlang_ls-gitAUR
flow Flow flowAUR
fortls Fortran fortran-language-serverAUR
fsautocomplete F#
gdscript GDScript godot
ghcide Haskell ghcideAUR
gopls GOlang gopls
graphql GraphQL graphql-lspAUR
groovyls Groovy groovy-language-server-gitAUR
haxe_language_server Haxe
hls Haskell haskell-language-server
html HTML vscode-html-languageserver
intelephense PHP nodejs-intelephenseAUR
java_language_server Java java-language-serverAUR
jdtls Java jdtlsAUR
jedi_language_server Python jedi-language-server
jsonls JSON vscode-json-languageserver
julials Julia
kotlin_language_server Kotlin kotlin-language-serverAUR
leanls Lean
lua_ls Lua lua-language-server
marksman Markdown marksman-binAUR
metals Scala metalsAUR
nimls Nim
ocamlls OCaml, Reason
ocamllsp OCaml, Reason ocaml-lsp-gitAUR
omnisharp OmniSharp omnisharp-roslynAUR
perlls Perl perl-perl-languageserverAUR
phpactor PHP
powershell_es PowerShell
purescriptls PureScript purescript-language-serverAUR
pylsp Python python-lsp-server
pyright Python pyright
r_language_server R r-languageserverAUR
racket_langserver Racket
rescriptls ReScript
nil nix nil-gitAUR
rome Rome
rust_analyzer Rust rust-analyzer
scry Crystal scry-gitAUR
solargraph Ruby ruby-solargraphAUR
sorbet Ruby
sourcekit C, C++, Objective-C swift-languageAUR
sqlls SQL sql-language-serverAUR
sqls SQL
stylelint_lsp stylelint
svelte Svelte svelte-language-server
svls SystemVerilog
terraformls Terraform terraform-lsAUR
texlab (La)TeX texlab
tflint Terraform tflint
tsserver TypeScript typescript-language-server
vala_ls Vala vala-language-serverAUR
vimls Vim vim-language-serverAUR
vls V
volar[dead link 2023-10-29 ⓘ] Vue 3 vue-language-server
vuels Vue 2 nodejs-vlsAUR
yamlls YAML yaml-language-server
zls Zig zls