Commit graph

3231 commits

Author SHA1 Message Date
Matt Sturgeon
a072e3c3a7
modules/lsp: enable servers."*" by default 2025-05-01 00:36:41 +01:00
Matt Sturgeon
b6e2016b7f
modules/lsp: check if server settings is empty
Avoid unnecessary lua lines by checking if `server.settings` is empty
before writing `vim.lsp.config()` to `init.lua`.
2025-05-01 00:36:16 +01:00
Matt Sturgeon
f2e96b67a3
modules/lsp: declare a stripped down servers."*" option
`"*"` is effectively a meta server, where shared config/defaults can be
set.

It shouldn't have options like `activate` or `package` which relate to
"real" servers. Therefore, we'll use `server-base.nix` directly, instead
of the full `server.nix` module.
2025-05-01 00:12:39 +01:00
Matt Sturgeon
04c3247144
docs: ensure path is escaped when copying module docs
Without escaping the path here, filepaths for options named things like
`*` will result in undefined behaviour.
2025-05-01 00:12:39 +01:00
Gaetan Lepage
6297f4c01a plugins/vimade: init 2025-05-01 00:40:14 +02:00
Gaetan Lepage
913a3521ab plugins/ident-tools: init 2025-04-30 22:49:38 +02:00
Johan Larsson
eeae362038
modules/lsp: add enable = true to wildcard config section 2025-04-30 20:55:26 +01:00
Johan Larsson
2d65c66a1a
modules/lsp: don't enable wildcard server
The wildcard server ("*") should have its config set, but not be enabled
through `vim.lsp.enable()`.
2025-04-30 20:55:26 +01:00
Matt Sturgeon
1df98b6636
modules/diagnostic: rename diagnostic.config -> diagnostic.settings
Follow up to #3226, in line with the decisions made in #3254.
2025-04-30 18:31:17 +01:00
Gaetan Lepage
405a564f3d plugins/actions-preview: init 2025-04-30 19:14:35 +02:00
Matt Sturgeon
21688b1d2a
modules/lsp/server: rename config -> settings
`config` is a loaded term within modules and options.

`settings` is the name usually used for freeform config in nixvim and
most other module configurations.
2025-04-30 17:35:46 +01:00
github-actions[bot]
fc6f00a7fd flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/fbc071e5c11e23fba50037de37268e3d8a1858eb?narHash=sha256-odZyAgjybOV1ha/lEoVL5HVOJw1YqFDfem9u3t%2BVB2o%3D' (2025-04-29)
  → 'github:NixOS/nixpkgs/423d2df5b04b4ee7688c3d71396e872afa236a89?narHash=sha256-vonyYAKJSlsX4n9GCsS0pHxR6yCrfqBIuGvANlkwG6U%3D' (2025-04-30)
2025-05-01 02:14:02 +10:00
github-actions[bot]
edc9a469c9 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/fbc071e5c11e23fba50037de37268e3d8a1858eb?narHash=sha256-odZyAgjybOV1ha/lEoVL5HVOJw1YqFDfem9u3t%2BVB2o%3D' (2025-04-29)
  → 'github:NixOS/nixpkgs/423d2df5b04b4ee7688c3d71396e872afa236a89?narHash=sha256-vonyYAKJSlsX4n9GCsS0pHxR6yCrfqBIuGvANlkwG6U%3D' (2025-04-30)
2025-05-01 02:14:02 +10:00
Matt Sturgeon
e34eaf8395
modules/lsp/server: declare package defaults
Convert the `attrsOf (servers.nix)` option to a freeform submodule.

Declare a `servers.nix` option for each lsp server listed in
`lsp-packages.nix` that has a known nixpkgs package.
2025-04-30 16:53:55 +01:00
Gaetan Lepage
276abde288 plugins/peek: init 2025-04-30 16:27:29 +02:00
Gaetan Lepage
76a319c5ab Revert "tests/lsp-servers: disable bitbake_language_server (build failure)"
This reverts commit cd3cbb1e26.
2025-04-30 08:31:32 +02:00
github-actions[bot]
0c4ef8e01b flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/29335f23bea5e34228349ea739f31ee79e267b88?narHash=sha256-v/sK3AS0QKu/Tu5sHIfddiEHCvrbNYPv8X10Fpux68g%3D' (2025-04-28)
  → 'github:NixOS/nixpkgs/fbc071e5c11e23fba50037de37268e3d8a1858eb?narHash=sha256-odZyAgjybOV1ha/lEoVL5HVOJw1YqFDfem9u3t%2BVB2o%3D' (2025-04-29)
• Updated input 'home-manager':
    'github:nix-community/home-manager/1ad123239957d40e11ef66c203d0a7e272eb48aa?narHash=sha256-m47zhftaod/oHOwoVT25jstdcVLhkrVGyvEHKjbnFHI%3D' (2025-04-29)
  → 'github:nix-community/home-manager/d2b3e6c83d457aa0e7f9344c61c3fed32bad0f7e?narHash=sha256-8Up4QPuMZEJBU0eefAY%2BnUe7DYKQQzvaHnMpNdwRgKA%3D' (2025-04-30)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/763f1ce0dd12fe44ce6a5c6ea3f159d438571874?narHash=sha256-gNrTO3pEjmu3WiuYrUHJrTGCFw9v%2BqZXCFmX/Vjf5WI%3D' (2025-04-28)
  → 'github:numtide/treefmt-nix/82bf32e541b30080d94e46af13d46da0708609ea?narHash=sha256-k5ELLpTwRP/OElcLpNaFWLNf8GRDq4/eHBmFy06gGko%3D' (2025-04-29)
2025-04-30 06:29:57 +00:00
github-actions[bot]
ce10295ddf flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/29335f23bea5e34228349ea739f31ee79e267b88?narHash=sha256-v/sK3AS0QKu/Tu5sHIfddiEHCvrbNYPv8X10Fpux68g%3D' (2025-04-28)
  → 'github:NixOS/nixpkgs/fbc071e5c11e23fba50037de37268e3d8a1858eb?narHash=sha256-odZyAgjybOV1ha/lEoVL5HVOJw1YqFDfem9u3t%2BVB2o%3D' (2025-04-29)
2025-04-30 06:29:53 +00:00
Gaetan Lepage
cd3cbb1e26 tests/lsp-servers: disable bitbake_language_server (build failure) 2025-04-29 15:37:54 +02:00
github-actions[bot]
8ffba233d6 generated: Update
- Updated lspconfig-servers.json
- Updated rust-analyzer.nix
2025-04-29 15:37:54 +02:00
github-actions[bot]
2435325720 flake/dev/flake.lock: Update
Flake lock file updates:

• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/507b63021ada5fee621b6ca371c4fca9ca46f52c?narHash=sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA%3D' (2025-04-23)
  → 'github:NixOS/nixpkgs/29335f23bea5e34228349ea739f31ee79e267b88?narHash=sha256-v/sK3AS0QKu/Tu5sHIfddiEHCvrbNYPv8X10Fpux68g%3D' (2025-04-28)
• Updated input 'home-manager':
    'github:nix-community/home-manager/be7cf1709b469a2a2c62169172a167d1fed3509f?narHash=sha256-WfnYH/i7DFzn4SESQfWviXiNUZjohZhzODqLwKYHIPI%3D' (2025-04-28)
  → 'github:nix-community/home-manager/1ad123239957d40e11ef66c203d0a7e272eb48aa?narHash=sha256-m47zhftaod/oHOwoVT25jstdcVLhkrVGyvEHKjbnFHI%3D' (2025-04-29)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/d1863f30d9ca67f679f9c2583d7adf674b5d9b8a?narHash=sha256-aRkV0ZpfT/ERgRlGrbgjHFRcEWdseltSO%2BwPnpdPYKg%3D' (2025-04-28)
  → 'github:numtide/treefmt-nix/763f1ce0dd12fe44ce6a5c6ea3f159d438571874?narHash=sha256-gNrTO3pEjmu3WiuYrUHJrTGCFw9v%2BqZXCFmX/Vjf5WI%3D' (2025-04-28)
2025-04-29 15:37:54 +02:00
github-actions[bot]
947621fe92 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/507b63021ada5fee621b6ca371c4fca9ca46f52c?narHash=sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA%3D' (2025-04-23)
  → 'github:NixOS/nixpkgs/29335f23bea5e34228349ea739f31ee79e267b88?narHash=sha256-v/sK3AS0QKu/Tu5sHIfddiEHCvrbNYPv8X10Fpux68g%3D' (2025-04-28)
2025-04-29 15:37:54 +02:00
Gaetan Lepage
944a316881 plugins/goto-preview: init 2025-04-29 13:52:09 +02:00
Matt Sturgeon
9caeb51238
docs: don't remove freeform sub-options
This isn't a fully correct fix, but it's much closer to the intended
behaviour.
2025-04-29 09:36:06 +01:00
Gaetan Lepage
19528509e5 plugins/dial: init 2025-04-29 00:48:55 +02:00
Heitor Augusto
7a6c5b4803 chore: remove empty "test" file 2025-04-28 23:12:38 +01:00
Heitor Augusto
bf276f5223
plugins/lspconfig: add HeitorAugustoLN as a maintainer 2025-04-28 15:09:18 -03:00
Matt Sturgeon
29aa22c41a
modules/lsp: use relative link to plugins.lspconfig 2025-04-28 18:54:05 +01:00
Matt Sturgeon
5c67a96a86
modules/lsp: get nvim-lspconfig link from plugins.lspconfig.package 2025-04-28 18:54:04 +01:00
Matt Sturgeon
812b2b0903
modules/lsp: update wording for plugins.lspconfig recommendation 2025-04-28 18:54:04 +01:00
Matt Sturgeon
556eb29548
plugins/lspconfig: init
A simplified replacement for `plugins.lsp`.

Eventually, once the `lsp` and `plugins.lspconfig` modules are mature,
`plugins.lsp` will be deprecated and/or aliased.
2025-04-28 18:54:04 +01:00
Matt Sturgeon
29aa60b43a
modules/lsp: add per-server name option
This allows users to override the name used for a given `lsp.servers.*`
entry. The default is still the attr-name.

This may be useful to inject raw lua, or to configure the same server in
different ways via different attrs.
2025-04-28 18:23:49 +01:00
Matt Sturgeon
3722f88c5d
modules/lsp: move server module to dedicated file 2025-04-28 18:04:11 +01:00
Matt Sturgeon
74368bcfc1
modules/lsp: move to dedicated directory 2025-04-28 17:59:05 +01:00
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