| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
|
|
|
| |
Problem:
Biome server becomes active if biome appears as a substring in
package.json, even when biome is not being used.
Solution:
Since biome is behind the `@biomejs` namespace we can narrow its
activation by appending `js` in the searched term.
|
| | |
|
| |
|
| |
Try to guess the root_dir by getting the lsp client from the previous buffer.
|
| |
|
|
|
|
|
| |
Convert the cmd from a static array to a function that checks for a
locally installed tsgo binary in node_modules/.bin/ before falling
back to the global installation. This ensures projects using
@typescript/native-preview as a local dependency will use the correct
version, matching the pattern already used by biome.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
`csharp` is not a valid filetype in neovim. csharp files are of filetype `cs`.
You can see a warning by doing
```lua
vim.ls.enable({ "ast_grep"})
```
`:checkheatlh lsp` or `:LspInfo` shows this warning:
```
vim.lsp: Enabled Configurations
⚠️ WARNING Unknown filetype 'csharp' (Hint: filename extension != filetype).
```
|
| | |
|
| | |
|
| |
|
| |
It's more up-to-date than systemd-language-server.
|
| |
|
|
|
|
| |
The file `.harper-dictionary.txt` stores the workspace-specific
dictionary, thus making it a root marker.
https://writewithharper.com/docs/integrations/language-server#Workspace-Dictionary
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Problem:
The client:exec_cmd callback was incorrectly referencing to err variable
from the outer scope instead of the cmd_err variable from its on scope.
Could cause problems when err is nil but the cmd_err is not.
Solution:
Changed the reference from err to cmd_err
|
| |
|
|
|
|
|
|
|
| |
Problem:
LTEX+ LS supports Asciidoc but it is not enabled by default.
Suggested way of extending configuration overrides the values,
since `filetypes` and `ltex.enabled` are Lua list.
Solution:
Add Asciidoc to the default list of enabled languages.
|
| |
|
|
|
|
|
|
| |
Problem:
Root detection doesn't support the new solution file format which is
now the default in .NET 10.
Solution:
Add '*.slnx' to root_dir function.
|
| | |
|
| |
|
|
|
|
| |
An LSP for [Brioche]: a package manger which uses custom TypeScript-like
recipe files. Repo: https://github.com/brioche-dev/brioche
[Brioche]: https://brioche.dev/
|
| | |
|
| | |
|
| |
|
| |
This LS does have a default (dynamic) `cmd` set.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
Problem:
LSP was not getting updated LSP on initialization when the token
is fetched from persistent storage
Solution:
Added `workspace/didChangeConfiguration` after token validation
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The previous implementation used `reuse_client = function() return true
end`,
which caused buf_ls to reuse *any* existing LSP client. As a result,
when a
Copilot LSP client was already running, buf_ls attempted to reuse that
client
instead of spawning its own, preventing buf_ls from attaching to .proto
buffers.
Restrict reuse_client so only buf_ls clients can be reused.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
### Problem
Currently, non-Deno TypeScript LSPs (`ts_ls`, `tsgo`, `vtsls`) have mechanisms to prevent conflicts by not activating `on_dir` when a Deno project is detected.
https://github.com/neovim/nvim-lspconfig/blob/e0fae251f8459940331960106d4bd9457cec23de/lsp/ts_ls.lua#L56-L73
However, `denols` lacks such a mechanism. As a result, when a non-Deno project is opened with `denols` enabled, both LSPs become attached.
### Solution
We will add conflict prevention logic to `denols`, similar to what non-Deno TypeScript LSPs have.
Currently, [Deno has a workspace feature](https://docs.deno.com/runtime/fundamentals/workspaces/), so we will detect the workspace root using `deno.lock` in the same way non-Deno TypeScript LSPs do. If `deno.lock` is not present and only `deno.json(c)` exists, we will handle it with a fallback.
### Testing
I confirmed that the expected LSP launched with the expected `root_dir` in the following situations:
- Deno monorepo project
- A single Deno project with a deno.lock file in the root
- A single Deno project without a deno.lock file in the root
- npm monorepo project
- A single npm project with a package-lock.json file in the root
- A single npm project without a package-lock.json (or any other non-Deno lock file) in the root
|
| | |
|
| |
|
|
|
| |
Problem: rust_analyzer does not contain the configs for codelens by default
Solution: Add codelens config
|
| |
|
|
|
| |
Problem: Current lua_ls config does not enable codelens and inlay hints
Solution: Add enable for both of them
|
| |
|
|
| |
Old versions accept both, however starting with v0.9.0 only
subcommands will be recognized.
|
| |
|
|
| |
Not having this was leading to the lsp falling back to watching *all* files,
and causes nasty side effects such as https://github.com/DopplerHQ/cli/issues/502
|
| |
|
|
|
|
|
| |
biome/eslint/ts_ls/tsgo/vtsls #4203
Even though Deno docs says that both deno.json and deno.jsonc files can
be used for its configuration, deno.jsonc was not being considered to
prevent biome/eslint/ts_ls/tsgo/vtsls to run in Deno projects.
|
| |
|
|
|
| |
The old file has compatibility issues with the newest version of the `lean.nvim` plugin.
The `lean.nvim` plugin now handles language server attachment internally and no longer requires `nvim-lspconfig`. However, for users who still need `nvim-lspconfig` installed (e.g., for other languages), the existing file would shadow the newer one, leading to conflicts. This update directly copies the relevant file from `lean.nvim` to resolve this.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem:
Search for node_modules uses a costly call to fn.globpath; the final
path resolution was not working on Linux.
Solution:
A custom function to resolve ngserver location from CMD wrappers on
Windows; and the corrected final path.
Co-authored-by: Erikson K. <erikson23@gmail.com>
|
| |
|
|
|
|
| |
Refactor project root detection logic to properly exclude ts_ls when
deno.json/deno.lock are at the same or higher level than project markers.
Co-authored-by: yzs <yuanzishuai@qq.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
If a config throws an error it fails the entire doc generation.
Solution:
Handle config error in docgen. Unfortunately, this doesn't show the
error message, it shows:
loop or previous error loading module 'lsp.volar'
instead of the actual `error('…')` message.
So meanwhile, document the current deprecation/rename pattern and use
`vim.notify()` instead.
|
| | |
|
| | |
|
| |
|
| |
Mirrors: https://github.com/swiftlang/vscode-swift/pull/1865
|
| |
|
|
|
|
|
|
|
|
| |
Prerequisites:
- Node.js and npm installed
- GitLab account with Duo Pro license
- Neovim 0.12+ (for inline completion support)
Limitations:
This initial implementation only supports GitLab.com.
Support for self-managed GitLab instances may be added in a future iteration.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
- Introduce emmylua CI job to type-check code.
- Drop old analyzers that haven't reported anything useful in a long
time and are redundant with luals/emmylua.
|
| |
|
|
|
|
|
| |
Problem:
`config.root` is not a valid field.
Solution
Replace it by `config.root_dir`.
|