1
0
Fork 0
mirror of https://github.com/nix-community/nixvim.git synced 2025-12-11 11:31:08 +01:00
Commit graph

4206 commits

Author SHA1 Message Date
Austin Horstman
ba8f6d40b1 plugins/treesitter: rewrite injections to handle nested
We now look for strings inside any function call (apply_expression)
provided the root attribute matches our allow-list (e.g.,
extraConfigLua). Added 3 level nesting support to handle multiple layers of
wrapping.

Tried breaking them up into sections with some more comments to align
with our test file.
2025-12-09 14:37:55 +00:00
Austin Horstman
e6872cd5d4 plugins/treesitter: add treesitter injections test file
Not a true automated test file, just good for a visual smoke test.
2025-12-09 14:37:55 +00:00
Austin Horstman
3e6e23a719 plugins/treesitter: match -> any-of pattern
No real performance gain but might be easier to maintain / understand.
2025-12-09 14:37:55 +00:00
Austin Horstman
507d48c3ae plugins/treesitter: update injections to handle functions
Handle highlighting strings that occur after a function condition.
2025-12-09 14:37:55 +00:00
nixvim-ci[bot]
1efe549e2a flake: Update
flake/dev/flake.lock updates:
• Updated input 'home-manager':
    'github:nix-community/home-manager/a7887340779d5e70ef68012f3823568ee59eaa30?narHash=sha256-/cjofqGxSWpRj2XJM%2BBd5VUgWDkBWSxxO//HE%2BzOHMY%3D' (2025-12-08)
  → 'github:nix-community/home-manager/e5b1f87841810fc24772bf4389f9793702000c9b?narHash=sha256-BVVyAodLcAD8KOtR3yCStBHSE0WAH/xQWH9f0qsxbmk%3D' (2025-12-08)
2025-12-09 14:14:32 +00:00
Matt Sturgeon
53b702b367 wrappers: expose platform wrapper modules via build.*Module options
Expose the platform wrapper modules as the Nixvim configuration options
`build.nixosModule`, `build.homeModule`, and `build.nixDarwinModule`.
This makes it possible to reuse a single Nixvim configuration across
NixOS, Home Manager, and nix-darwin without re-importing modules into
`programs.nixvim` manually.

Evaluating these wrapper modules requires a "bare" Nixvim configuration;
one that does not define `pkgs` or `nixpkgs.hostPlatform`. Such a
configuration would normally fail to evaluate, but disabling
`_module.check` provides a sufficiently lazy evaluation to access the
wrapper options.

To prevent the `_module.check = false` module from leaking into user
configs, it has a unique module key and gets disabled inside the wrapper
modules (`wrappers/_shared.nix`).
2025-12-09 08:01:49 +00:00
Alejandro Pinar Ruiz
05c57f2e74 fix: add missing lib 2025-12-08 16:18:17 +00:00
Matt Sturgeon
463fb0ad5d modules/lsp: fix mkServerOption homepage tryEval evaluation
`lib.pipe` strictly evaluates intermediate steps using `foldl'`. As a
result, piping `(opts: opts.package.default or null)` →
`(package: (tryEval package).value)` is ineffective because
`opts.package.default` is evaluated before `tryEval` can catch exceptions.

Instead, inline `opts.package.default` directly into the `tryEval`
expression, ensuring missing package errors caught correctly.

Resolves errors when building NixOS or nix-darwin docs that include
Nixvim options.

Adds a regression test.
2025-12-08 15:37:52 +00:00
nixvim-ci[bot]
6ab2b305da flake: Update
flake/dev/flake.lock updates:
• Updated input 'flake-compat':
    'github:NixOS/flake-compat/4dd386262c30922367e6b549c81e9cbdf8f3132f?narHash=sha256-JbjxGEA9gVRZ47LylRFe7TLVjI2KaoW0cwflbQ2apBs%3D' (2025-12-04)
  → 'github:NixOS/flake-compat/63d095ca43128741b16fc354b1e918757e6b66e5?narHash=sha256-QN1r/zNqvXHwWqlRAnRtFf4CQwIOJx58PtdExIzAw94%3D' (2025-12-08)
• Updated input 'home-manager':
    'github:nix-community/home-manager/27a6182347ccae90a88231ae0dc5dfa7d15815bb?narHash=sha256-fZatn/KLfHLDXnF0wy7JxXqGaZmGDTVufT4o/AOlj44%3D' (2025-12-06)
  → 'github:nix-community/home-manager/a7887340779d5e70ef68012f3823568ee59eaa30?narHash=sha256-/cjofqGxSWpRj2XJM%2BBd5VUgWDkBWSxxO//HE%2BzOHMY%3D' (2025-12-08)
2025-12-08 12:23:10 +00:00
Gaetan Lepage
451b1806a6 tests/modules/dependencies: use the remaining *Package option 2025-12-07 23:34:03 +00:00
Gaetan Lepage
8441008175 treewide: remove old deprecation warnings 2025-12-07 23:34:03 +00:00
Gaetan Lepage
629f9d75f8 treewide: remove with lib; 2025-12-07 22:46:34 +00:00
nixvim-ci[bot]
cd0443e166 flake: Update
flake/dev/flake.lock updates:
• Updated input 'nix-darwin':
    'github:lnl7/nix-darwin/e95de00a471d07435e0527ff4db092c84998698e?narHash=sha256-HN84sByg9FhJnojkGGDSrcjcbeioFWoNXfuyYfJ1kBE%3D' (2025-11-26)
  → 'github:lnl7/nix-darwin/7e22bf538aa3e0937effcb1cee73d5f1bcc26f79?narHash=sha256-b7W9WsvyMOkUScNxbzS45KEJp0iiqRPyJ1I3JBE%2BoEE%3D' (2025-12-06)
2025-12-07 13:58:44 +00:00
saygo-png
b65233d5f9 docs: discourage use of follows
Signed-off-by: saygo-png <saygo.mail@proton.me>
2025-12-06 17:59:37 +00:00
nixvim-ci[bot]
b502802572 flake: Update
flake.lock updates:
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/ece6e266caf1effab32eceef0403b797b4330373?narHash=sha256-yEJmtoFu4cJre1NuU4fb8q57Oux%2BNTbocnALtJ64aEI%3D' (2025-12-04)
  → 'github:NixOS/nixpkgs/a672be65651c80d3f592a89b3945466584a22069?narHash=sha256-EYHSjVM4Ox4lvCXUMiKKs2vETUSL5mx%2BJ2FfutM7T9w%3D' (2025-12-05)

flake/dev/flake.lock updates:
• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/ece6e266caf1effab32eceef0403b797b4330373?narHash=sha256-yEJmtoFu4cJre1NuU4fb8q57Oux%2BNTbocnALtJ64aEI%3D' (2025-12-04)
  → 'github:NixOS/nixpkgs/a672be65651c80d3f592a89b3945466584a22069?narHash=sha256-EYHSjVM4Ox4lvCXUMiKKs2vETUSL5mx%2BJ2FfutM7T9w%3D' (2025-12-05)
• Updated input 'git-hooks':
    'github:cachix/git-hooks.nix/50b9238891e388c9fdc6a5c49e49c42533a1b5ce?narHash=sha256-QlcnByMc8KBjpU37rbq5iP7Cp97HvjRP0ucfdh%2BM4Qc%3D' (2025-11-24)
  → 'github:cachix/git-hooks.nix/548fc44fca28a5e81c5d6b846e555e6b9c2a5a3c?narHash=sha256-rhSqPNxDVow7OQKi4qS5H8Au0P4S3AYbawBSmJNUtBQ%3D' (2025-12-06)
• Updated input 'home-manager':
    'github:nix-community/home-manager/6bcb2395ab9ed05616052262da526cd7c5b4b123?narHash=sha256-ftxQocr098v5ngqB3SXa9tW6aqovBSBOEdIRcLEj44c%3D' (2025-12-05)
  → 'github:nix-community/home-manager/27a6182347ccae90a88231ae0dc5dfa7d15815bb?narHash=sha256-fZatn/KLfHLDXnF0wy7JxXqGaZmGDTVufT4o/AOlj44%3D' (2025-12-06)
2025-12-06 12:45:32 +00:00
saygo-png
812d7e639d flake: move the nuschtosSearch input to the dev flake
Signed-off-by: saygo-png <saygo.mail@proton.me>
2025-12-05 13:44:35 +00:00
saygo-png
67ddb71d85 flake: add inputs option
Signed-off-by: saygo-png <saygo.mail@proton.me>
2025-12-05 13:44:35 +00:00
Matt Sturgeon
cc57493853 lib/options: drop old mkDesc deprecation stub 2025-12-05 13:00:50 +00:00
Matt Sturgeon
59ebcf91e4 lib/top-level: drop old deprecations 2025-12-05 13:00:50 +00:00
nixvim-ci[bot]
b715929c34 flake: Update
flake.lock updates:
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/ebc94f855ef25347c314258c10393a92794e7ab9?narHash=sha256-UMVihg0OQ980YqmOAPz%2BzkuCEb9hpE5Xj2v%2BZGNjQ%2BM%3D' (2025-12-03)
  → 'github:NixOS/nixpkgs/ece6e266caf1effab32eceef0403b797b4330373?narHash=sha256-yEJmtoFu4cJre1NuU4fb8q57Oux%2BNTbocnALtJ64aEI%3D' (2025-12-04)

flake/dev/flake.lock updates:
• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/ebc94f855ef25347c314258c10393a92794e7ab9?narHash=sha256-UMVihg0OQ980YqmOAPz%2BzkuCEb9hpE5Xj2v%2BZGNjQ%2BM%3D' (2025-12-03)
  → 'github:NixOS/nixpkgs/ece6e266caf1effab32eceef0403b797b4330373?narHash=sha256-yEJmtoFu4cJre1NuU4fb8q57Oux%2BNTbocnALtJ64aEI%3D' (2025-12-04)
• Updated input 'home-manager':
    'github:nix-community/home-manager/d441981b200305ebb8e2e2921395f51d207fded6?narHash=sha256-QCgaXEj8036JlfyVM2e5fgKIxoF7IgGRcAi8LkehKvo%3D' (2025-12-04)
  → 'github:nix-community/home-manager/6bcb2395ab9ed05616052262da526cd7c5b4b123?narHash=sha256-ftxQocr098v5ngqB3SXa9tW6aqovBSBOEdIRcLEj44c%3D' (2025-12-05)
2025-12-05 12:26:47 +00:00
Matt Sturgeon
085f50eac5 lib: reimplement call; drop .override
Using `callPackageWith` adds `override` and `overrideDerivation`
attributes to the result, which are not relevant to subsections of
Nixvim's lib section.

Implement our own, simplified, `call` using `intersectAttrs` and
`functionArgs`.

If users wish to modify parts of our lib section, they should extend the
top-level fixpoint to ensure everything stays in sync.
2025-12-05 12:19:52 +00:00
Gaetan Lepage
8e85c25143 plugins/lsp/lsp-packages: add package for tclsp 2025-12-04 23:55:02 +00:00
Gaetan Lepage
f15023fccc plugins/conform-nvim/formatter-packages: add package for tclfmt 2025-12-04 23:55:02 +00:00
nixvim-ci[bot]
f5d09df2c8 flake: Update
flake.lock updates:
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/f720de59066162ee879adcc8c79e15c51fe6bfb4?narHash=sha256-mvbFFzVBhVK1FjyPHZGMAKpNiqkr7k%2B%2BxIwy%2Bp/NQvA%3D' (2025-12-02)
  → 'github:NixOS/nixpkgs/ebc94f855ef25347c314258c10393a92794e7ab9?narHash=sha256-UMVihg0OQ980YqmOAPz%2BzkuCEb9hpE5Xj2v%2BZGNjQ%2BM%3D' (2025-12-03)

flake/dev/flake.lock updates:
• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/f720de59066162ee879adcc8c79e15c51fe6bfb4?narHash=sha256-mvbFFzVBhVK1FjyPHZGMAKpNiqkr7k%2B%2BxIwy%2Bp/NQvA%3D' (2025-12-02)
  → 'github:NixOS/nixpkgs/ebc94f855ef25347c314258c10393a92794e7ab9?narHash=sha256-UMVihg0OQ980YqmOAPz%2BzkuCEb9hpE5Xj2v%2BZGNjQ%2BM%3D' (2025-12-03)
• Updated input 'flake-compat':
    'github:NixOS/flake-compat/01ad7ce89c455171e4f864799b21d0785ba94a3a?narHash=sha256-bHDJDoMHMMctf90Ug0po2LNanPgdB8aRl0psH7%2BTWzc%3D' (2025-10-27)
  → 'github:NixOS/flake-compat/4dd386262c30922367e6b549c81e9cbdf8f3132f?narHash=sha256-JbjxGEA9gVRZ47LylRFe7TLVjI2KaoW0cwflbQ2apBs%3D' (2025-12-04)
• Updated input 'home-manager':
    'github:nix-community/home-manager/bcc7afa1d873ead5932fbb4d42f1916a9627c084?narHash=sha256-Q/%2B03EAvtzCbhGXv7yLsYh%2BpXIzLUgibpQKxo5CI2bk%3D' (2025-12-03)
  → 'github:nix-community/home-manager/d441981b200305ebb8e2e2921395f51d207fded6?narHash=sha256-QCgaXEj8036JlfyVM2e5fgKIxoF7IgGRcAi8LkehKvo%3D' (2025-12-04)
2025-12-04 23:55:02 +00:00
saygo-png
ee32f43f54 treewide: fix typos
Signed-off-by: saygo-png <saygo.mail@proton.me>
2025-12-04 23:22:21 +00:00
saygo-png
03a51dbf3d treewide: NixVim/nixvim -> Nixvim
Signed-off-by: saygo-png <saygo.mail@proton.me>
2025-12-04 23:22:21 +00:00
Austin Horstman
5d1c27e53c plugins/codesnap: remove settingsOption
Blocking configuration from v2 of plugin.
2025-12-03 23:16:39 +00:00
nixvim-ci[bot]
8c9ba3b5d8 flake: Update
flake.lock updates:
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8c29968b3a942f2903f90797f9623737c215737c?narHash=sha256-yU9BNcP0oadUKupw0UKmO9BKDOVIg9NStdJosEbXf8U%3D' (2025-12-01)
  → 'github:NixOS/nixpkgs/f720de59066162ee879adcc8c79e15c51fe6bfb4?narHash=sha256-mvbFFzVBhVK1FjyPHZGMAKpNiqkr7k%2B%2BxIwy%2Bp/NQvA%3D' (2025-12-02)

flake/dev/flake.lock updates:
• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/8c29968b3a942f2903f90797f9623737c215737c?narHash=sha256-yU9BNcP0oadUKupw0UKmO9BKDOVIg9NStdJosEbXf8U%3D' (2025-12-01)
  → 'github:NixOS/nixpkgs/f720de59066162ee879adcc8c79e15c51fe6bfb4?narHash=sha256-mvbFFzVBhVK1FjyPHZGMAKpNiqkr7k%2B%2BxIwy%2Bp/NQvA%3D' (2025-12-02)
• Updated input 'home-manager':
    'github:nix-community/home-manager/ff067cfc619fdf6f82d50344e7d19ff2323f0827?narHash=sha256-S41K55kw%2BhWgDfgKmZ9/fMZ3F0BQDMvqFfE120fMHeE%3D' (2025-12-02)
  → 'github:nix-community/home-manager/bcc7afa1d873ead5932fbb4d42f1916a9627c084?narHash=sha256-Q/%2B03EAvtzCbhGXv7yLsYh%2BpXIzLUgibpQKxo5CI2bk%3D' (2025-12-03)
2025-12-03 12:24:32 +00:00
Matt Sturgeon
60817987a7 flake: remove lib.<system>.helpers
Remove the deprecated <flake>.lib.<system>.helpers output, deprecated in
d39a09d05d
2025-12-03 10:34:03 +00:00
Matt Sturgeon
51daa6bf06 docs: drop "Recent Breaking Changes" section
They aren't "recent" anymore.
2025-12-03 09:36:45 +00:00
Matt Sturgeon
8d085d4094 docs/mdbook: drop pagetoc
It is currently not working.

TODO: investigate and fix
2025-12-03 09:30:43 +00:00
Gaetan Lepage
f775c1e0b4 tests/plugins/codecompanion: disable runNvim as the plugin emits a warning
https://github.com/olimorris/codecompanion.nvim/pull/2439
2025-12-03 09:30:43 +00:00
Gaetan Lepage
8d0d66cdd3 plugins/conform-nvim/formatter-packages: add package for mh_style 2025-12-03 09:30:43 +00:00
nixvim-ci[bot]
75bb0adebf generated: Updated conform-formatters.json 2025-12-03 09:30:43 +00:00
nixvim-ci[bot]
d4ed84e89a flake: Update
flake.lock updates:
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0d59e0290eefe0f12512043842d7096c4070f30e?narHash=sha256-Z63xl5Scj3Y/zRBPAWq1eT68n2wBWGCIEF4waZ0bQBE%3D' (2025-11-27)
  → 'github:NixOS/nixpkgs/8c29968b3a942f2903f90797f9623737c215737c?narHash=sha256-yU9BNcP0oadUKupw0UKmO9BKDOVIg9NStdJosEbXf8U%3D' (2025-12-01)

flake/dev/flake.lock updates:
• Updated input 'dev-nixpkgs':
    'github:NixOS/nixpkgs/0d59e0290eefe0f12512043842d7096c4070f30e?narHash=sha256-Z63xl5Scj3Y/zRBPAWq1eT68n2wBWGCIEF4waZ0bQBE%3D' (2025-11-27)
  → 'github:NixOS/nixpkgs/8c29968b3a942f2903f90797f9623737c215737c?narHash=sha256-yU9BNcP0oadUKupw0UKmO9BKDOVIg9NStdJosEbXf8U%3D' (2025-12-01)
• Updated input 'home-manager':
    'github:nix-community/home-manager/86ff0ef506c209bb397849706e85cc3a913cb577?narHash=sha256-bO7FN/bF6gG7TlZpKAZjO3VvfsLaPFkefeUfJJ7F/7w%3D' (2025-11-28)
  → 'github:nix-community/home-manager/ff067cfc619fdf6f82d50344e7d19ff2323f0827?narHash=sha256-S41K55kw%2BhWgDfgKmZ9/fMZ3F0BQDMvqFfE120fMHeE%3D' (2025-12-02)
2025-12-03 09:30:43 +00:00
Matt Sturgeon
b0f3a36596 modules/version: init with nixpkgsReleaseCheck
Inspired by `home.version` and `home.enableNixpkgsReleaseCheck` in Home
Manager. Print a warning when `lib` or `pkgs` are from a different
release to Nixvim.
2025-12-03 09:24:36 +00:00
Matt Sturgeon
cbdfee5239 modules/files: simplify byteCompileLua condition
Avoid needing a `specialArgs.topConfig` by binding `byteCompileLua`
outside of the submodule scope.
2025-12-03 08:56:47 +00:00
Matt Sturgeon
26d16c726d modules/files: drop coercedFileType
Defining `extraFiles.*` as a string was deprecated in 24.05, and has
printed a warning since 2024-07-07.

We can now drop support entirely and simplify the implementation.
2025-12-03 08:56:47 +00:00
Gaetan Lepage
b52b1fb4a4 plugins/blink-cmp-words: init 2025-12-03 00:08:57 +00:00
saygo-png
2d8db68a8f plugins/haskell-tools: add hlsPackageFallback option
Signed-off-by: saygo-png <saygo.mail@proton.me>
2025-12-02 08:23:07 +00:00
saygo-png
ee6ccaae42 plugins/friendly-snippets: fix warning
Signed-off-by: saygo-png <saygo.mail@proton.me>
2025-12-01 17:58:26 +00:00
Gaetan Lepage
af1ce0d14c treewide: 25.05 -> 25.11 2025-12-01 17:52:21 +00:00
Heitor Augusto
027c96a161 modules/files: ensure derivation is recognized as vim plugin 2025-12-01 09:30:24 +00:00
Matt Sturgeon
aab92fcc99 flake: explicitly configure commit-lock-file-summary
Sets `nixConfig.commit-lock-file-summary` to "flake: Update", matching
the default used by `ci/update`. This ensures consistency when running
`nix flake update --commit-lock-file` or `nix flake lock --commit-lock-file`
manually.

Note: manual updates are discouraged. The `nix-build ci -A update`
script should be used to update flakes. This ensures both root and dev
lockfiles — as well as `version-info.toml` — are kept in sync.
2025-11-30 21:23:19 +00:00
Matt Sturgeon
d269170e38 ci/update: refactor to produce a single lockfile commit
Refactors the flake update script to consolidate root and dev lockfile
updates into a single commit. Changes include:

- Captures and normalizes `nix flake update` output.
- Removes reliance on `--commit-lock-file` and `--amend`.
- Eliminates the need to track or compare HEAD commits manually.
- Only commit when flake.lock, flake/dev/flake.lock, or
  version-info.toml have changes.
2025-11-30 21:23:19 +00:00
Matt Sturgeon
f02d566f4c ci/update: build version-info with no-out-link
Avoid polluting the `result` symlink when building `version-info`.
2025-11-30 21:23:19 +00:00
Matt Sturgeon
8147790da9 ci/update: always cd to the root of the flake
Allows running the script from a sub-directory, e.g.

    cd ci
    nix-build -A update
    result/bin/update
2025-11-30 21:23:19 +00:00
Heitor Augusto
d14252433d modules/output: improve waylandSupport 2025-11-30 20:55:06 +00:00
Jia Jia
6094d2a439 add mathjiajia's nixvim config 2025-11-29 19:09:18 +00:00
Matt Sturgeon
b831550ec8 plugins/efmls-configs: avoid reading HTML & JSON aliases
f0764db721 added rename aliases for the
HTML and JSON options, which print a trace when evaluated:

    trace: Obsolete option `HTML' is used. It was renamed to `html'.
    trace: Obsolete option `JSON' is used. It was renamed to `json'.

These were correctly removed when introspecting enabled tools, however
they were not removed when constructing the "setup options" to serialise
as a lua table.
2025-11-29 18:39:43 +00:00