Commit graph

3247 commits

Author SHA1 Message Date
Gaetan Lepage
70c9b3b890 modules/lsp: init
Co-authored-by: Matt Sturgeon <matt@sturgeon.me.uk>
2025-04-28 18:11:39 +02:00
Gaetan Lepage
9e0d2e4bed plugins/lsp: rename lua scope to nvim-lspconfig 2025-04-28 18:11:39 +02:00
Stanislav Asunkin
775e4d8856 plugins/luasnip: remove redundant jsregexp dependency
This dependency is already handled by nixpkgs.
2025-04-28 18:06:13 +03:00
Stanislav Asunkin
6415ae4a97 tests/modules/performance/combine-plugins: improve assertion messages
This commit eliminates assertions boilerplate and improves assertion
message by returning the number of plugins and their names.
2025-04-28 17:26:13 +03:00
Stanislav Asunkin
f28d384ab5 modules/performance/combine-plugins: propagate lua dependencies
Plugins from luarocks (e.g. telescope-nvim) have dependencies specified
in propagatedBuildInputs. These dependencies are not added as plugins in
Nvim runtime. They are added to LUA_PATH env var for wrapped neovim.
This commit collects all propagatedBuildInputs from input plugin list
and puts them in the combined plugin.
Note that such dependencies are never combined, because they are not
plugins.
2025-04-28 17:26:13 +03:00
Stanislav Asunkin
57e19ec3ec tests/modules/performance/combine-plugins: use stub plugins for tests
During the last half of the year many dependencies of plugins used in
the tests were changed in nixpkgs. To make tests more robust use a
specially crafted stub plugins.
2025-04-28 17:26:13 +03:00
Stanislav Asunkin
9c39ea4ccb tests/modules/performance/byte-compile-lua: fix tests
telescope-nvim doesn't have explicit dependency on plenary-nvim anymore.
Use noice-nvim which have a dependency on nui-nvim instead.
2025-04-28 17:26:13 +03:00
Stanislav Asunkin
014b143f6a tests/modules/performance/combine-plugins: restore test functionality
Replace test plugins to those that reflect the intention for the test.
2025-04-28 17:26:13 +03:00
Stanislav Asunkin
faa31d994c Revert "tests/modules-performance: add nvim-cmp to extraPlugins when necessary"
This reverts commit bb5b0a2655.

This change defeats the purpose of the dependency test. Revert it.
The test should verify that dependencies are correctly pulled. If
upstream plugin doesn't have dependency anymore, then a suitable
alternative should be used, not dependencies added manually.
2025-04-28 17:26:13 +03:00
Stanislav Asunkin
7bb135b091 Revert "modules/performance: temporary add plenary to extraPlugins to fix tests"
This reverts commit 5a491f4b2b.
2025-04-28 17:26:13 +03:00
github-actions[bot]
65d3f2f4ae flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/98f4fef7fd7b4a77245db12e33616023162bc6d9?narHash=sha256-lhVyVn1utb2UVTbyKJ6mfKB7wLTjrj14OlebvO0WU2s%3D' (2025-04-25)
  → 'github:nix-community/home-manager/be7cf1709b469a2a2c62169172a167d1fed3509f?narHash=sha256-WfnYH/i7DFzn4SESQfWviXiNUZjohZhzODqLwKYHIPI%3D' (2025-04-28)
• Updated input 'nix-darwin':
    'github:lnl7/nix-darwin/43975d782b418ebf4969e9ccba82466728c2851b?narHash=sha256-dyN%2BteG9G82G%2Bm%2BPX/aSAagkC%2BvUv0SgUw3XkPhQodQ%3D' (2025-04-12)
  → 'github:lnl7/nix-darwin/4515dacafb0ccd42e5395aacc49fd58a43027e01?narHash=sha256-Gyh/fkCDqVNGM0BWvk%2B4UAS17w2UI6iwnbQQCmc1TDI%3D' (2025-04-28)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/8d404a69efe76146368885110f29a2ca3700bee6?narHash=sha256-aRmUh0AMwcbdjJHnytg1e5h5ECcaWtIFQa6d9gI85AI%3D' (2025-04-18)
  → 'github:numtide/treefmt-nix/d1863f30d9ca67f679f9c2583d7adf674b5d9b8a?narHash=sha256-aRkV0ZpfT/ERgRlGrbgjHFRcEWdseltSO%2BwPnpdPYKg%3D' (2025-04-28)
2025-04-28 22:52:26 +10:00
Matt Sturgeon
3ea2ce7ff6
Revert "plugins/lsp: use vim.lsp native API"
This reverts commit 78f6ff0369.

From PR https://github.com/nix-community/nixvim/pull/3204
2025-04-28 13:08:48 +01:00
Gaetan Lepage
836994b8bc plugins/telescope/extensions: use mkExtension's dependencies parameter 2025-04-28 02:04:15 +02:00
Gaetan Lepage
436fd243cf plugins/telescope: add dependencies parameter for mkExtension 2025-04-28 02:04:15 +02:00
Gaetan Lepage
1a64636839 plugins: use mk{Neovim,Vim}Plugin's dependencies parameter 2025-04-28 02:04:13 +02:00
Gaetan Lepage
b66559d8ef lib/plugins/mk{Neovim,Vim}Plugin: add dependencies parameter 2025-04-28 02:04:13 +02:00
Gaetan Lepage
89c94d9ea7 plugins/telescope/media-files: use the top-level dependencies option 2025-04-27 11:28:18 +02:00
Gaetan Lepage
0a301a428a plugins/telescope/media-files: remove old rename warnings 2025-04-27 10:03:31 +02:00
Gaetan Lepage
8d8a856896 plugins/lsp: remove unused internal enabledServers.*.capabilities option 2025-04-26 21:52:14 +02:00
Matt Sturgeon
6c73350557
modules/diagnostic: rename diagnostics -> diagnostic.config
Currently we represent `vim.diagnostic.config()` as a top-level
`diagnostics` option. This means we have no clear namespace for
(e.g.) `vim.diagnostic.<action>` keymap functions.
2025-04-26 20:09:23 +01:00
Matt Sturgeon
c3a42a7ac4
plugins/lsp: remove standalonePlugins default
We don't need to add `plugins.lsp` to
`performance.combinePlugins.standalonePlugins`
now that `/lsp` is included in `pathsToLink`.
2025-04-26 19:55:38 +01:00
Matt Sturgeon
47f44488ae
modules/performance: document pathsToLink default
We set the default with "normal" priority, so explicitly list it as
`defaultText`.
2025-04-26 19:55:38 +01:00
Matt Sturgeon
6418cf3414
modules/performance: update runtimepath pathsToLink 2025-04-26 19:55:38 +01:00
Gaetan Lepage
f0ec773869 plugins/lsp: simplify implementation of per-server capabilities 2025-04-27 04:40:24 +10:00
Gaetan Lepage
2e559d3c3a plugins/lsp: simplify implementation of inlayHints 2025-04-26 19:35:31 +02:00
Matt Sturgeon
b72ba2e4e2
plugins/lsp/servers: replace rootDir with rootMarkers
nvim-lspconfig historically used `root_dir`, along with util functions
like `root_pattern`.

Now that neovim's own LSP API is used, `root_dir` appears to be subtly
different and `root_markers` is introduced to replace `util.root_pattern`.

Since we cannot easily warn about the `root_dir` differences, it can
usually be replaced with `root_markers`, and can still be manually
configured via `extraOptions` if needed; the simplest approach here is
to remove the `rootDir` option.
2025-04-25 16:04:38 +01:00
github-actions[bot]
a21504f2b0 flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/abfad3d2958c9e6300a883bd443512c55dfeb1be?narHash=sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs%3D' (2025-04-24)
  → 'github:nix-community/home-manager/98f4fef7fd7b4a77245db12e33616023162bc6d9?narHash=sha256-lhVyVn1utb2UVTbyKJ6mfKB7wLTjrj14OlebvO0WU2s%3D' (2025-04-25)
2025-04-25 12:15:24 +00:00
Wyatt Avilla
d86fe3df56
modules/diagnostics: fix virtual_lines example
The setting is named `current_line`, not `only_current_line`.

See https://neovim.io/doc/user/diagnostic.html#vim.diagnostic.Opts.VirtualLines
2025-04-24 16:50:32 -07:00
Matt Sturgeon
e6e5369535
lib/utils: fix literalLua multiline rendering
`lib.generators.toPretty` has bespoke handling for rendering nix strings
using either the `" "` or `'' ''` syntax, based on some heuristics.

Using `toPretty` instead of `toJSON` improves how literal-lua examples
render in the docs.
2025-04-24 19:07:34 +01:00
github-actions[bot]
62ecd39b40 flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/d31710fb2cd536b1966fee2af74e99a0816a61a8?narHash=sha256-TwbdiH28QK7Da2JQTqFHdb%2BUCJq6QbF2mtf%2BRxHVzEA%3D' (2025-04-23)
  → 'github:nix-community/home-manager/abfad3d2958c9e6300a883bd443512c55dfeb1be?narHash=sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs%3D' (2025-04-24)
2025-04-24 12:16:09 +00:00
Gaetan Lepage
b56177333d plugins/lsp: mark ruff_lsp as unpackaged 2025-04-24 12:48:41 +02:00
Gaetan Lepage
3c37b39a7b plugins/lsp: add package for just-lsp 2025-04-24 12:48:41 +02:00
Gaetan Lepage
991f3c8709 treewide: re-enable godot tests 2025-04-24 12:48:41 +02:00
github-actions[bot]
57b21234ce flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c?narHash=sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs%3D' (2025-04-17)
  → 'github:NixOS/nixpkgs/507b63021ada5fee621b6ca371c4fca9ca46f52c?narHash=sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA%3D' (2025-04-23)
• Updated input 'home-manager':
    'github:nix-community/home-manager/1d0e13904bd8c444ab1595f686ede5eff377e881?narHash=sha256-bUy25YkdRfdWPxSyx22igWi6g3rd3HXKFg%2ByL4dfBPY%3D' (2025-04-23)
  → 'github:nix-community/home-manager/d31710fb2cd536b1966fee2af74e99a0816a61a8?narHash=sha256-TwbdiH28QK7Da2JQTqFHdb%2BUCJq6QbF2mtf%2BRxHVzEA%3D' (2025-04-23)
2025-04-24 07:27:53 +00:00
github-actions[bot]
157bcae64a flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c?narHash=sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs%3D' (2025-04-17)
  → 'github:NixOS/nixpkgs/507b63021ada5fee621b6ca371c4fca9ca46f52c?narHash=sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA%3D' (2025-04-23)
2025-04-24 07:27:49 +00:00
Jeremy Fleischman
f42468972c
Fix typo: nix lists are space separated, not comma separated 2025-04-23 21:11:52 -07:00
Gaetan Lepage
78f6ff0369 plugins/lsp: use vim.lsp native API 2025-04-23 15:36:09 +02:00
github-actions[bot]
954e526448 flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/81541ea36d1fead4be7797e826ee325d4c19308b?narHash=sha256-%2BsFbKw1vFkulKYxsAbz84N0V/goSg808IgFh8iWe/As%3D' (2025-04-21)
  → 'github:nix-community/home-manager/1d0e13904bd8c444ab1595f686ede5eff377e881?narHash=sha256-bUy25YkdRfdWPxSyx22igWi6g3rd3HXKFg%2ByL4dfBPY%3D' (2025-04-23)
2025-04-23 12:15:53 +00:00
Gaetan Lepage
e91333ae56 plugins/lsp: remove string support for plugins.lsp.enabledServers elements 2025-04-23 09:54:47 +02:00
Gaetan Lepage
60638182b8 tests/none-ls: disable rego and opacheck on aarch64-linux (build failure of open-policy-agent) 2025-04-22 12:16:02 +00:00
Gaetan Lepage
4f72d5c43e tests/{none-ls,efmls-configs}: disable ansible-lint (build failure) 2025-04-22 12:16:02 +00:00
Gaetan Lepage
9eb03ab777 treewide: disable godot (build failure) 2025-04-22 12:16:02 +00:00
Gaetan Lepage
d6709382e7 tests: disable tests depending on broken sourcekit on aarch64-linux 2025-04-22 12:16:02 +00:00
Gaetan Lepage
70a9a0d4c1 plugins/none-ls: add package for opentofu_validate 2025-04-22 12:16:02 +00:00
github-actions[bot]
2d50e6b1f4 generated: Update
- Updated lspconfig-servers.json
- Updated none-ls.nix
- Updated rust-analyzer.nix
2025-04-22 12:16:02 +00:00
github-actions[bot]
3c16571378 flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/18dd725c29603f582cf1900e0d25f9f1063dbf11?narHash=sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38%3D' (2025-04-13)
  → 'github:NixOS/nixpkgs/ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c?narHash=sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs%3D' (2025-04-17)
• Updated input 'home-manager':
    'github:nix-community/home-manager/ae84885d9b6b62dc58ccd300e9ab321a3fd9f9c7?narHash=sha256-KjBMsjCzIOWgDqTZMYIriPFmHiQcCb2RhuDh5JF0VVc%3D' (2025-04-19)
  → 'github:nix-community/home-manager/81541ea36d1fead4be7797e826ee325d4c19308b?narHash=sha256-%2BsFbKw1vFkulKYxsAbz84N0V/goSg808IgFh8iWe/As%3D' (2025-04-21)
2025-04-22 12:15:36 +00:00
github-actions[bot]
6c36b335cd flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/18dd725c29603f582cf1900e0d25f9f1063dbf11?narHash=sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38%3D' (2025-04-13)
  → 'github:NixOS/nixpkgs/ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c?narHash=sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs%3D' (2025-04-17)
2025-04-22 12:15:32 +00:00
Henry Fraser
d4a0db2103 docs: fix typo 2025-04-22 10:08:34 +10:00
Gaetan Lepage
7a58109958 tests/dependencies: extend the disabled logic to the "examples" test case 2025-04-21 16:08:11 +02:00
Gaetan Lepage
91073486b2 tests/dependencies: add disabled list to skip testing broken dependencies 2025-04-21 13:55:36 +02:00