aboutsummaryrefslogtreecommitdiffstats
path: root/lsp
Commit message (Collapse)AuthorAgeFilesLines
* feat(tailwindcss): support multiple import patterns #4371besserwisser35 hours1-2/+1
|
* feat(robotcode): support virtual env #4367Methapon200138 hours1-0/+3
|
* feat: make oxfmt support oxfmt.config.ts files (#4372)Nikoloz Buligini39 hours1-2/+3
|
* fix(tailwindcss_ls): add experimental.configFile to support Tailwind v4 #4222KhaNguyen4 days1-0/+37
|
* fix(biome): set lower priority for config files as root #4363Igor Lacerda8 days1-5/+4
|
* fix(roslyn_ls): handle roslyn.client.fixAllCodeAction command #4358Minh Khoi Do9 days1-17/+59
|
* feat(stylelint)!: migrate to stylelint-language-server #4351HyBer10 days1-26/+64
| | | | stylelint now has an official LS: [@stylelint/language-server](https://github.com/stylelint/vscode-stylelint/tree/main/packages/language-server)
* feat: add `vimdoc_ls` config #4347Barrett Ruth11 days1-0/+18
| | | | | | | Problem: no LSP config exists for vimdoc (vim help) files. Solution: add config for `vimdoc-language-server`, a language server providing formatting, diagnostics, document symbols, and go-to-definition for vimdoc files.
* fix(biome): root markers #4356Arne Christian Beer11 days1-0/+2
| | | | | | | | The current biome project root logic uses JS package manager lockfiles to get the project root in mono repos. If one is not using any JS (wasm) and raw CSS, that doesn't work out. In those cases, only a biome.json exists as a marker on where the frontend's project root inside the mono repo may be located.
* fix(rosyln_ls): use default offset encoding (utf-16) instead of utf-8 (#4354)陆离2026-03-191-1/+0
| | | | | | | | | Setting `offset_encoding` to `utf-8` is causing problem. See discussion at https://github.com/neovim/neovim/discussions/38375. According to LSP specification 3.17, when `positionEncoding` is not specified in server capability, it's value should be assumed to be `utf-16`, see https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#serverCapabilities. roslyn_ls does not response `positionEncoding` in initialize result (version `5.4.0-2.26162.5+e11fbc2bc8292680a92d731e5d9a6c7ee229262d`). One can verify this by setting LSP log level to debug, and read LSP log. So, setting `offset_encoding` in default config is a mistake.
* fix(metals): build.gradle.kts root marker #4353wvlab2026-03-191-1/+1
|
* fix(nextflow_ls): update cmd #4349Toni Hermoso Pulido2026-03-171-2/+2
|
* fix(roslyn_ls): add handler for roslyn.client.nestedCodeAction command #4350Minh Khoi Do2026-03-171-0/+69
| | | | | | | | | | | | | | | | | | | | Problem: Roslyn code actions can return nested actions using the `roslyn.client.nestedCodeAction` command. Neovim currently shows a warning when using call to action with nested actions, because no handler exists for this command: ``` Language server roslyn_ls does not support command roslyn.client.nestedCodeAction This command may require a client extension. ``` Solution: Implement a command handler that: - resolves code actions using `codeAction/resolve` - supports Roslyn's `NestedCodeActions` property - recursively handles nested actions - presents multiple nested actions via `vim.ui.select` - applies the final workspace edit or command
* feat(tsgo): enable inlay hints #4348Igor Lacerda2026-03-161-0/+15
|
* fix(roslyn_ls): navigation in macos decompiled files #4342Luke Elrod2026-03-161-0/+6
|
* feat: stan_ls #4346Andrew Mascioli2026-03-151-0/+13
|
* feat(svelte): enable inlay hintsIgor2026-03-131-0/+15
|
* Merge #4306 generate annotations for Lua typesJustin M. Keyes2026-03-1325-0/+25
|\
| * docs: apply auto-generated annotations to LSP configsYi Ming2026-03-1325-0/+25
| |
* | feat: mpls #4341Thibaud Gambier2026-03-111-0/+36
|/
* fix(julials): invalid path arg given to activate_env #4340Dominique2026-03-091-2/+8
| | | | | | | The argument to `activate_env` is a table, one entry of which is the name of the environment to activate if it is provided, or an empty string if it is not provided. closes #4335
* fix(rust_analyzer): recognize std lib sources in sysroot #4338Jan Palus2026-03-091-2/+31
| | | | | | | | | Problem: System installed sources of Rust standard library are not detected as library sources. Solution: Add sources location to paths used for library check. See also: https://rust-analyzer.github.io/book/configuration.html#cargo.sysrootSrc
* fix(slangd): add clangd specific root markers (#4339)Jonathan2026-03-091-1/+1
| | | | | | | Problem: Currently the only root marker for slangd is .git Solution: As mentioned [here](https://github.com/shader-slang/slang-vs-extension?tab=readme-ov-file#configurations), slangdconfig.json and .clangformat could be used as root markers
* feat(roslyn_ls): fallback to official roslyn binary name #4334Alexej Kowalew2026-03-091-1/+2
| | | | | | | | | Problem: As mentioned here (https://github.com/mason-org/mason-registry/pull/6330#issuecomment-3971724747), there is a change (https://github.com/dotnet/roslyn/pull/82201/changes) that the official language server can be easily installed via `dotnet` cli. Solution: Use the official binary name as a fallback.
* fix(rust_analyzer): pass environment in rust-analyzer.runSingle #4333XeroOl2026-03-061-1/+1
| | | | | | | When rust-analyzer wants to invoke cargo (eg, when the user uses code lenses), it sends a Command to nvim. This Command contains environment info that we're currently ignoring (ie, a value of RUSTC_TOOLCHAIN). With this change, we forward the environment variables that rust-analyzer wants to set to the spawned process.
* fix(pyrefly): schedule vim.notify in on_exit (#4336)skarrok2026-03-051-1/+3
|
* fix(pony_lsp)!: rename `pony_language_server` to `pony_lsp` #4330Matthias Wahl2026-02-272-8/+33
|
* fix(eslint): don't implicitly enable `experimental.useFlatConfig` #4329Sergei Slipchenko2026-02-271-27/+19
| | | | | | | | | | | | | | Problem: `experimental.useFlatConfig` forcefully turns on the logic to use a separate programmatic interface for flat config usage in ESLint. That interface was removed in ESLint v10 where flat config format is the only supported config format. But when the setting is turned on the language server still looks for that interface and fails when it can't find it. The end result is that language server turns off it's validation/diagnostics when used with ESLint v10. Solution: do not turn on `experimental.useFlatConfig` setting based on the presence of flat config files. Instead use the default behavior of the language server which matches the ESLint's default behavior and let the user explicitly override it via config when necessary.
* feat(oxlint): oxlint.config.ts root marker #4328Douglas Tesch2026-02-271-1/+1
|
* fix: drop invalid filetypes javascript.jsx, typescript.tsx #4326Omar Valdez2026-02-267-11/+2
| | | | | | | | | Problem: `checkhealth vim.lsp` reports the following warnings: - ⚠️ WARNING Unknown filetype 'javascript.jsx'. - ⚠️ WARNING Unknown filetype 'typescript.tsx'. Solution: Remove them.
* fix(oxfmt): remove unknown filetypes (#4325)Ben M2026-02-251-4/+0
| | | | | | | | | | | | | Problem: checkhealth shows warnings: - ⚠️ WARNING Unknown filetype 'javascript.jsx' (Hint: filename extension != filetype). - ⚠️ WARNING Unknown filetype 'typescript.tsx' (Hint: filename extension != filetype). - ⚠️ WARNING Unknown filetype 'handlebars' (Hint: filename extension != filetype). - ⚠️ WARNING Unknown filetype 'hbs' (Hint: filename extension != filetype). - ⚠️ WARNING Unknown filetype 'mdx' (Hint: filename extension != filetype). Solution: Remove unknown filetypes. But keep "handlebars" because it depends on a plugin.
* feat(oxlint, oxfmt): try local binaries in node_modules #4324T1ckbase2026-02-242-2/+16
|
* feat: kakehashi #4317atusy2026-02-241-0/+41
| | | | | Tree-sitter-based language server that bridges languages, editors, and tooling — providing semantic tokens, selection ranges, and LSP bridging for embedded languages (e.g., code blocks in Markdown).
* fix(clangd): languageIds for objc, cuda #4322Amitayas Banerjee2026-02-231-0/+4
| | | | | | | | | | | Problem: clangd currently receives incorrect languageId values for objc, objcpp and cuda. Solution: Update the filetype to languageId mapping to send the values expected by the language server. ref https://code.visualstudio.com/docs/languages/identifiers
* feat(fsautocomplete): support slnx #432Sven van Heugten2026-02-211-1/+1
|
* feat: fortitude #4313Loïc Reynier2026-02-121-0/+30
|
* Merge #4304 from isaacs/isaacs/deno-ts_ls-inferenceJustin M. Keyes2026-02-124-24/+136
|\
| * fix(vtsls): apply the same deno-excluding logic that ts_ls usesisaacs2026-02-041-6/+13
| |
| * fix(deno, ts_ls): deno filetype inferenceisaacs2026-02-043-18/+123
| | | | | | | | | | | | | | | | Update the logic to infer the type properly when a Deno file is part of a non-Deno monorepo project, enabling using the denols and ts_ls (or tsgo) LSPs side by side in the same monorepo without conflict. Fix: #4300
* | Merge #4299 oxlintJustin M. Keyes2026-02-111-21/+37
|\ \
| * | fix(oxlint): remove unknown filetypesKris Maglione2026-01-301-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The filetypes javascript.tsx and typescript.tsx are not valid and have been removed from other LSP configs recently. Solution: Remove them from the oxlint config.
| * | fix(oxlint): don't attempt to find oxlint section in package.jsonKris Maglione2026-01-301-11/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The Oxlint LSP configuration checks `package.json` for an "oxlint" section in its `root_dir` function. However, Oxlint has never supported configuration via `package.json`. Solution: Specify ".oxlintrc.json" in a `root_markers` table instead.
| * | feat(oxlint): automatically enable type-aware linting for oxlint when necessaryKris Maglione2026-01-301-10/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Type-aware linting is not enabled by default, and it isn't obvious at all how to do so in neovim based on the Oxlint documentation. Solution: Automatically enable type-aware linting if the necessary dependencies are installed and the Oxlint config file references TypeScript.
| * | feat(oxlint): mention :LxpOxlintFixAll command in help textKris Maglione2026-01-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: This commit originally implemented the `:LxpOxlintFixAll` command and added help text for it. On rebase, it conflicted with another commit which added the same command but did not add help text. Solution: Add help text for the `:LspOxlintFixAll` command.
* | | feat(oxfmt): jsonc root marker #4312James Vaughan2026-02-111-2/+2
| | |
* | | feat(neocmake): add config file as root_marker #4311Loïc Reynier2026-02-111-1/+1
| | |
* | | feat(fortls): alternative root_markers #4310Loïc Reynier2026-02-111-1/+1
| | |
* | | docs: fix vala_ls url #4308蒋慧赟2026-02-061-1/+1
| |/ |/|
* | docs(astro): example to fix tsdk path not found error #4307E.T2026-02-041-0/+36
| |
* | fix(ngserver): pull version from devDependencies too #4305bipedal-eel2026-02-041-1/+1
| |