Commit graph

1997 commits

Author SHA1 Message Date
Matt Sturgeon
8f99c3953c
lib/util: add groupListBySize
Splits up a list into many sub-lists based on the given max-size.

e.g.
```nix
groupListBySize 2 [ 1 2 3 4 5 ]
=> [ [ 1 2 ] [ 3 4 ] [ 5 ] ]
```
2024-08-19 00:50:57 +01:00
Matt Sturgeon
693e749edb
tests/lib-test: correctly print expected/result
In some edge cases, expected and result can't be directly used in string
interpolation, so pass them through `lib.generators.toPretty` to be safe.
2024-08-19 00:38:22 +01:00
Matt Sturgeon
7a11b66f11
lib/keymap: allow extra options/modules in mkMapOptionSubmodule
This is needed to allow plugins to add bespoke features to their keymap
submodules without having to re-implement the whole thing.
2024-08-18 22:38:24 +01:00
Matt Sturgeon
7fb1f9dd9d
modules/keymap: improve lua deprecation
- Replace nullable lua option with a no-default option.
- Made it so the deprecated option is only declared when `lua = true` is passed.
- Replace `normalizeMappings` with a `removeDeprecatedMapAttrs` helper.
- Added warnings for all options that historically had `lua` support.
2024-08-18 22:11:11 +01:00
Matt Sturgeon
c52ba67856
Revert "tests: Allow to test multiple derivations in a single test derivation"
This reverts commit 71126bfebe.
2024-08-18 20:42:56 +01:00
Matt Sturgeon
9688ef723f
tests: use a link-farm again, but only per-file 2024-08-18 20:42:55 +01:00
Austin Horstman
379ae77a76
plugins/todo-comments: migrate to mkNeovimPlugin 2024-08-18 14:25:00 -05:00
Austin Horstman
78fc4be6a8
workflows/update: only run upstream 2024-08-17 14:44:48 -05:00
Austin Horstman
00f32f0430
tests/lua-loader: builtins.match -> lib.hasInfix
Getting invalid regex expression on darwin.
2024-08-16 08:55:38 -05:00
Austin Horstman
6ab17b1b2e
top-level/output: include meta in package
Required to prevent errors due to missing license information in
neovim-wrapper.
2024-08-15 22:28:28 -05:00
Austin Horstman
ebd2182b44
plugins/which-key: updated spec examples and tests
Improve documentation for supported configurations
2024-08-15 15:47:25 -05:00
Austin Horstman
fb4e6c2361
flake-modules/devshell: add getopt runtimeInput
Use a consistent behavior of getopt in launchtests.sh. Wasn't able to
use tests command on macbook without including this because the macOS
getopt didn't support our usage.
2024-08-15 08:02:57 -05:00
Enno Richter
a96aa9730a tests/plugins/utils/spectre: enable tests on Darwin 2024-08-14 23:18:51 +02:00
Austin Horstman
cb398ce4ba plugins/bufferline: migrate to mkNeovimPlugin
Also resolves https://github.com/nix-community/nixvim/issues/1890 by
automatically setting up `diagnostics.update_in_insert` for the user.
2024-08-14 11:20:17 +00:00
Austin Horstman
db4c4e5b17 lib/deprecation: expose mkSettingsRenamedOptionModules publicly
Extracted the `optionsRenamedToSettings` implementation
from`mkVimPlugin` and `mkNeovimPlugin` into a new public helper.
2024-08-14 11:20:17 +00:00
Austin Horstman
e3ec1c4a46 plugins/which-key: move listOfLen to lib.types
Allows us to require a list to have a certain length for plugins that
request it.
2024-08-14 11:20:17 +00:00
Matt Sturgeon
4eb2ad7db7
lib/lua: support nixpkg's "lua-inline" type
See #1935
2024-08-14 00:25:59 +01:00
Quentin Boyer
dbf6f7bc99 update-script/rust-analyzer: Filter out headers from option descriptions
Headers are not allowed in nixpkgs option descriptions.
2024-08-12 18:54:01 +02:00
Quentin Boyer
ad704ddba7 generated,rust-analyzer: Handle objects with defined properties
They are implemented as submodules instead of an attrset of anything
2024-08-12 18:53:57 +02:00
github-actions[bot]
f823d01002 flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/b3d5ea65d88d67d4ec578ed11d4d2d51e3de525e' (2024-08-07)
  → 'github:nix-community/home-manager/086f619dd991a4d355c07837448244029fc2d9ab' (2024-08-11)
• Updated input 'nuschtosSearch':
    'github:NuschtOS/search/1016f4620e321c12ff1dbcd464e9de889e302d1c' (2024-08-08)
  → 'github:NuschtOS/search/6ca2c3ae05a915c160512bd41f6810f456c9b30d' (2024-08-11)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/14c092e0326de759e16b37535161b3cb9770cea3' (2024-08-10)
  → 'github:numtide/treefmt-nix/349de7bc435bdff37785c2466f054ed1766173be' (2024-08-12)
2024-08-12 10:59:55 +00:00
Austin Horstman
d9055abe20
plugins/markview: init 2024-08-12 01:06:53 -05:00
Gaetan Lepage
f13bdef0bc plugins/lsp/astro: fix package attribute path 2024-08-10 22:52:13 +02:00
github-actions[bot]
988906f8ed flake.lock: Update
Flake lock file updates:

• Updated input 'git-hooks':
    'github:cachix/git-hooks.nix/06939f6b7ec4d4f465bf3132a05367cccbbf64da' (2024-08-05)
  → 'github:cachix/git-hooks.nix/c7012d0c18567c889b948781bc74a501e92275d1' (2024-08-09)
• Updated input 'home-manager':
    'github:nix-community/home-manager/afc892db74d65042031a093adb6010c4c3378422' (2024-08-02)
  → 'github:nix-community/home-manager/b3d5ea65d88d67d4ec578ed11d4d2d51e3de525e' (2024-08-07)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cb9a96f23c491c081b38eab96d22fa958043c9fa' (2024-08-04)
  → 'github:NixOS/nixpkgs/5e0ca22929f3342b19569b21b2f3462f053e497b' (2024-08-09)
• Updated input 'nuschtosSearch':
    'github:NuschtOS/search/aa5f6246565cc9b1e697d2c9d6ed2c842b17fff6' (2024-08-04)
  → 'github:NuschtOS/search/1016f4620e321c12ff1dbcd464e9de889e302d1c' (2024-08-08)
2024-08-10 22:27:28 +02:00
Austin Horstman
4852f94f8c
plugins/yazi: init 2024-08-09 14:02:25 -05:00
Matt Sturgeon
c46bd820ad
plugins/firenvim: fix aliasing settings into globals
Needed to use `options.*.settings` instead of `config.*.settings`.

I was concerned that the test-case didn't pick up on this, so I added an
new test case with some basic assertions.
2024-08-09 09:28:38 +01:00
alxdb
fab51138b7 plugins/lsp/bufls: init 2024-08-08 23:29:39 +01:00
Austin Horstman
1adbf11900
plugins/which-key: migrate to mkNeovimPlugin 2024-08-08 16:17:09 -05:00
Haseeb Majid
1b135dedc4
plugins/neotest: add neotest-golang 2024-08-08 14:20:15 +01:00
psfloyd
78abafe280 plugins/lz-n: init 2024-08-08 06:18:43 +00:00
Gaetan Lepage
593f5215cb plugins/firenvim: init 2024-08-07 23:04:09 +02:00
psfloyd
c9a855fe68 plugins/nvim-snippets: init 2024-08-06 23:04:57 -03:00
psfloyd
6c1e87676c maintainers: add psfloyd 2024-08-06 22:58:32 -03:00
github-actions[bot]
e48ce785d9 flake.lock: Update
Flake lock file updates:

• Updated input 'git-hooks':
    'github:cachix/git-hooks.nix/f451c19376071a90d8c58ab1a953c6e9840527fd' (2024-07-15)
  → 'github:cachix/git-hooks.nix/06939f6b7ec4d4f465bf3132a05367cccbbf64da' (2024-08-05)
• Updated input 'nix-darwin':
    'github:lnl7/nix-darwin/f7142b8024d6b70c66fd646e1d099d3aa5bfec49' (2024-08-02)
  → 'github:lnl7/nix-darwin/91010a5613ffd7ee23ee9263213157a1c422b705' (2024-08-06)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9f918d616c5321ad374ae6cb5ea89c9e04bf3e58' (2024-07-31)
  → 'github:NixOS/nixpkgs/cb9a96f23c491c081b38eab96d22fa958043c9fa' (2024-08-04)
• Updated input 'nuschtosSearch':
    'github:NuschtOS/search/3f5abffa5f28b4ac3c9212c81c5e8d2d22876071' (2024-08-01)
  → 'github:NuschtOS/search/aa5f6246565cc9b1e697d2c9d6ed2c842b17fff6' (2024-08-04)
2024-08-06 06:23:45 +00:00
Gaetan Lepage
5922a48008 plugins/luasnip: add filetypeExtend option 2024-08-05 11:28:00 +00:00
Émile Nadeau
c0a8bfcc52
Make url in doc link 2024-08-05 11:03:45 +00:00
Enno Richter
4d6d3bd722 plugins/spectre: set freeformType for engine options 2024-08-05 06:06:34 +00:00
Gaetan Lepage
0f7817876a plugins/luasnip: add tests 2024-08-05 05:49:37 +00:00
Gaetan Lepage
25da1220ad plugins/luasnip: rename extraConfig to settings (more consistent with RFC-42) 2024-08-05 05:49:37 +00:00
Gaetan Lepage
6f7cf23b22 plugins/gitblame: completely drop helpers 2024-08-04 09:26:20 +00:00
Matt Sturgeon
f38400d959
flake: disable allow-import-from-derivation
Unfortunately this will print a confirmation when first using the flake:

```
do you want to allow configuration setting 'allow-import-from-derivation' to be set to 'false' (y/N)?
```

This is no different to the cachix configs though, so probably no big
deal.
2024-08-04 00:13:12 +01:00
Matt Sturgeon
3d1224a039
tests/modules/output: remove IFD 2024-08-04 00:13:12 +01:00
github-actions[bot]
2f85c012ce flake.lock: Update
Flake lock file updates:

• Updated input 'flake-parts':
    'github:hercules-ci/flake-parts/9227223f6d922fee3c7b190b2cc238a99527bbb7' (2024-07-03)
  → 'github:hercules-ci/flake-parts/8471fe90ad337a8074e957b69ca4d0089218391d' (2024-08-01)
• Updated input 'home-manager':
    'github:nix-community/home-manager/58cef3796271aaeabaed98884d4abaab5d9d162d' (2024-07-31)
  → 'github:nix-community/home-manager/afc892db74d65042031a093adb6010c4c3378422' (2024-08-02)
• Updated input 'nix-darwin':
    'github:lnl7/nix-darwin/0413754b3cdb879ba14f6e96915e5fdf06c6aab6' (2024-07-27)
  → 'github:lnl7/nix-darwin/f7142b8024d6b70c66fd646e1d099d3aa5bfec49' (2024-08-02)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/52ec9ac3b12395ad677e8b62106f0b98c1f8569d' (2024-07-28)
  → 'github:NixOS/nixpkgs/9f918d616c5321ad374ae6cb5ea89c9e04bf3e58' (2024-07-31)
• Updated input 'nuschtosSearch':
    'github:NuschtOS/search/16565307c267ec219c2b5d3494ba66df08e7d403' (2024-07-28)
  → 'github:NuschtOS/search/3f5abffa5f28b4ac3c9212c81c5e8d2d22876071' (2024-08-01)
2024-08-03 21:22:24 +00:00
Matt Sturgeon
83a8109ec4
ci/update: make steps optional
Allow toggling off the flake.lock or generate files steps.
2024-08-03 21:56:41 +01:00
Matt Sturgeon
d3cb750e6a
update-scripts: move out of flake
See the explanation in the new update-scripts/README.md file.
2024-08-03 21:56:40 +01:00
Gaetan Lepage
96d0a2e390 plugins/gitblame: switch to mkNeovimPlugin 2024-08-03 16:21:55 +02:00
Matt Sturgeon
0bc1699037
docs: call evalModules in one place 2024-08-02 14:38:38 +01:00
Matt Sturgeon
27c4c9c210
lib/modules: init with specialArgs helpers 2024-08-02 14:38:38 +01:00
Matt Sturgeon
491ca5cf51
lib: provide an "extended lib" to our modules
lib/extend-lib.nix returns a nixpkg's lib extended with our own
helpers.

This is exposed as `helpers.extendedLib`, but when evaluating our
modules it should be assigned to `specialArgs.lib`.

Outside of our modules you must still access our helpers via
`config.lib.nixvim` or `config.lib.nixvim.extendedLib`.

Within helpers' sub-sections, `lib` is the extended lib.
2024-08-02 14:33:59 +01:00
Matt Sturgeon
7c39d77b9f
lib/helpers: scope each subsection, but offer aliases 2024-08-01 18:05:00 +01:00
Matt Sturgeon
bc84fda2b8
lib/options: remove with helpers 2024-08-01 17:55:03 +01:00