{ "$schema": "https://mattn.github.io/vim-lsp-settings/schema.json", "_": [ { "command": "efm-langserver", "disabled": true, "requires": [ "go" ] } ], "apex": [ { "command": "apex-jorje-lsp", "requires": [ "java" ], "vim_plugin": { "extensions": [ "apxc", "apxt", "cls", "trigger", "tgr" ], "name": "ejholmes/vim-forcedotcom" } } ], "c": [ { "command": "clangd", "requires": [] } ], "clojure": [ { "command": "clojure-lsp", "requires": [], "root_uri_patterns": [ ".lein/", ".shadow-cljs/", "project.clj", "deps.edn", "shadow-cljs.edn" ] } ], "cobol": [ { "command": "cobol-language-support", "requires": [ "java" ] } ], "cpp": [ { "command": "clangd", "requires": [] } ], "cs": [ { "command": "omnisharp-lsp", "requires": [ "npm" ] } ], "css": [ { "command": "css-languageserver", "config": { "refresh_pattern": "\\([a-zA-Z0-9_-]\\+\\)$" }, "requires": [ "npm" ] } ], "d": [ { "command": "dls", "requires": [ "npm" ] } ], "dart": [ { "command": "analysis-server-dart-snapshot", "requires": [] } ], "dockerfile": [ { "command": "docker-langserver", "requires": [ "npm" ] } ], "elixir": [ { "command": "elixir-ls", "requires": [ "elixir" ], "vim_plugin": { "extensions": [ "ex", "exs" ], "name": "elixir-editors/vim-elixir" } } ], "elm": [ { "command": "elm-language-server", "requires": [ "npm" ], "root_uri_patterns": [ "elm.json" ], "vim_plugin": { "extensions": [ "elm" ], "name": "ElmCast/elm-vim" } } ], "erlang": [ { "command": "erlang-ls", "requires": [ "make", "rebar3" ], "root_uri_patterns": [ "rebar.config" ], "vim_plugin": { "extensions": [ "erl" ], "name": "vim-erlang/vim-erlang-runtime" } } ], "fortran": [ { "command": "fortls", "requires": [ "py" ] }, { "command": "fortls", "requires": [ "python3" ] } ], "fsharp": [ { "command": "fsautocomplete", "requires": [] }, { "command": "fsharp-language-server", "requires": [ "dotnet" ] } ], "glsl": [ { "command": "glslls", "requires": [ "cmake", "git", "make" ], "vim_plugin": { "extensions": [ "vert", "tesc", "tese", "glsl", "geom", "frag" ], "name": "tikhomirov/vim-glsl" } } ], "go": [ { "command": "gopls", "requires": [ "go" ], "root_uri_patterns": [ "go.mod" ] } ], "graphql": [ { "command": "gql-language-server", "requires": [ "npm", "watchman" ], "root_uri_patterns": [ "package.json", "tsconfig.json", ".gqlconfig" ] } ], "groovy": [ { "command": "groovy-language-server", "requires": [ "java" ], "root_uri_patterns": [ "build.gradle" ] } ], "html": [ { "command": "html-languageserver", "config": { "refresh_pattern": "\\(/\\|\\k\\+\\)$" }, "requires": [ "npm" ] } ], "java": [ { "command": "eclipse-jdt-ls", "requires": [ "java" ], "root_uri_patterns": [ "pom.xml", "build.gradle" ] } ], "javascript": [ { "command": "typescript-language-server", "requires": [ "npm" ], "root_uri_patterns": [ "package.json", "tsconfig.json" ] }, { "command": "javascript-typescript-stdio", "requires": [ "npm" ] }, { "command": "eslint-language-server", "requires": [ "git", "npm" ], "root_uri_patterns": [ "package.json", "tsconfig.json" ] } ], "javascriptreact": [ { "command": "typescript-language-server", "requires": [ "npm" ], "root_uri_patterns": [ "package.json", "tsconfig.json" ] }, { "command": "javascript-typescript-stdio", "requires": [ "npm" ] } ], "json": [ { "command": "json-languageserver", "config": { "refresh_pattern": "\\(\"\\k*\\|\\[\\|\\k\\+\\)$" }, "requires": [ "npm" ] } ], "jsonc": [ { "command": "json-languageserver", "requires": [ "npm" ], "vim_plugin": { "extensions": [ "cjson" ], "name": "neoclide/jsonc.vim" } } ], "julia": [ { "command": "julia-language-server", "requires": [ "julia" ], "vim_plugin": { "extensions": [ "jl" ], "name": "ajpaulson/julia-syntax.vim" } } ], "kotlin": [ { "command": "kotlin-language-server", "requires": [ "java" ], "vim_plugin": { "extensions": [ "kt" ], "name": "udalov/kotlin-vim" } } ], "less": [ { "command": "css-languageserver", "requires": [ "npm" ] } ], "lisp": [ { "command": "cl-lsp", "requires": [ "ros" ] } ], "lua": [ { "command": "emmylua-ls", "requires": [ "java" ] } ], "nim": [ { "command": "nimlsp", "requires": [], "vim_plugin": { "extensions": [ "nim" ], "name": "zah/nim.vim" } } ], "perl": [ { "command": "slp", "requires": [ "cpanm" ] }, { "command": "monastery", "requires": [ "cpanm" ] }, { "command": "perl-languageserver", "requires": [ "cpanm" ] } ], "php": [ { "command": "intelephense", "config": { "refresh_pattern": "\\(\\$[a-zA-Z0-9_:]*\\|\\k\\+\\)$" }, "requires": [ "npm" ] } ], "plaintex": [ { "command": "texlab", "requires": [] }, { "command": "digestif", "requires": [ "luarocks" ] } ], "ps1": [ { "command": "powershell-languageserver", "config": { "refresh_pattern": "\\(\\$[a-zA-Z0-9_:]*\\|\\k\\+\\)$" }, "requires": [ "pwsh" ], "vim_plugin": { "extensions": [ "ps1" ], "name": "PProvost/vim-ps1" } } ], "python": [ { "command": "pyls", "requires": [ "py" ] }, { "command": "pyls", "requires": [ "python3" ] }, { "command": "pyls-ms", "requires": [ "python" ] } ], "r": [ { "command": "r-languageserver", "requires": [ "R" ] } ], "reason": [ { "command": "reason-language-server", "requires": [], "root_uri_patterns": [ "package.json" ], "vim_plugin": { "extensions": [ "re", "rei" ], "name": "reasonml-editor/vim-reason-plus" } } ], "ruby": [ { "command": "solargraph", "requires": [ "gem" ] } ], "rust": [ { "command": "rls", "requires": [], "root_uri_patterns": [ "Cargo.toml" ] }, { "command": "rust-analyzer", "requires": [], "root_uri_patterns": [ "Cargo.toml" ] }, { "command": "ra_lsp_server", "requires": [], "root_uri_patterns": [ "Cargo.toml" ] } ], "sass": [ { "command": "css-languageserver", "requires": [ "npm" ] } ], "scala": [ { "command": "metals", "requires": [ "java" ], "root_uri_patterns": [ "build.sbt" ] } ], "sh": [ { "command": "bash-language-server", "requires": [ "npm" ] } ], "sql": [ { "command": "sql-language-server", "requires": [ "npm" ] }, { "command": "sqls", "config": { "refresh_pattern": "\\( \\zs\\k*\\|[a-zA-Z0-9_-]\\+\\)$" }, "requires": [ "go" ] } ], "swift": [ { "command": "sourcekit-lsp", "requires": [ "sourcekit-lsp" ], "root_uri_patterns": [ "Package.swift", ".xcodeproj", ".xcworkspace", "Cartfile", "Podfile" ], "vim_plugin": { "extensions": [ "swift" ], "name": "keith/swift.vim" } } ], "systemverilog": [ { "command": "svls", "requires": [] } ], "terraform": [ { "command": "terraform-lsp", "requires": [], "vim_plugin": { "extensions": [ "tf", "tfvars" ], "name": "hashivim/vim-terraform" } } ], "tex": [ { "command": "texlab", "requires": [] }, { "command": "digestif", "requires": [ "luarocks" ] } ], "typescript": [ { "command": "typescript-language-server", "requires": [ "npm" ], "root_uri_patterns": [ "package.json", "tsconfig.json" ] }, { "command": "eslint-language-server", "requires": [ "git", "npm" ], "root_uri_patterns": [ "package.json", "tsconfig.json" ] } ], "typescriptreact": [ { "command": "typescript-language-server", "requires": [ "npm" ], "root_uri_patterns": [ "package.json", "tsconfig.json" ] } ], "vim": [ { "command": "vim-language-server", "requires": [ "npm" ], "root_uri_patterns": [ ".vim/", "vimfiles/" ] } ], "vue": [ { "command": "vls", "requires": [ "npm" ], "root_uri_patterns": [ "package.json" ], "vim_plugin": { "extensions": [ "vue" ], "name": "posva/vim-vue" } } ], "xml": [ { "command": "lsp4xml", "requires": [ "java" ] } ], "yaml": [ { "command": "yaml-language-server", "requires": [ "npm" ] } ] }