1

Refresh generated neovim config

This commit is contained in:
2024-08-15 13:01:03 +02:00
parent 64b51cf53a
commit f5af8e2b28
1836 changed files with 38979 additions and 31094 deletions

View File

@ -21,8 +21,10 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [awk_ls](#awk_ls)
- [azure_pipelines_ls](#azure_pipelines_ls)
- [bacon_ls](#bacon_ls)
- [ballerina](#ballerina)
- [basedpyright](#basedpyright)
- [bashls](#bashls)
- [bazelrc-lsp](#bazelrc-lsp)
- [beancount](#beancount)
- [bicep](#bicep)
- [biome](#biome)
@ -107,6 +109,7 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [ghdl_ls](#ghdl_ls)
- [ginko_ls](#ginko_ls)
- [gitlab_ci_ls](#gitlab_ci_ls)
- [glasgow](#glasgow)
- [gleam](#gleam)
- [glint](#glint)
- [glsl_analyzer](#glsl_analyzer)
@ -133,6 +136,7 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [hyprls](#hyprls)
- [idris2_lsp](#idris2_lsp)
- [intelephense](#intelephense)
- [janet_lsp](#janet_lsp)
- [java_language_server](#java_language_server)
- [jdtls](#jdtls)
- [jedi_language_server](#jedi_language_server)
@ -207,7 +211,9 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [prismals](#prismals)
- [prolog_ls](#prolog_ls)
- [prosemd_lsp](#prosemd_lsp)
- [protols](#protols)
- [psalm](#psalm)
- [pug](#pug)
- [puppet](#puppet)
- [purescriptls](#purescriptls)
- [pylsp](#pylsp)
@ -269,6 +275,7 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [steep](#steep)
- [stimulus_ls](#stimulus_ls)
- [stylelint_lsp](#stylelint_lsp)
- [superhtml](#superhtml)
- [svelte](#svelte)
- [svlangserver](#svlangserver)
- [svls](#svls)
@ -511,7 +518,7 @@ require'lspconfig'.angularls.setup{}
```
- `filetypes` :
```lua
{ "typescript", "html", "typescriptreact", "typescript.tsx" }
{ "typescript", "html", "typescriptreact", "typescript.tsx", "htmlangular" }
```
- `root_dir` :
```lua
@ -683,10 +690,10 @@ If you don't have a sketch yet create one.
```sh
$ arduino-cli sketch new test
$ cd test
$ cd test
```
You will need a `sketch.yaml` file in order for the language server to understand your project. It will also save you passing options to `arduino-cli` each time you compile or upload a file. You can generate the file like using the following commands.
You will need a `sketch.yaml` file in order for the language server to understand your project. It will also save you passing options to `arduino-cli` each time you compile or upload a file. You can generate the file by using the following commands.
First gather some information about your board. Make sure your board is connected and run the following:
@ -703,7 +710,7 @@ Then generate the file:
arduino-cli board attach -p /dev/ttyACM0 -b arduino:avr:uno test.ino
```
The resulting file should like like this:
The resulting file should look like this:
```yaml
default_fqbn: arduino:avr:uno
@ -718,7 +725,7 @@ Your folder structure should look like this:
└── sketch.yaml
```
For further instruction about configuration options, run `arduino-language-server --help`.
For further instructions about configuration options, run `arduino-language-server --help`.
Note that an upstream bug makes keywords in some cases become undefined by the language server.
Ref: https://github.com/arduino/arduino-ide/issues/159
@ -1055,6 +1062,36 @@ require'lspconfig'.bacon_ls.setup{}
```
## ballerina
Ballerina language server
The Ballerina language's CLI tool comes with its own language server implementation.
The `bal` command line tool must be installed and available in your system's PATH.
**Snippet to enable the language server:**
```lua
require'lspconfig'.ballerina.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "bal", "start-language-server" }
```
- `filetypes` :
```lua
{ "ballerina" }
```
- `root_dir` :
```lua
see source file
```
## basedpyright
https://detachhead.github.io/basedpyright
@ -1148,6 +1185,45 @@ require'lspconfig'.bashls.setup{}
```
## bazelrc-lsp
https://github.com/salesforce-misc/bazelrc-lsp
`bazelrc-lsp` is a LSP for `.bazelrc` configuration files.
The `.bazelrc` file type is not detected automatically, you can register it manually (see below) or override the filetypes:
```lua
vim.filetype.add {
pattern = {
['.*.bazelrc'] = 'bazelrc',
},
}
```
**Snippet to enable the language server:**
```lua
require'lspconfig'.bazelrc-lsp.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "bazelrc-lsp" }
```
- `filetypes` :
```lua
{ "bazelrc" }
```
- `root_dir` :
```lua
see source file
```
## beancount
https://github.com/polarmutex/beancount-language-server#installation
@ -3607,7 +3683,7 @@ require'lspconfig'.emmet_language_server.setup{}
```
- `filetypes` :
```lua
{ "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "typescriptreact" }
{ "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "typescriptreact", "htmlangular" }
```
- `root_dir` :
```lua
@ -3643,7 +3719,7 @@ require'lspconfig'.emmet_ls.setup{}
```
- `filetypes` :
```lua
{ "astro", "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "svelte", "typescriptreact", "vue" }
{ "astro", "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "svelte", "typescriptreact", "vue", "htmlangular" }
```
- `root_dir` :
```lua
@ -4246,6 +4322,29 @@ require'lspconfig'.fsautocomplete.setup{}
```lua
see source file
```
- `settings` :
```lua
{
FSharp = {
EnableReferenceCodeLens = true,
ExternalAutocomplete = false,
InterfaceStubGeneration = true,
InterfaceStubGenerationMethodBody = 'failwith "Not Implemented"',
InterfaceStubGenerationObjectIdentifier = "this",
Linter = true,
RecordStubGeneration = true,
RecordStubGenerationBody = 'failwith "Not Implemented"',
ResolveNamespaces = true,
SimplifyNameAnalyzer = true,
UnionCaseStubGeneration = true,
UnionCaseStubGenerationBody = 'failwith "Not Implemented"',
UnusedDeclarationsAnalyzer = true,
UnusedOpensAnalyzer = true,
UseSdkScripts = true,
keywordsAutocomplete = true
}
}
```
## fsharp_language_server
@ -4563,6 +4662,60 @@ require'lspconfig'.gitlab_ci_ls.setup{}
```
## glasgow
https://github.com/nolanderc/glasgow
Provides language features for WGSL (WebGPU Shading Language):
- Completions:
- Local functions/variables/types.
- Fields and swizzles.
- Builtin types and functions (`dot`, `reflect`, `textureSample`, `vec3`, `mat4x2`, etc.)
- Hover Documentation:
- Function signatures.
- Variable types.
- Includes builtin types and functions. Text is taken from the WGSL specification.
- Goto Definition
- Find all References
- Rename
- Formatter
`glasgow` can be installed via `cargo`:
```sh
cargo install glasgow
```
**Snippet to enable the language server:**
```lua
require'lspconfig'.glasgow.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "glasgow" }
```
- `filetypes` :
```lua
{ "wgsl" }
```
- `root_dir` :
```lua
root_pattern(".git")
```
- `settings` :
```lua
{}
```
- `single_file_support` :
```lua
true
```
## gleam
https://github.com/gleam-lang/gleam
@ -5050,7 +5203,7 @@ require'lspconfig'.harper_ls.setup{}
```
- `filetypes` :
```lua
{ "markdown", "rust", "typescript", "typescriptreact", "javascript", "python", "go", "c", "cpp", "ruby", "swift", "csharp", "toml", "lua" }
{ "markdown", "rust", "typescript", "typescriptreact", "javascript", "python", "go", "c", "cpp", "ruby", "swift", "csharp", "toml", "lua", "gitcommit", "java", "html" }
```
- `root_dir` :
```lua
@ -5561,7 +5714,7 @@ require'lspconfig'.hyprls.setup{}
```
- `filetypes` :
```lua
{ "*.hl", "hypr*.conf", ".config/hypr/*.conf" }
{ "hyprlang", "*.hl", "hypr*.conf", ".config/hypr/*.conf" }
```
- `root_dir` :
```lua
@ -5659,6 +5812,39 @@ require'lspconfig'.intelephense.setup{}
```
## janet_lsp
https://github.com/CFiggers/janet-lsp
A Language Server Protocol implementation for Janet.
**Snippet to enable the language server:**
```lua
require'lspconfig'.janet_lsp.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "janet-lsp", "--stdio" }
```
- `filetypes` :
```lua
{ "janet" }
```
- `root_dir` :
```lua
see source file
```
- `single_file_support` :
```lua
true
```
## java_language_server
https://github.com/georgewfraser/java-language-server
@ -6062,21 +6248,17 @@ require'lspconfig'.koka.setup{}
**Default values:**
- `capabilities` :
```lua
default capabilities, with offsetEncoding utf-8
```
- `cmd` :
```lua
{ "koka", "--language-server" }
{ "koka", "--language-server", "--lsstdio" }
```
- `filetypes` :
```lua
{ "kk" }
{ "koka" }
```
- `root_dir` :
```lua
git directory
```
- `single_file_support` :
```lua
@ -6185,8 +6367,8 @@ https://github.com/leanprover/lean4
Lean installation instructions can be found
[here](https://leanprover-community.github.io/get_started.html#regular-install).
The Lean 4 language server is built-in with a Lean 4 install
(and can be manually run with, e.g., `lean --server`).
The Lean language server is included in any Lean installation and
does not require any additional packages.
Note: that if you're using [lean.nvim](https://github.com/Julian/lean.nvim),
that plugin fully handles the setup of the Lean language server,
@ -6213,15 +6395,9 @@ require'lspconfig'.leanls.setup{}
```lua
see source file
```
- `options` :
```lua
{
no_lake_lsp_cmd = { "lean", "--server" }
}
```
- `root_dir` :
```lua
root_pattern("lakefile.lean", "lean-toolchain", "leanpkg.toml", ".git")
root_pattern("lakefile.toml", "lakefile.lean", "lean-toolchain", ".git")
```
- `single_file_support` :
```lua
@ -7285,6 +7461,18 @@ https://github.com/Decodetalkers/neocmakelsp
CMake LSP Implementation
Neovim does not currently include built-in snippets. `neocmakelsp` only provides completions when snippet support is enabled. To enable completion, install a snippet plugin and add the following override to your language client capabilities during setup.
```lua
--Enable (broadcasting) snippet capability for completion
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
require'lspconfig'.neocmake.setup {
capabilities = capabilities,
}
```
**Snippet to enable the language server:**
@ -8737,6 +8925,44 @@ require'lspconfig'.prosemd_lsp.setup{}
```
## protols
https://github.com/coder3101/protols
`protols` can be installed via `cargo`:
```sh
cargo install protols
```
A Language Server for proto3 files. It uses tree-sitter and runs in single file mode.
**Snippet to enable the language server:**
```lua
require'lspconfig'.protols.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "protols" }
```
- `filetypes` :
```lua
{ "proto" }
```
- `root_dir` :
```lua
see source file
```
- `single_file_support` :
```lua
true
```
## psalm
https://github.com/vimeo/psalm
@ -8769,6 +8995,37 @@ require'lspconfig'.psalm.setup{}
```
## pug
https://github.com/opa-oz/pug-lsp
An implementation of the Language Protocol Server for [Pug.js](http://pugjs.org)
PugLSP can be installed via `go get github.com/opa-oz/pug-lsp`, or manually downloaded from [releases page](https://github.com/opa-oz/pug-lsp/releases)
**Snippet to enable the language server:**
```lua
require'lspconfig'.pug.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "pug-lsp" }
```
- `filetypes` :
```lua
{ "pug" }
```
- `root_dir` :
```lua
see source file
```
## puppet
LSP server for Puppet.
@ -9802,22 +10059,29 @@ require'lspconfig'.ruby_lsp.setup{}
https://github.com/astral-sh/ruff
A Language Server Protocol implementation for Ruff, an extremely fast Python linter and code formatter, written in Rust. It can be installed via pip.
A Language Server Protocol implementation for Ruff, an extremely fast Python linter and code formatter, written in Rust. It can be installed via `pip`.
```sh
pip install ruff
```
_Requires Ruff v0.3.3 or later._
**Available in Ruff `v0.4.5` in beta and stabilized in Ruff `v0.5.3`.**
This is the new Rust-based version of the original `ruff-lsp` implementation. It's currently in alpha, meaning that some features are under development. Currently, the following capabilities are supported:
This is the new built-in language server written in Rust. It supports the same feature set as `ruff-lsp`, but with superior performance and no installation required. Note that the `ruff-lsp` server will continue to be maintained until further notice.
1. Diagnostics
2. Code actions
3. Formatting
4. Range Formatting
Server settings can be provided via:
Please note that the `ruff-lsp` server will continue to be maintained until further notice.
```lua
require('lspconfig').ruff.setup({
init_options = {
settings = {
-- Server settings should go here
}
}
})
```
Refer to the [documentation](https://docs.astral.sh/ruff/editors/) for more details.
@ -9831,7 +10095,7 @@ require'lspconfig'.ruff.setup{}
**Default values:**
- `cmd` :
```lua
{ "ruff", "server", "--preview" }
{ "ruff", "server" }
```
- `filetypes` :
```lua
@ -9959,6 +10223,9 @@ require'lspconfig'.rust_analyzer.setup{
}
}
```
Note: do not set `init_options` for this LS config, it will be automatically populated by the contents of settings["rust-analyzer"] per
https://github.com/rust-lang/rust-analyzer/blob/eb5da56d839ae0a9e9f50774fa3eb78eb0964550/docs/dev/lsp-extensions.md?plain=1#L26.
@ -9970,6 +10237,10 @@ require'lspconfig'.rust_analyzer.setup{}
- CargoReload: Reload current cargo workspace
**Default values:**
- `before_init` :
```lua
see source file
```
- `capabilities` :
```lua
{
@ -10137,10 +10408,6 @@ https://shopify.dev/docs/api/shopify-cli
`shopify` can be installed via npm `npm install -g @shopify/cli`.
```lua
require lspconfig.shopify_theme_ls.setup {}
```
Note: This LSP already includes Theme Check so you don't need to use the `theme_check` server configuration as well.
@ -11292,6 +11559,51 @@ require'lspconfig'.stylelint_lsp.setup{}
```
## superhtml
https://github.com/kristoff-it/superhtml
HTML Language Server & Templating Language Library
This LSP is designed to tightly adhere to the HTML spec as well as enforcing
some additional rules that ensure HTML clarity.
If you want to disable HTML support for another HTML LSP, add the following
to your configuration:
```lua
require'lspconfig'.superhtml.setup {
filetypes = { 'superhtml' }
}
```
**Snippet to enable the language server:**
```lua
require'lspconfig'.superhtml.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "superhtml", "lsp" }
```
- `filetypes` :
```lua
{ "superhtml", "html" }
```
- `root_dir` :
```lua
util.find_git_ancestor
```
- `single_file_support` :
```lua
true
```
## svelte
https://github.com/sveltejs/language-tools/tree/master/packages/language-server
@ -11539,17 +11851,7 @@ require'lspconfig'.tailwindcss.setup{}
```
- `filetypes` :
```lua
{ "aspnetcorerazor", "astro", "astro-markdown", "blade", "clojure", "django-html", "htmldjango", "edge", "eelixir", "elixir", "ejs", "erb", "eruby", "gohtml", "gohtmltmpl", "haml", "handlebars", "hbs", "html", "html-eex", "heex", "jade", "leaf", "liquid", "markdown", "mdx", "mustache", "njk", "nunjucks", "php", "razor", "slim", "twig", "css", "less", "postcss", "sass", "scss", "stylus", "sugarss", "javascript", "javascriptreact", "reason", "rescript", "typescript", "typescriptreact", "vue", "svelte", "templ" }
```
- `init_options` :
```lua
{
userLanguages = {
eelixir = "html-eex",
eruby = "erb",
templ = "html"
}
}
{ "aspnetcorerazor", "astro", "astro-markdown", "blade", "clojure", "django-html", "htmldjango", "edge", "eelixir", "elixir", "ejs", "erb", "eruby", "gohtml", "gohtmltmpl", "haml", "handlebars", "hbs", "html", "htmlangular", "html-eex", "heex", "jade", "leaf", "liquid", "markdown", "mdx", "mustache", "njk", "nunjucks", "php", "razor", "slim", "twig", "css", "less", "postcss", "sass", "scss", "stylus", "sugarss", "javascript", "javascriptreact", "reason", "rescript", "typescript", "typescriptreact", "vue", "svelte", "templ" }
```
- `on_new_config` :
```lua
@ -11564,6 +11866,12 @@ require'lspconfig'.tailwindcss.setup{}
{
tailwindCSS = {
classAttributes = { "class", "className", "class:list", "classList", "ngClass" },
includeLanguages = {
eelixir = "html-eex",
eruby = "erb",
htmlangular = "html",
templ = "html"
},
lint = {
cssConflict = "warning",
invalidApply = "error",
@ -11835,6 +12143,12 @@ require'lspconfig'.texlab.setup{}
```
**Commands:**
- TexlabBuild: Build the current buffer
- TexlabCancelBuild: Cancel the current build
- TexlabChangeEnvironment: Change the environment at current position
- TexlabCleanArtifacts: Clean the artifacts
- TexlabCleanAuxiliary: Clean the auxiliary files
- TexlabDependencyGraph: Show the dependency graph
- TexlabFindEnvironments: Find the environments at current position
- TexlabForward: Forward search from current position
**Default values:**

View File

@ -21,8 +21,10 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [awk_ls](#awk_ls)
- [azure_pipelines_ls](#azure_pipelines_ls)
- [bacon_ls](#bacon_ls)
- [ballerina](#ballerina)
- [basedpyright](#basedpyright)
- [bashls](#bashls)
- [bazelrc-lsp](#bazelrc-lsp)
- [beancount](#beancount)
- [bicep](#bicep)
- [biome](#biome)
@ -107,6 +109,7 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [ghdl_ls](#ghdl_ls)
- [ginko_ls](#ginko_ls)
- [gitlab_ci_ls](#gitlab_ci_ls)
- [glasgow](#glasgow)
- [gleam](#gleam)
- [glint](#glint)
- [glsl_analyzer](#glsl_analyzer)
@ -133,6 +136,7 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [hyprls](#hyprls)
- [idris2_lsp](#idris2_lsp)
- [intelephense](#intelephense)
- [janet_lsp](#janet_lsp)
- [java_language_server](#java_language_server)
- [jdtls](#jdtls)
- [jedi_language_server](#jedi_language_server)
@ -207,7 +211,9 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [prismals](#prismals)
- [prolog_ls](#prolog_ls)
- [prosemd_lsp](#prosemd_lsp)
- [protols](#protols)
- [psalm](#psalm)
- [pug](#pug)
- [puppet](#puppet)
- [purescriptls](#purescriptls)
- [pylsp](#pylsp)
@ -269,6 +275,7 @@ autogenerated from the Lua files. You can view this file in Nvim by running
- [steep](#steep)
- [stimulus_ls](#stimulus_ls)
- [stylelint_lsp](#stylelint_lsp)
- [superhtml](#superhtml)
- [svelte](#svelte)
- [svlangserver](#svlangserver)
- [svls](#svls)
@ -511,7 +518,7 @@ require'lspconfig'.angularls.setup{}
```
- `filetypes` :
```lua
{ "typescript", "html", "typescriptreact", "typescript.tsx" }
{ "typescript", "html", "typescriptreact", "typescript.tsx", "htmlangular" }
```
- `root_dir` :
```lua
@ -683,10 +690,10 @@ If you don't have a sketch yet create one.
```sh
$ arduino-cli sketch new test
$ cd test
$ cd test
```
You will need a `sketch.yaml` file in order for the language server to understand your project. It will also save you passing options to `arduino-cli` each time you compile or upload a file. You can generate the file like using the following commands.
You will need a `sketch.yaml` file in order for the language server to understand your project. It will also save you passing options to `arduino-cli` each time you compile or upload a file. You can generate the file by using the following commands.
First gather some information about your board. Make sure your board is connected and run the following:
@ -703,7 +710,7 @@ Then generate the file:
arduino-cli board attach -p /dev/ttyACM0 -b arduino:avr:uno test.ino
```
The resulting file should like like this:
The resulting file should look like this:
```yaml
default_fqbn: arduino:avr:uno
@ -718,7 +725,7 @@ Your folder structure should look like this:
└── sketch.yaml
```
For further instruction about configuration options, run `arduino-language-server --help`.
For further instructions about configuration options, run `arduino-language-server --help`.
Note that an upstream bug makes keywords in some cases become undefined by the language server.
Ref: https://github.com/arduino/arduino-ide/issues/159
@ -1055,6 +1062,36 @@ require'lspconfig'.bacon_ls.setup{}
```
## ballerina
Ballerina language server
The Ballerina language's CLI tool comes with its own language server implementation.
The `bal` command line tool must be installed and available in your system's PATH.
**Snippet to enable the language server:**
```lua
require'lspconfig'.ballerina.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "bal", "start-language-server" }
```
- `filetypes` :
```lua
{ "ballerina" }
```
- `root_dir` :
```lua
see source file
```
## basedpyright
https://detachhead.github.io/basedpyright
@ -1148,6 +1185,45 @@ require'lspconfig'.bashls.setup{}
```
## bazelrc-lsp
https://github.com/salesforce-misc/bazelrc-lsp
`bazelrc-lsp` is a LSP for `.bazelrc` configuration files.
The `.bazelrc` file type is not detected automatically, you can register it manually (see below) or override the filetypes:
```lua
vim.filetype.add {
pattern = {
['.*.bazelrc'] = 'bazelrc',
},
}
```
**Snippet to enable the language server:**
```lua
require'lspconfig'.bazelrc-lsp.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "bazelrc-lsp" }
```
- `filetypes` :
```lua
{ "bazelrc" }
```
- `root_dir` :
```lua
see source file
```
## beancount
https://github.com/polarmutex/beancount-language-server#installation
@ -3607,7 +3683,7 @@ require'lspconfig'.emmet_language_server.setup{}
```
- `filetypes` :
```lua
{ "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "typescriptreact" }
{ "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "typescriptreact", "htmlangular" }
```
- `root_dir` :
```lua
@ -3643,7 +3719,7 @@ require'lspconfig'.emmet_ls.setup{}
```
- `filetypes` :
```lua
{ "astro", "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "svelte", "typescriptreact", "vue" }
{ "astro", "css", "eruby", "html", "htmldjango", "javascriptreact", "less", "pug", "sass", "scss", "svelte", "typescriptreact", "vue", "htmlangular" }
```
- `root_dir` :
```lua
@ -4246,6 +4322,29 @@ require'lspconfig'.fsautocomplete.setup{}
```lua
see source file
```
- `settings` :
```lua
{
FSharp = {
EnableReferenceCodeLens = true,
ExternalAutocomplete = false,
InterfaceStubGeneration = true,
InterfaceStubGenerationMethodBody = 'failwith "Not Implemented"',
InterfaceStubGenerationObjectIdentifier = "this",
Linter = true,
RecordStubGeneration = true,
RecordStubGenerationBody = 'failwith "Not Implemented"',
ResolveNamespaces = true,
SimplifyNameAnalyzer = true,
UnionCaseStubGeneration = true,
UnionCaseStubGenerationBody = 'failwith "Not Implemented"',
UnusedDeclarationsAnalyzer = true,
UnusedOpensAnalyzer = true,
UseSdkScripts = true,
keywordsAutocomplete = true
}
}
```
## fsharp_language_server
@ -4563,6 +4662,60 @@ require'lspconfig'.gitlab_ci_ls.setup{}
```
## glasgow
https://github.com/nolanderc/glasgow
Provides language features for WGSL (WebGPU Shading Language):
- Completions:
- Local functions/variables/types.
- Fields and swizzles.
- Builtin types and functions (`dot`, `reflect`, `textureSample`, `vec3`, `mat4x2`, etc.)
- Hover Documentation:
- Function signatures.
- Variable types.
- Includes builtin types and functions. Text is taken from the WGSL specification.
- Goto Definition
- Find all References
- Rename
- Formatter
`glasgow` can be installed via `cargo`:
```sh
cargo install glasgow
```
**Snippet to enable the language server:**
```lua
require'lspconfig'.glasgow.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "glasgow" }
```
- `filetypes` :
```lua
{ "wgsl" }
```
- `root_dir` :
```lua
root_pattern(".git")
```
- `settings` :
```lua
{}
```
- `single_file_support` :
```lua
true
```
## gleam
https://github.com/gleam-lang/gleam
@ -5050,7 +5203,7 @@ require'lspconfig'.harper_ls.setup{}
```
- `filetypes` :
```lua
{ "markdown", "rust", "typescript", "typescriptreact", "javascript", "python", "go", "c", "cpp", "ruby", "swift", "csharp", "toml", "lua" }
{ "markdown", "rust", "typescript", "typescriptreact", "javascript", "python", "go", "c", "cpp", "ruby", "swift", "csharp", "toml", "lua", "gitcommit", "java", "html" }
```
- `root_dir` :
```lua
@ -5561,7 +5714,7 @@ require'lspconfig'.hyprls.setup{}
```
- `filetypes` :
```lua
{ "*.hl", "hypr*.conf", ".config/hypr/*.conf" }
{ "hyprlang", "*.hl", "hypr*.conf", ".config/hypr/*.conf" }
```
- `root_dir` :
```lua
@ -5659,6 +5812,39 @@ require'lspconfig'.intelephense.setup{}
```
## janet_lsp
https://github.com/CFiggers/janet-lsp
A Language Server Protocol implementation for Janet.
**Snippet to enable the language server:**
```lua
require'lspconfig'.janet_lsp.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "janet-lsp", "--stdio" }
```
- `filetypes` :
```lua
{ "janet" }
```
- `root_dir` :
```lua
see source file
```
- `single_file_support` :
```lua
true
```
## java_language_server
https://github.com/georgewfraser/java-language-server
@ -6062,21 +6248,17 @@ require'lspconfig'.koka.setup{}
**Default values:**
- `capabilities` :
```lua
default capabilities, with offsetEncoding utf-8
```
- `cmd` :
```lua
{ "koka", "--language-server" }
{ "koka", "--language-server", "--lsstdio" }
```
- `filetypes` :
```lua
{ "kk" }
{ "koka" }
```
- `root_dir` :
```lua
git directory
```
- `single_file_support` :
```lua
@ -6185,8 +6367,8 @@ https://github.com/leanprover/lean4
Lean installation instructions can be found
[here](https://leanprover-community.github.io/get_started.html#regular-install).
The Lean 4 language server is built-in with a Lean 4 install
(and can be manually run with, e.g., `lean --server`).
The Lean language server is included in any Lean installation and
does not require any additional packages.
Note: that if you're using [lean.nvim](https://github.com/Julian/lean.nvim),
that plugin fully handles the setup of the Lean language server,
@ -6213,15 +6395,9 @@ require'lspconfig'.leanls.setup{}
```lua
see source file
```
- `options` :
```lua
{
no_lake_lsp_cmd = { "lean", "--server" }
}
```
- `root_dir` :
```lua
root_pattern("lakefile.lean", "lean-toolchain", "leanpkg.toml", ".git")
root_pattern("lakefile.toml", "lakefile.lean", "lean-toolchain", ".git")
```
- `single_file_support` :
```lua
@ -7285,6 +7461,18 @@ https://github.com/Decodetalkers/neocmakelsp
CMake LSP Implementation
Neovim does not currently include built-in snippets. `neocmakelsp` only provides completions when snippet support is enabled. To enable completion, install a snippet plugin and add the following override to your language client capabilities during setup.
```lua
--Enable (broadcasting) snippet capability for completion
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
require'lspconfig'.neocmake.setup {
capabilities = capabilities,
}
```
**Snippet to enable the language server:**
@ -8737,6 +8925,44 @@ require'lspconfig'.prosemd_lsp.setup{}
```
## protols
https://github.com/coder3101/protols
`protols` can be installed via `cargo`:
```sh
cargo install protols
```
A Language Server for proto3 files. It uses tree-sitter and runs in single file mode.
**Snippet to enable the language server:**
```lua
require'lspconfig'.protols.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "protols" }
```
- `filetypes` :
```lua
{ "proto" }
```
- `root_dir` :
```lua
see source file
```
- `single_file_support` :
```lua
true
```
## psalm
https://github.com/vimeo/psalm
@ -8769,6 +8995,37 @@ require'lspconfig'.psalm.setup{}
```
## pug
https://github.com/opa-oz/pug-lsp
An implementation of the Language Protocol Server for [Pug.js](http://pugjs.org)
PugLSP can be installed via `go get github.com/opa-oz/pug-lsp`, or manually downloaded from [releases page](https://github.com/opa-oz/pug-lsp/releases)
**Snippet to enable the language server:**
```lua
require'lspconfig'.pug.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "pug-lsp" }
```
- `filetypes` :
```lua
{ "pug" }
```
- `root_dir` :
```lua
see source file
```
## puppet
LSP server for Puppet.
@ -9802,22 +10059,29 @@ require'lspconfig'.ruby_lsp.setup{}
https://github.com/astral-sh/ruff
A Language Server Protocol implementation for Ruff, an extremely fast Python linter and code formatter, written in Rust. It can be installed via pip.
A Language Server Protocol implementation for Ruff, an extremely fast Python linter and code formatter, written in Rust. It can be installed via `pip`.
```sh
pip install ruff
```
_Requires Ruff v0.3.3 or later._
**Available in Ruff `v0.4.5` in beta and stabilized in Ruff `v0.5.3`.**
This is the new Rust-based version of the original `ruff-lsp` implementation. It's currently in alpha, meaning that some features are under development. Currently, the following capabilities are supported:
This is the new built-in language server written in Rust. It supports the same feature set as `ruff-lsp`, but with superior performance and no installation required. Note that the `ruff-lsp` server will continue to be maintained until further notice.
1. Diagnostics
2. Code actions
3. Formatting
4. Range Formatting
Server settings can be provided via:
Please note that the `ruff-lsp` server will continue to be maintained until further notice.
```lua
require('lspconfig').ruff.setup({
init_options = {
settings = {
-- Server settings should go here
}
}
})
```
Refer to the [documentation](https://docs.astral.sh/ruff/editors/) for more details.
@ -9831,7 +10095,7 @@ require'lspconfig'.ruff.setup{}
**Default values:**
- `cmd` :
```lua
{ "ruff", "server", "--preview" }
{ "ruff", "server" }
```
- `filetypes` :
```lua
@ -9959,6 +10223,9 @@ require'lspconfig'.rust_analyzer.setup{
}
}
```
Note: do not set `init_options` for this LS config, it will be automatically populated by the contents of settings["rust-analyzer"] per
https://github.com/rust-lang/rust-analyzer/blob/eb5da56d839ae0a9e9f50774fa3eb78eb0964550/docs/dev/lsp-extensions.md?plain=1#L26.
@ -9970,6 +10237,10 @@ require'lspconfig'.rust_analyzer.setup{}
- CargoReload: Reload current cargo workspace
**Default values:**
- `before_init` :
```lua
see source file
```
- `capabilities` :
```lua
{
@ -10137,10 +10408,6 @@ https://shopify.dev/docs/api/shopify-cli
`shopify` can be installed via npm `npm install -g @shopify/cli`.
```lua
require lspconfig.shopify_theme_ls.setup {}
```
Note: This LSP already includes Theme Check so you don't need to use the `theme_check` server configuration as well.
@ -11292,6 +11559,51 @@ require'lspconfig'.stylelint_lsp.setup{}
```
## superhtml
https://github.com/kristoff-it/superhtml
HTML Language Server & Templating Language Library
This LSP is designed to tightly adhere to the HTML spec as well as enforcing
some additional rules that ensure HTML clarity.
If you want to disable HTML support for another HTML LSP, add the following
to your configuration:
```lua
require'lspconfig'.superhtml.setup {
filetypes = { 'superhtml' }
}
```
**Snippet to enable the language server:**
```lua
require'lspconfig'.superhtml.setup{}
```
**Default values:**
- `cmd` :
```lua
{ "superhtml", "lsp" }
```
- `filetypes` :
```lua
{ "superhtml", "html" }
```
- `root_dir` :
```lua
util.find_git_ancestor
```
- `single_file_support` :
```lua
true
```
## svelte
https://github.com/sveltejs/language-tools/tree/master/packages/language-server
@ -11539,17 +11851,7 @@ require'lspconfig'.tailwindcss.setup{}
```
- `filetypes` :
```lua
{ "aspnetcorerazor", "astro", "astro-markdown", "blade", "clojure", "django-html", "htmldjango", "edge", "eelixir", "elixir", "ejs", "erb", "eruby", "gohtml", "gohtmltmpl", "haml", "handlebars", "hbs", "html", "html-eex", "heex", "jade", "leaf", "liquid", "markdown", "mdx", "mustache", "njk", "nunjucks", "php", "razor", "slim", "twig", "css", "less", "postcss", "sass", "scss", "stylus", "sugarss", "javascript", "javascriptreact", "reason", "rescript", "typescript", "typescriptreact", "vue", "svelte", "templ" }
```
- `init_options` :
```lua
{
userLanguages = {
eelixir = "html-eex",
eruby = "erb",
templ = "html"
}
}
{ "aspnetcorerazor", "astro", "astro-markdown", "blade", "clojure", "django-html", "htmldjango", "edge", "eelixir", "elixir", "ejs", "erb", "eruby", "gohtml", "gohtmltmpl", "haml", "handlebars", "hbs", "html", "htmlangular", "html-eex", "heex", "jade", "leaf", "liquid", "markdown", "mdx", "mustache", "njk", "nunjucks", "php", "razor", "slim", "twig", "css", "less", "postcss", "sass", "scss", "stylus", "sugarss", "javascript", "javascriptreact", "reason", "rescript", "typescript", "typescriptreact", "vue", "svelte", "templ" }
```
- `on_new_config` :
```lua
@ -11564,6 +11866,12 @@ require'lspconfig'.tailwindcss.setup{}
{
tailwindCSS = {
classAttributes = { "class", "className", "class:list", "classList", "ngClass" },
includeLanguages = {
eelixir = "html-eex",
eruby = "erb",
htmlangular = "html",
templ = "html"
},
lint = {
cssConflict = "warning",
invalidApply = "error",
@ -11835,6 +12143,12 @@ require'lspconfig'.texlab.setup{}
```
**Commands:**
- TexlabBuild: Build the current buffer
- TexlabCancelBuild: Cancel the current build
- TexlabChangeEnvironment: Change the environment at current position
- TexlabCleanArtifacts: Clean the artifacts
- TexlabCleanAuxiliary: Clean the auxiliary files
- TexlabDependencyGraph: Show the dependency graph
- TexlabFindEnvironments: Find the environments at current position
- TexlabForward: Forward search from current position
**Default values:**