Commit graph

3034 commits

Author SHA1 Message Date
Folke Lemaitre
dc6240f4d5
fix(hipatterns): don't color #add (use it too often as a private function in TS) 2026-05-18 12:32:49 +02:00
folke
7c1301b895 chore(build): auto-generated vimdocs 2026-04-26 18:17:07 +00:00
Folke Lemaitre
d840410047
fix(oxc): prefer top-level oxlint root_dir in monorepos 2026-04-26 20:15:56 +02:00
folke
cdc47ae615 chore(build): auto-generated vimdocs 2026-04-22 09:33:58 +00:00
Iordanis Petkakis
d92692309c
fix(refactoring)!: conform to upstream breaking changes on 2.0 branch (#7124)
## Description
`refactoring.nvim` had a new 2.0 release with some breaking changes.
Adjust the LazyVim Extra.

Left `opts` with everything default as there've been changes there as
well, but I don't use the plugin.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #7122
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-04-22 11:32:53 +02:00
github-actions[bot]
83d90f339d
chore(main): release 15.15.0 (#7034)
🤖 I have created a release *beep* *boop*
---


##
[15.15.0](https://github.com/LazyVim/LazyVim/compare/v15.14.0...v15.15.0)
(2026-04-02)


### Features

* **biome:** enable biome lsp for linting
([b2830cf](b2830cfcc5))
* **biome:** move biome extra from formatting.biome -&gt;
lang.typescript.biome
([242f098](242f0983de))
* **lazydev:** make lspconfig types available on word
`lspconfig.settings`
([36f5947](36f594716b))
* **lsp:** auto add organizeImport keymaps for LSPs that support it
([e54689e](e54689ebdc))
* **oxc:** added oxc extra for oxfmt and oxlint
([4e9eac5](4e9eac57ab))
* **sidekick:** ctrl+. focuses sidekick, but when already inside
sidekick, hides it
([50159fe](50159fe344))
* **typescript:** set `vim.g.lazyvim_ts_lsp = "tsgo"` to use the much
faster experimental lsp server
([e6f26f0](e6f26f0f23))
* **typescript:** split typescript extra in main, vtsls and tsgo
([9029d92](9029d928d2))


### Bug Fixes

* **biome:** added recommendation when root has biome config file
([ad25b31](ad25b31e51))
* **biome:** biome mason install is no longer needed
([5450006](5450006ccd))
* **biome:** use biome-check in conform that also fixes linting issues
and sorts imports
([954d874](954d8746e5))
* **lsp:** sort server names before setting keymaps
([6d0da34](6d0da34de9))
* **oxc:** added `fixKind = "all"`
([85afbbc](85afbbc94b))
* **r:** recommend for *.qmd instead of *qmd files
([3b3d649](3b3d649333))
* **terminal:** use Snacks.terminal.focus() for &lt;C-/&gt; mapping
([96f4f18](96f4f18d7d)),
closes [#7048](https://github.com/LazyVim/LazyVim/issues/7048)
* **treesitter:** `nvim-treesitter` on longer support nvim-0.11, so pin
when needed. Fixes
[#7092](https://github.com/LazyVim/LazyVim/issues/7092)
([ef272ff](ef272ff7cc))
* **tsgo:** disable inlayHints.functionLikeReturnTypes by default. Too
noisy
([8bcb620](8bcb620802))
* **tsgo:** remove some noisy inlay hints
([d07070b](d07070bf2f))
* **typescript:** remove keymaps for non-existing code actions
([53f4eab](53f4eabd77))
* **util.plugin:** single imports for extras
([1b4be53](1b4be534f1))


### Performance Improvements

* **extras:** never load nested extras
([8764dfb](8764dfbc8f))


### Reverts

* **lsp:** revert changes for
[#6456](https://github.com/LazyVim/LazyVim/issues/6456). Closes
[#6779](https://github.com/LazyVim/LazyVim/issues/6779)
([d0fe8c8](d0fe8c896f))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-02 10:13:57 +02:00
Folke Lemaitre
ef272ff7cc
fix(treesitter): nvim-treesitter on longer support nvim-0.11, so pin when needed. Fixes #7092 2026-04-02 10:11:23 +02:00
Folke Lemaitre
d07070bf2f
fix(tsgo): remove some noisy inlay hints 2026-04-02 10:08:02 +02:00
Folke Lemaitre
85afbbc94b
fix(oxc): added fixKind = "all" 2026-04-02 10:07:50 +02:00
Folke Lemaitre
96f4f18d7d
fix(terminal): use Snacks.terminal.focus() for <C-/> mapping
Switches from toggle() to focus() so that <C-/> only hides
the terminal when you're currently in it. Restores hide win keys
for terminal mode.

Closes #7048

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 09:50:09 +01:00
Ira Chan
2a5c892835
fix(clojure): remove redundant on-filetype() call that leaks keymaps (#7065)
## Summary

The Conjure spec calls `require("conjure.mapping")["on-filetype"]()`
unconditionally in its `config` function. Because the plugin loads on
`event = "LazyFile"` (any file open), this sets Conjure's buffer-local
keymaps on whatever buffer triggered the load, regardless of filetype.

This call is redundant. `require("conjure.main").main()` internally
calls `mapping.init(filetypes)`, which:

1. Registers a `FileType` autocmd scoped to supported filetypes.
2. Checks if the current buffer's filetype is in the list before calling
`on-filetype()`.

From `conjure/mapping.lua`:

```lua
M.init = function(filetypes)
  local group = vim.api.nvim_create_augroup("conjure_init_filetypes", {})
  if (true == config["get-in"]({"mapping", "enable_ft_mappings"})) then
    vim.api.nvim_create_autocmd("FileType", {
      group = group, pattern = filetypes,
      callback = autocmd_callback(M["on-filetype"])
    })
    if core.some(function(x) return x == vim.bo.filetype end, filetypes) then
      vim.schedule(M["on-filetype"])
    end
  end
end
```

The extra `on-filetype()` bypasses this guard. Removing it restores the
intended behavior: Conjure keymaps only appear in buffers whose filetype
Conjure supports.

## Related Issue(s)

Fixes #7064

## Repro

Save as `repro.lua` and run with `nvim -u repro.lua`:

```lua
vim.env.LAZY_STDPATH = ".repro"
load(vim.fn.system("curl -s https://raw.githubusercontent.com/folke/lazy.nvim/main/bootstrap.lua"))()

require("lazy.minit").repro({
  spec = {
    { "LazyVim/LazyVim", import = "lazyvim.plugins" },
    { import = "lazyvim.plugins.extras.lang.clojure" },
  },
})
```

Steps:
1. `nvim -u repro.lua`
2. `:e test.md`
3. `:nmap <localleader>` — observe 25+ Conjure keymaps on a markdown
buffer

After this fix, `:nmap <localleader>` on `test.md` shows no Conjure
keymaps.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-21 09:04:39 +01:00
Folke Lemaitre
6d0da34de9
fix(lsp): sort server names before setting keymaps
Sort server names so that `*` (wildcard) keymaps are registered before
named servers, ensuring server-specific keymaps take precedence.

Fixes #6956, Fixes #6903

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 08:55:20 +01:00
Folke Lemaitre
6dadcc2065
docs(typescript): add some docs on how to enable tsgo with vim global 2026-03-21 06:40:53 +01:00
Folke Lemaitre
8bcb620802
fix(tsgo): disable inlayHints.functionLikeReturnTypes by default. Too noisy 2026-03-21 06:40:32 +01:00
Folke Lemaitre
59126caa31
test: fix tests 2026-03-20 23:16:04 +01:00
Folke Lemaitre
4e9eac57ab
feat(oxc): added oxc extra for oxfmt and oxlint 2026-03-20 22:15:34 +01:00
Folke Lemaitre
9029d928d2
feat(typescript): split typescript extra in main, vtsls and tsgo 2026-03-20 21:40:30 +01:00
Folke Lemaitre
1b4be534f1
fix(util.plugin): single imports for extras 2026-03-20 20:42:57 +01:00
Folke Lemaitre
8764dfbc8f
perf(extras): never load nested extras 2026-03-20 20:14:37 +01:00
Folke Lemaitre
76cb567e5c
refactor(lsp): cleaner support for code_actions 2026-03-20 19:01:02 +01:00
Folke Lemaitre
53f4eabd77
fix(typescript): remove keymaps for non-existing code actions 2026-03-20 19:00:29 +01:00
Folke Lemaitre
ad25b31e51
fix(biome): added recommendation when root has biome config file 2026-03-20 16:09:49 +01:00
Folke Lemaitre
e54689ebdc
feat(lsp): auto add organizeImport keymaps for LSPs that support it 2026-03-20 16:06:44 +01:00
Folke Lemaitre
242f0983de
feat(biome): move biome extra from formatting.biome -> lang.typescript.biome 2026-03-20 15:59:25 +01:00
Folke Lemaitre
fbf52d5496
refactor(typescript): move typescript to sub module init 2026-03-20 15:58:39 +01:00
Folke Lemaitre
3b3d649333
fix(r): recommend for *.qmd instead of *qmd files 2026-03-20 14:39:02 +01:00
Folke Lemaitre
5450006ccd
fix(biome): biome mason install is no longer needed 2026-03-20 12:18:26 +01:00
Folke Lemaitre
36f594716b
feat(lazydev): make lspconfig types available on word lspconfig.settings 2026-03-20 12:14:02 +01:00
Folke Lemaitre
e6f26f0f23
feat(typescript): set vim.g.lazyvim_ts_lsp = "tsgo" to use the much faster experimental lsp server 2026-03-20 12:13:32 +01:00
Folke Lemaitre
b2830cfcc5
feat(biome): enable biome lsp for linting 2026-03-20 12:12:45 +01:00
Folke Lemaitre
50159fe344
feat(sidekick): ctrl+. focuses sidekick, but when already inside sidekick, hides it 2026-03-20 11:08:09 +01:00
Folke Lemaitre
6055e59613
style: format 2026-03-16 19:07:44 +01:00
Folke Lemaitre
954d8746e5
fix(biome): use biome-check in conform that also fixes linting issues and sorts imports 2026-03-16 18:11:45 +01:00
Rubin Bhandari
31caef21fd
refactor(dial): use inbuilt augends (#7035)
Dial now has built in augends for weekdays and Pythonic booleans


[monaqa/dial.nvim#augend-alias](https://github.com/monaqa/dial.nvim#augend-alias)

## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 14:45:56 +01:00
Folke Lemaitre
d0fe8c896f
revert(lsp): revert changes for #6456. Closes #6779 2026-03-01 10:50:17 +01:00
github-actions[bot]
fca0af57cc
chore(main): release 15.14.0 (#6738)
🤖 I have created a release *beep* *boop*
---


##
[15.14.0](https://github.com/LazyVim/LazyVim/compare/v15.13.0...v15.14.0)
(2026-03-01)


### Features

* **bufferline:** add &lt;leader&gt;bj keymap for BufferLinePick
([#6968](https://github.com/LazyVim/LazyVim/issues/6968))
([a50072f](a50072fa16))
* **dap:** close dap-float window with `q`.
([#6884](https://github.com/LazyVim/LazyVim/issues/6884))
([87c0027](87c0027892))
* **treesitter:** support query table in treesitter-textobjects mappings
([#6736](https://github.com/LazyVim/LazyVim/issues/6736))
([42c9f71](42c9f7152b))


### Bug Fixes

* **editor.overseer:** migrate to v2
([#6907](https://github.com/LazyVim/LazyVim/issues/6907))
([27824d7](27824d79a9))
* **fzf:** correct git_diff description from 'hunks' to 'files'
([#6983](https://github.com/LazyVim/LazyVim/issues/6983))
([e77d4ab](e77d4ab0d6))
* **lang.clang:** fix `clangd_extensions.nvim`
([#6804](https://github.com/LazyVim/LazyVim/issues/6804))
([730b691](730b69114d))
* **leap:** update urls to new leap.nvim repo. Fixes
[#6958](https://github.com/LazyVim/LazyVim/issues/6958)
([244af66](244af66f8b))
* **news:** resolve news.txt from $VIMRUNTIME first
([60fea62](60fea6236e)),
closes [#7019](https://github.com/LazyVim/LazyVim/issues/7019)
* **python:** set venv-selector.nvim override_notify = false
([#6936](https://github.com/LazyVim/LazyVim/issues/6936))
([b2917bd](b2917bd3bf))
* **terminal:** add -NoProfile to powershell shellcmdflag
([#6757](https://github.com/LazyVim/LazyVim/issues/6757))
([a507822](a507822c0f))
* **terminal:** partially revert previous mappings
([#6770](https://github.com/LazyVim/LazyVim/issues/6770))
([c64a617](c64a61734f))
* **treesitter:** fix `]c` textobject mappings when in diff mode
([#6911](https://github.com/LazyVim/LazyVim/issues/6911))
([16713e6](16713e6e12))
* **treesitter:** remove deleted jsonc parser
([#6848](https://github.com/LazyVim/LazyVim/issues/6848))
([92607e7](92607e79e0))
* **util.lsp:** `LazyVim.lsp.execute` only request single client
([#6904](https://github.com/LazyVim/LazyVim/issues/6904))
([a4e19e9](a4e19e9c9c))
* **util.lsp:** pass `formatters_by_ft` to `opts`
([#6894](https://github.com/LazyVim/LazyVim/issues/6894))
([03f1293](03f1293e33))
* **vtsls:** remove redundant deno logic, upstreamed in `nvim-lspconfig`
([#7011](https://github.com/LazyVim/LazyVim/issues/7011))
([8652c95](8652c95703))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-01 10:37:36 +01:00
Chomba
a50072fa16
feat(bufferline): add <leader>bj keymap for BufferLinePick (#6968)
## Summary
- Adds `<leader>bj` keymap to quickly pick a buffer using BufferLinePick

## Motivation
BufferLinePick provides a great UX for quickly jumping to buffers by
letter key, similar to LunarVim's buffer picker. This keymap makes it
easily discoverable.

## Changes
- Added `<leader>bj` → `:BufferLinePick` in bufferline plugin config

## Testing
- Tested locally with multiple buffers open
- Press `<Space>bj`, letter labels appear on tabs, press letter to jump
2026-03-01 10:36:15 +01:00
Phúc H. Lê Khắc
87c0027892
feat(dap): close dap-float window with q. (#6884)
## Description

nvim-dap-ui's widget window to preview value of object under the cursor
has ftype `dap-float`. Include it so it can be closed quickly like other
popup windows.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:35:14 +01:00
Frederick Zhang
b2917bd3bf
fix(python): set venv-selector.nvim override_notify = false (#6936)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->
<!-- === GH HISTORY FORMAT FENCE === --> <!--
### [`%h`]({{.url}}/commits/%H) %s%n%n%b%n
--> <!-- === GH HISTORY FORMAT FENCE === -->
<!-- === GH HISTORY FENCE === -->
This is a new option in venv-selector.nvim which stops it from
overriding vim.notify, so that it no longer interferes with noice.nvim.
See also [1].

[1] https://github.com/linux-cultist/venv-selector.nvim/issues/240

<!-- === GH HISTORY FENCE === -->

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->
N/A

## Screenshots

<!-- Add screenshots of the changes if applicable. -->
N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:33:07 +01:00
plsplsplslol
3f91371e21
docs(ui): fix typo (#6978)
## Description
this extra disables scope, not scroll

## Related Issue(s)

## Screenshots

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:32:37 +01:00
Talles Borges
e77d4ab0d6
fix(fzf): correct git_diff description from 'hunks' to 'files' (#6983)
Fixes #6960

`FzfLua git_diff` runs `git diff --name-only` which lists changed
**files**, not hunks.

Updated the description from `"Git Diff (hunks)"` to `"Git Diff
(files)"` to accurately reflect the command behavior.
2026-03-01 10:31:41 +01:00
Iordanis Petkakis
730b69114d
fix(lang.clang): fix clangd_extensions.nvim (#6804)
## Description
`clangd_extensions.nvim` does not seem to take `server` key any more,
which was used to setup the plugin with clangd `cmd`, `init_options`
etc. Instead you only need to configure the clangd server via lspconfig
and the plugin separately according to my understanding.

Remove the unnecessary `opts.setup` which also requires the plugin
itself and loads it and make the plugin lazy-loaded on c/c++ files only.

References:
- https://github.com/p00f/clangd_extensions.nvim#configuration
-
https://github.com/p00f/clangd_extensions.nvim/issues/49#issuecomment-1719654413

PS: I don't do C/C++, so testers would be welcome.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #6800
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:13:30 +01:00
Iordanis Petkakis
03f1293e33
fix(util.lsp): pass formatters_by_ft to opts (#6894)
## Description
Here
c64a61734f/lua/lazyvim/util/lsp.lua (L50)
we call directly `conform.format` with our specific options.

`conform.nvim` also allows passing options such as `lsp_format` directly
to `formatter_by_ft` as also can be seen
[here](5420c4b5ea/doc/conform.txt (L20-L21)).
Those options are not passed when we call `conform.format(opts)` in the
LSP formatter.

So, we add these options. Also, fix the correct name for general format
options, since it had been changed at some time in `conform.nvim` and
that change made it to the plugin spec, but not here.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #6893
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:12:58 +01:00
Iordanis Petkakis
16713e6e12
fix(treesitter): fix ]c textobject mappings when in diff mode (#6911)
## Description
It seems that after
5985ca0cf1
the default `]c` Neovim mapping in diff mode broke. This is an attempt
to fix that.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None, rather discussion #6910.
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:11:09 +01:00
Iordanis Petkakis
92607e79e0
fix(treesitter): remove deleted jsonc parser (#6848)
## Description

d2350758b3
removed parsers not hosted on Github, `jsonc` among them. Remove it from
LazyVim as well. On a fresh new installation, there's no problem and it
doesn't even install, but on existing installation you get an error when
updating about parser not available.

<img width="2559" height="313" alt="2025-12-07_11-24"
src="https://github.com/user-attachments/assets/99802b66-ff39-4631-89c6-ee4f2516acf1"
/>

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:08:09 +01:00
Iordanis Petkakis
8652c95703
fix(vtsls): remove redundant deno logic, upstreamed in nvim-lspconfig (#7011)
## Description
Since https://github.com/neovim/nvim-lspconfig/pull/4304
`nvim-lspconfig` has inherent deno logic to disambiguate between
deno/non-deno projects.

I believe it'd be better to remove the logic from LazyVim, since it
might lead to issues because of different behavior compared to
`nvim-lspconfig` defaults (whose logic doesn't only rely on the
existence of `deno/json`, but also looks for lock files and takes into
account which is the largest path with regards to the found pattern
files). It'd be better for users to change `root_dir` themselves if they
don't agree with the inherent logic.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 10:06:18 +01:00
Folke Lemaitre
ecd31f844e
test(extras): handle plugins using url instead of short format
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 10:04:26 +01:00
akioweh
27824d79a9
fix(editor.overseer): migrate to v2 (#6907)
## Description

Overseer.nvim recently-ish released v2.  
This PR updates the extras config according to the breaking changes.

A few commands were removed and the `bindings` config key was renamed to
`keymaps`.

I've also taken the liberty of marking the plugin as not lazy since it
lazy-loads itself.
The impact on startup is ~<1ms, which I think is acceptable over
lazy.nvim command/keymap listener overhead, but this is open to
discussion 🤷

## Related Issue(s)

fixes #6876 

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 09:33:20 +01:00
Iordanis Petkakis
a4e19e9c9c
fix(util.lsp): LazyVim.lsp.execute only request single client (#6904)
## Description
`LazyVim.lsp.execute` uses `vim.lsp.buf_request` which sends the request
to all attached clients.

`LazyVim.lsp.execute` seems to me to be the equivalent of
[vim.lsp.buf.execute_command](922816877f/runtime/lua/vim/lsp/buf.lua (L1366-L1376)),
but adds the option to also open in Trouble. Otherwise the request is
being made the same way. This command will be deprecated in 0.12 and
it's advised to use `client:exec_cmd` instead.

Since LazyVim supports Neovim >=0.11.2, it makes sense to refactor the
corresponding codeblock and use `client:cmd_exec` instead (it's already
available in Neovim 0.11).

I only changed the necessary parts where `vim.lsp.buf_request` was being
used and not Trouble (when `opts.open = true`), since I'm not familiar
with its codebase. That's also why I went for extending `params` in the
`else` branch instead of adding `title` into original `params`, since I
didn't know how Trouble will react to this change. Not sure if maybe
there also needs to be some change there.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #6900
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2026-03-01 09:31:44 +01:00
Folke Lemaitre
244af66f8b
fix(leap): update urls to new leap.nvim repo. Fixes #6958 2026-03-01 09:30:39 +01:00