1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
|
# Release 26.07 {#sec-release-26-07}
## Breaking changes
- Changing the release model to CalVer.
- Upgrade to nixpkgs 26.06.
- Nixpkgs has merged a fully incompatible rewrite of
`vimPlugins.nvim-treesitter`. Namely, it changes from the frozen `master`
branch to the new main branch. This change removes incremental selections, so
it is no longer available.
- [obsidian.nvim] now uses a maintained fork which has removed the `dir`
setting. Use `workspaces` instead:
```nix
{
workspaces = [
{
name = "any-string";
path = "~/old/dir/path/value";
}
];
}
```
Some other settings and commands are now deprecated but are still supported.
- The `setupOpts.mappings` options were also removed. Use the built-in Neovim
settings (nvf's {option}`vim.keymaps`)
- `languages.{terraform,hcl}`: LSP servers now default to `tofu-ls`. While this
is unlikely to cause any noticeable change in behavior or breakage, it's
mentioned just in case.
- `vim.treesitter.foldByDefault` is removed. Folding behavior should be
controlled via `vim.options.foldenable` directly instead. RIP
`vim.treesitter.foldByDefault` 2026-03-19 - 2026-03-19.
- `vim.assistant.codecompanion-nvim.setupOpts.strategies` has been renamed to
`vim.assistant.codecompanion-nvim.setupOpts.interactions` to match the
upstream codecompanion.nvim v19 rename. If you set options like
`setupOpts.strategies.chat.adapter`, rename them to
`setupOpts.interactions.chat.adapter`.
- `vim.maps` is deprecated, use `vim.keymaps` instead.
[Snoweuph](https://github.com/snoweuph)
- Added `position` option to additional runtime paths, allowing for prepending
paths, rather than just appending.
- Added required field `loadtype` for entries into
{option}`vim.treesitter.queries`, to allow for real overriding of queries.
- Moved all angular related stuff into its own language module.
- Remove `mind.nvim`. This plugin doesn't exist anymore. The original author
deleted all their GitHub repositories and moved to
[sourcehut](https://sr.ht/~hadronized/). Some repositories where migrated.
`mind.nvim` wasn't one of them. More can be read in
[his blog post](https://strongly-typed-thoughts.net/blog/final-bye-github).
- "Correct `languages.go.treesitter` to contain all Go file types.
`languages.go.treesitter.package` is now `languages.go.treesitter.goPackage`.
New are:
- `languages.go.treesitter.goPackage`.
- `languages.go.treesitter.gomodPackage`.
- `languages.go.treesitter.gosumPackage`.
- `languages.go.treesitter.goworkPackage`.
- `languages.go.treesitter.gotmplPackage`.
- Fix `vim.assistant.codecompanion-nvim.setupOpts.display.diff.provider` to only
allow valid options. `default` is no longer valid. `inline` and `split` are
two new valid options.
- Added [taplo](https://taplo.tamasfe.dev/) as the default formatter and lsp for
`languages.toml` so we don't default to AI-Slop.
- Added `json5` into `languages.json`. Some options where renamed.
- Moved `vim.lsp.harper-ls` to `vim.lsp.presets.haper`.
- Removed `typst_lsp` from `languages.typst.lsp.servers`, because it is
deprecated and thus was pulled from nixpkgs.
<https://github.com/NixOS/nixpkgs/commit/bf24296bbe2e31ac7147b02ea645922390ca8f4b>
- Renamed `ts_ls` to `typescript-language-server`.
- Renamed `denols` to `deno`.
- Renamed `tsgo` to `typescript-go`.
- Renamed `vala_ls` to `vala-language-server`.
- Renamed `terraformls-tf` and `terraformls-hcl` to `terraform-ls`.
- Renamed `tofuls-tf` and `tofuls-hcl` to `tofu-ls`.
- Renamed `ruby_lsp` to `ruby-lsp`.
- Renamed `r_language_server` to `r-languageserver`.
- Renamed `julials` to `julia-languageserver`.
- Renamed `astro` to `astro-language-server`.
- Renamed `bash-ls` to `bash-language-server`.
- Renamed `jsonls` to `vscode-json-language-server`.
- Renamed `cssls` to `vscode-css-language-server`.
- Renamed `jdtls` to `jdt-language-server`.
- Renamed `elixirls` to `elixir-ls`.
- Removed `languages.tailwind` which only provided an LSP. Use
`lsp.presets.tailwindcss-language-server` instead.
- Renamed `languages.ts` to `languages.typescript`.
- Added {option}`vim.languages.go.treesitter.gotmpl.injection` and Renamed
`languages.go.treesitter.gotmplPackage` to
{option}`vim.languages.go.treesitter.gotmpl.package`
- Split SCSS from `languages.css` into `languages.scss` and add extra tools for
SCSS/SASS. This also changes the default LSP to `some-sass-language-server`
for SCSS/SASS.
- Split React/TSX from `languages.typescript` into `languages.tsx`. This new
module provides jsx/tsx support. This is a step of cleaning up the Typescript
module for the future.
- Removed `vim.languages.<lang>.format.package` options across 20 languages.
Support for custom formatter packages is dropped; use
`vim.formatter.conform-nvim.setupOpts.formatters.<name>.command` to customize
the formatter binary instead.
- Renamed `ruff-check` formatter to `ruff-fix`.
- Renamed `denofmt`/`deno_fmt` formatters to `deno`.
- `prettierd` formatter is dropped entirely in the last few modules, use
`prettier` instead.
[horriblename](https://github.com/horriblename):
- Change default linter for C/C++ to clangtidy, as it is more common and
enforces more rules outside of Google's coding style
[dathegreat](https://github.com/dathegreat):
- Haskell LSP now defaults to haskell-language-server, haskell-tools based LSP
support is moved to `vim.languages.haskell.extensions.haskell-tools`
[CaueAnjos](https://github.com/caueanjos)
- Renamed `roslyn_ls` to `roslyn-ls`
- Turned `omnisharp-extended-lsp-nvim` into an extension disabled by default
- Turned `csharpls-extended-lsp-nvim` into an extension disabled by default
[sjcobb2022](https://github.com/caueanjos)
- Rust module is now no longer dependant on `rustaceanvim` by default. Use
`vim.languages.rust.extensions.rustaceanvim.enable` if needed.
## Changelog {#sec-release-26-07-changelog}
[bovf](https://github.com/bovf):
- Removed the deprecated `system_open` setup option from `nvim-tree.lua` to
avoid startup warnings now that upstream uses `vim.ui.open()`.
[ErinaYip](https://github.com/ErinaYip):
- Fixed and updated `lualine` options:
- Enabled the previously unmapped `vim.statusline.lualine.ignoreFocus`.
- Added `vim.statusline.lualine.disabledFiletypes.statusline` and
`vim.statusline.lualine.disabledFiletypes.winbar`.
[SecBear](https://github.com/SecBear):
- Renamed `setupOpts.strategies` to `setupOpts.interactions` in the
codecompanion-nvim module to match the upstream v19 rename. The old key
triggered a migration shim that silently discarded user `interactions`
overrides.
[midischwarz12](https://github.com/midischwarz12):
- Changed the prettier-plugin-astro build to use `writableTmpDirAsHomeHook` to
avoid pnpm hook failures in sandboxed builds.
- Fix `vim.utility.leetcode-nvim` adding `fzf-lua` to `vim.startPlugins` when
`vim.fzf-lua` already manages the plugin lazily, avoiding duplicate `/start`
and `/opt` installs and the corresponding `mnw` evaluation warning.
[taylrfnt](https://github.com/taylrfnt)
- Introduce a `darwinModule` option for Darwin users. The ergonomics of
importing a `nixosModule` into a Darwin flake were less than ideal, and when
users fork and update npins, they are prone to encountering errors like the
following:
```shell
(class: "nixos") cannot be imported into a module
evaluation that expects class "darwin".
```
[suimong](https://github.com/suimong):
- Fix `vim.tabline.nvimBufferline` where `setupOpts.options.hover` requires
`vim.opt.mousemoveevent` to be set.
[thamenato](https://github.com/thamenato):
- Attempt to adapt nvim-treesitter to (breaking) Nixpkgs changes. Some
treesitter grammars were changed to prefer `grammarPlugins` over
`builtGrammars`.
[NotAShelf](https://github.com/notashelf):
- Lazyload noice.nvim and nvim-web-devicons on `DeferredUIEnter`
- Allow nulling treesitter packages for various language modules, filter `null`
values in `vim.treesitter.grammars`.
- Added {option}`vim.filetype` module option for registering custom filetypes
via `vim.filetype.add()`, placed in the DAG before `lazyConfigs` so plugins
can lazy-load on registered filetypes.
- Moved `neovim/mappings` to `neovim/init/mappings.nix` to consolidate core
Neovim init options.
[jfeo](https://github.com/jfeo):
[ccc.nvim]: https://github.com/uga-rosa/ccc.nvim
- Added [ccc.nvim] option {option}`vim.utility.ccc.setupOpts` with the existing
hard-coded options as default values.
[Ring-A-Ding-Ding-Baby](https://github.com/Ring-A-Ding-Ding-Baby):
- Aligned `codelldb` adapter setup with [rustaceanvim]’s built-in logic.
- Added `languages.rust.dap.backend` option to choose between `codelldb` and
`lldb-dap` adapters.
[Libadoxon](https://github.com/Libadoxon):
- `toggleterm` open map now also works when in terminal mode
[ppenguin](https://github.com/ppenguin):
- Improved/harmonized for `terraform` and `hcl`:
- formatting (use `terraform fmt` or `tofu fmt` for `tf` files)
- LSP config
- Added `tofu` and `tofu-ls` as (free) alternative to `terraform` and
`terraform-ls`
[jtliang24](https://github.com/jtliang24):
- Updated nix language plugin to use pkgs.nixfmt instead of
pkgs.nixfmt-rfc-style
[dathegreat](https://github.com/dathegreat):
- Fixed invalid keys in the haskell-tools configuration
- Split haskell configuration into `lsp/presets/haskell-language-server.nix` and
`languages/haskell.nix`
- Made the haskell LSP and formatter configurable
- Added [csvview.nvim](https://github.com/hat0uma/csvview.nvim) support under
`vim.utility.csvview` for rendering CSV/TSV files as aligned tables.
[alfarel](https://github.com/alfarelcynthesis):
[obsidian.nvim]: https://github.com/obsidian-nvim/obsidian.nvim
[blink.cmp]: https://cmp.saghen.dev/
[snacks.nvim]: https://github.com/folke/snacks.nvim
[mini.nvim]: https://nvim-mini.org/mini.nvim/
[telescope.nvim]: https://github.com/nvim-telescope/telescope.nvim
[fzf-lua]: https://github.com/ibhagwan/fzf-lua
[render-markdown.nvim]: https://github.com/MeanderingProgrammer/render-markdown.nvim
[markview.nvim]: https://github.com/OXY2DEV/markview.nvim
[which-key.nvim]: https://github.com/folke/which-key.nvim
- Upgrade [obsidian.nvim] to use a maintained fork, instead of the unmaintained
upstream.
- Various upstream improvements:
- Support [blink.cmp] and completion plugin autodetection.
- Support various pickers for prompts, including [snacks.nvim]'s
`snacks.picker`, [mini.nvim]'s `mini.pick`, [telescope.nvim], and
[fzf-lua].
- Merge commands like `ObsidianBacklinks` into `Obisidian backlinks`. The
old format is still supported by default.
- Some `setupOpts` options have changed:
- `disable_frontmatter` -> `frontmatter.enabled` (and inverted), still
supported.
- `note_frontmatter_func` -> `frontmatter.func`, still supported.
- `statusline` module is now deprecated in favour of `footer`, still
supported.
- `dir` is no longer supported, use `workspaces`:
```nix
{
workspaces = [
{
name = "any-string";
path = "~/old/dir/path/value";
}
];
}
```
- `use_advanced_uri` -> `open.use_advanced_uri`.
- Mappings are now expected to be set using the built-in Neovim APIs,
managed by `vim.keymaps` in nvf, instead of `mappings` options.
- Some option defaults have changed.
- And more.
- Automatically configure an enabled picker in the order mentioned above, if
any are enabled.
- Add integration with `snacks.image` for rendering workspace/vault assets.
- Detect if [render-markdown.nvim] or [markview.nvim] are enabled and disable
the `ui` module if so. It should work without this, but `render-markdown`'s
{command}`:healthcheck` doesn't know that.
- Remove [which-key.nvim] `<leader>o` `+Notes` description which did not
actually correspond to any keybinds.
- Allow disabling nvf's vendored keymaps by toggling `vendoredKeymaps.enable`.
- Add {option}`vim.languages.pug.enable`, which adds the treesitter grammar and
enables `emmet-ls` for pug files.
[pyrox0](https://github.com/pyrox0):
- Added [rumdl](https://github.com/rvben/rumdl) support to `languages.markdown`
- Added [sqruff](https://github.com/quarylabs/sqruff) support to `languages.sql`
- Lazy-load `crates.nvim` plugin when using
`vim.languages.rust.extensions.crates-nvim.enable`
- Added [Pyrefly](https://pyrefly.org/) and [zuban](https://zubanls.com/)
support to `languages.python`
- Added TOML support via {option}`vim.languages.toml.enable` and the
[Tombi](https://tombi-toml.github.io/tombi/) language server, linter, and
formatter.
- Added Jinja support via `languages.jinja`
- Added [hlargs.nvim](https://github.com/m-demare/hlargs.nvim) support as
`visuals.hlargs-nvim`.
- Lazy-load `nvim-autopairs` plugin when using
`vim.autopairs.nvim-autopairs.enable`
- Added support for neovim 0.12's `ui2` feature via `vim.ui.ui2`
[Machshev](https://github.com/machshev):
- Added `ruff` and `ty` LSP support for Python under `programs.python`.
[Snoweuph](https://github.com/snoweuph)
- Split of `zsh` from `languages.bash` into its own language module.
[`injected` formatter]: https://github.com/stevearc/conform.nvim/blob/master/doc/advanced_topics.md#injected-language-formatting-code-blocks
- Add [`injected` formatter] to all language modules, to allow for formatting of
injections via conform, like Markdown code blocks or some multiline strings in
nix.
- Make `query` injections in `nix` files combined, to fix highlighting problems,
when injecting inside multiline strings.
- Telling the `vscode-json-language-server` that `json5` is `jsonc` instead of
the default fallback of `json`, for more accurate results.
- Fix automatic path resolution for JLS, to always be absolute.
- Added {option}`vim.healthchecks`.
- Added healthcheck to clipboard providers.
- Added {option}`vim.formatter.conform-nvim.presets.just.enable` for justfile
formatting.
- Added {option}`vim.lsp.presets.jls.enable` and made it available under
`vim.languages.java.lsp.servers`.
- Added {option}`vim.languages.java.dap.enable` with the `jls` DAP.
- Fix tailwind LSP running on non tailwind projects.
- Use nvf nix Tree-sitter injections in the docs.
- Added Mago for PHP formatting and linting.
- Added ferris.nvim as a rust extensions.
- Allow the usage of `pks.tree-sitter-grammars` in
{option}`vim.treesitter.grammars` and language module tree-sitter package
options created via `mkGrammarOption`.
- Add `emmet-ls` to the supported LSPs for all languages it supports.
- Added `gitlab-ci-ls`.
- Add `ts-query-ls` as a conform.nvim formatter.
- Added formatting to `languages.query`.
- Added `phpantom` LSP preset and into `languages.php`.
- Moved extra diagnostic modules under `diagnostics.presets.<name>` this will
allow for more flexibility in the future for nvf.
- Added {option}`vim.diagnostics.presets.cpplint.enable`.
- Added {option}`vim.treesitter.queries` to support adding custom queries.
- Added injections for `query = '' ... ''` as `query` and `mkLualine '' ... ''`,
`entryAnywhere '' ... ''`, `entryBefore [] '' ... ''`,
`entryAfter [] '' ... ''` as `lua` in nix.
- Added {option}`vim.languages.tera.treesitter.injection` to configure, what
language the content is.
- Added {option}`vim.languages.jinja.treesitter.injection` to configure, what
language the content is.
- Added {option}`vim.treesitter.filetypeMappings` to support mappings similar to
<https://github.com/nvim-treesitter/nvim-treesitter/blob/main/plugin/filetypes.lua>.
This is mostly use full for Markdown code block injections.
- Added some Tree-sitter filetype mappings for:
- `bash` = `ash`, `dash`, `zsh`
- `yaml` = `yaml`
- Fix `astro-language-server` missing typescript.
- Fix typo in `biome-organize-imports` formatting preset.
- Fixed broken filetypes.
- Added Treesitter injections for `sqlx` in the `languages.rust` module.
- Allow bundling the Treesitter CLI.
- Added `vim.lsp.presets.<name>` to contain LSP configurations. This allows for
more flexibility in nvf and reuse of LSPs across languages. Dropped
`deprecatedSingleOrListOf` in favor of `listOf` for the affected LSP options.
- Added {option}`vim.lsp.presets.angular-language-server.enable` for Angular
Template support.
- Added {option}`vim.lsp.presets.vtsls.enable` for Vue TypeScript support.
- Added {option}`vim.lsp.presets.vue-language-server.enable` for Vue Template
- Added {option}`vim.lsp.presets.some-sass-language-server.enable`.
- Fix `vim.lsp.presets.vala-language-server` to be wrapped correctly with
`uncrustify`.
- Fix `tressiter` to allow `null` in grammar options, so they can be filtered
out.
- Fix {option}`vim.utility.nvim-biscuits.enable` by upgrading, to fix
tree-sitter incompatibilities.
- Fix image.nvim processor configuration and cleanup module.
- Added [Selenen](https://github.com/kampfkarren/selene) for more diagnostics in
`languages.lua`.
- Added the [Stimulus LSP](https://github.com/marcoroth/stimulus-lsp) as LSP
preset.
- Added `languages.docker` for Docker and Docker-Compose support. Thanks to
[poseidon-rises](https://github.com/poseidon-rises) for creating most of it in
[!1104](https://github.com/NotAShelf/nvf/pull/1104).
- Added {option}`vim.lsp.presets.docker-language-server.enable` for Docker
support.
- Mapped `dockercompose` to be highlighted by treesitter as `yaml`.
- Added [`mdformat`](https://mdformat.rtfd.io/) support to `languages.markdown`
with the extensions for [GFM](https://github.github.com/gfm/),
[front matter](https://www.markdownlang.com/advanced/frontmatter.html) and
[footnotes](https://www.markdownguide.org/extended-syntax/#footnotes).
- Added XML syntax highlighting, LSP support and formatting
- Added [mypy](https://www.mypy-lang.org/) to `languages.python` for extra
diagnostics.
- Added [tera](https://keats.github.io/tera/) language support (syntax
highlighting only).
- Added [liquid](https://keats.github.io/tera/) language support (syntax
highlighting only) via `languages.liquid`.
- Added Debugging support to `languages.odin` with
[nvim-dap-odin](https://github.com/NANDquark/nvim-dap-odin).
- Disabled notifications for
[nvim-dap-odin](https://github.com/NANDquark/nvim-dap-odin), because it
contain no use full information, only spam, and it can't be made lazy.
- Added [`golangci-lint`](https://golangci-lint.run/) for more diagnostics.
- Added [`gopher.nvim`](https://github.com/olexsmir/gopher.nvim) for extra
actions in `languages.go`.
- updated default filetypes for
[harper-ls](https://github.com/Automattic/harper) to match what they are
supposed to be.
- Added Makefile support via `languages.make`.
- Add `lsp.presets.emmet-ls` as supported LSP to
- `languages.jinja`
- `languages.liquid`
- `languages.tera`
- `languages.twig`
- `languages.astro`
- Fix `languages.hcl` init, depending on `comment-nvim` by checking if it is
enabled. Fixes a crash (#1350).
- Added [`tsgo`](https://github.com/microsoft/typescript-go) as an LSP to
`languages.ts`.
- Fix `languages.ts` registration of formatters.
- Added `asmfmt` and `nasmfmt` formatters to `languages.asm`.
- Added `astyle`, `indent` and `clang-format` to `languages.clang` formatters.
- Added `biome-check` and `biome-organize-imports` formatters to `languages.ts`.
- Added [`biomejs`](https://biomejs.dev/) as extra diagnostics provider to
`languages.ts`.
- Added `languages.standard-ml`.
- Added `languages.vue`.
- Added `languages.query`.
- Add `languages.fluent` using the official plugin. This only provides
highlighting.
- Add `languages.gettext`. This only provides highlighting.
- Add `languages.env`. This provides extra filetype hooks and diagnostics.
- Add `languages.openscad` using
[`openscad-lsp`](https://github.com/Leathong/openscad-LSP). This currently
relies on neovim builtin syntax for highlighting, and the lsp for formatting
and diagnostics.
- Added Debugging support to `languages.php`.
- Added Formatting support to `languages.php` via
[PHP-CS-Fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer).
- Added minimal `languages.twig`. Currently using [djlint](https://djlint.com/)
for most options, as better alternatives like
[twig-cs-fixer](https://github.com/VincentLanglet/Twig-CS-Fixer) aren't
packaged for nix.
- Added `languages.tex`. Currently only highlighting, formatting and lsp. No
previewing yet.
- Added `languages.jq`. Supports highlighting, formatting and lsp.
- Extend `languages.asm` to support more filetypes out of the box.
- Added {option}`vim.languages.java.extensions.maven-nvim.enable` for Maven
support;
- Added {option}`vim.languages.java.extensions.gradle-nvim.enable` for Gradle
support;
- Didn't Add
[`syntax-gaslighting`](https://github.com/NotAShelf/syntax-gaslighting.nvim),
you're crazy.
- Added neovim theme `gruber-darker`
<https://github.com/blazkowolf/gruber-darker.nvim>.
- Added coverage support (`vim.utility.crazy-coverage`) via
[`crazy-coverage.nvim`](https://github.com/mr-u0b0dy/crazy-coverage.nvim).
- Enable `nil.settings.nil.nix.autoArchive` by default.
- Added `vim.formatter.conform-nvim.presets.<name>` to contain formatter
configurations. This allows for more flexibility in nvf and reuse of
formatters across languages.
- Refactored all language modules to consume formatter presets via
`vim.formatter.conform-nvim.presets` instead of defining formatter
configurations inline.
[vagahbond](https://github.com/vagahbond): [codewindow.nvim]:
https://github.com/gorbit99/codewindow.nvim
- Add [codewindow.nvim] plugin in `vim.assistant.codewindow` with `enable` and
`setupOpts`
[irobot](https://github.com/irobot):
- Fix non-functional `vim.keymaps.*.noremap`. Now, setting it to false is
equivalent to `:lua vim.keymap.set(..., { remap = true })`
[mad-moss](https://github.com/mad-moss):
- Add [mini.cmdline](https://github.com/nvim-mini/mini.cmdline)
[kazimazi](https://github.com/kazimazi):
- Added [`grug-far.nvim`](https://github.com/MagicDuck/grug-far.nvim) the find
and replace tool for neovim.
- Fix lsp `client.supports_method` deprecation warning in nvim v0.12.
- Add [`blink.indent`](https://github.com/saghen/blink.indent) indent guideline
plugin.
[Ladas552](https://github.com/Ladas552)
- Changed `withRuby` to not be enabled by default
- Fix virtualtext mode in colorizer
[horriblename](https://github.com/horriblename):
- Ignore terminals by default in spell-checking
- Add default error filter to lsp-signature that prevents error spam.
[poz](https://poz.pet):
[neocmakelsp]: https://github.com/neocmakelsp/neocmakelsp
[arduino-language-server]: https://github.com/arduino/arduino-language-server
[glsl_analyzer]: https://github.com/nolanderc/glsl_analyzer
[fish-lsp]: https://www.fish-lsp.dev/
[fish_indent]: https://fishshell.com/docs/current/cmds/fish_indent.html
- Add CMake support with [neocmakelsp].
- Add Arduino support with [arduino-language-server].
- Add GLSL support with [glsl_analyzer].
- Update fidget-nvim setupOpts and fix NvimTree issue.
- Add Fish support via {option}`vim.languages.fish.enable` using [fish-lsp] and
[fish_indent]. Most of the work done by
[poseidon-rises](https://github.com/poseidon-rises) in
[!1107](https://github.com/NotAShelf/nvf/pull/1107).
- Remove `flake-parts` and `nix-systems` from flake.
[emo-mruczek](https://emo-mruczek.pet):
[vhdl-ls]: https://github.com/VHDL-LS/rust_hdl
- Add VHDL support with [vhdl-ls].
[itscrystalline](https://github.com/itscrystalline):
[img-clip.nvim]: https://github.com/hakonharnes/img-clip.nvim
- [img-clip.nvim]'s configuration now has it's own DAG entry, separate from
image-nvim.
[phanirithvij](https://github.com/phanirithvij):
[elm-language-server]: https://github.com/elm-tooling/elm-language-server
- Add Elm support with [elm-language-server]
[alv-around](https://github.com/alv-around):
- Fix `vim.assistant.codecompanion-nvim` lazy loading with [blink-cmp]
[foobar14](https://github.com/foobar14):
- Fix `vim.formatter.conform-nvim.setupOpts.formatters` type for correct merging
[SmackleFunky](https://github.com/SmackleFunky):
- Updated codecompanion-nvim adapters to allow specifying a model.
[tlvince](https://github.com/tlvince):
- Added configuration option for `foldenable`
[CaueAnjos](https://github.com/caueanjos)
- Added razor support for `roslyn_ls` and `csharp_ls`
- Added `csharpier` formatter to csharp language
[mputz86](https://github.com/mputz86)
- Add `vim.treesitter.indent.pattern` to specify file pattern(s) for which
treesitter indentation should be used
- Add `vim.treesitter.indent.excludes` to exclude filetypes from the treesitter
indentation; e.g. useful for Haskell and PureScript, for which treesitter
indentation does not work good
- Allow `vim.treesitter.context.setupOpts.max_lines` to also be given as a
string in order to allow percentage values like `"20%"`
[RoastedCheese](https://github.com/roastedcheese):
- Fix `golangci-lint` to lint at the package level.
[Poseidon](https://github.com/poseidon-rises)
[PHPStan]: https://github.com/phpstan/phpstan
- Add [PHPStan] as a formatter for `vim.languages.php`.
- Add `prettier` and `prettierd` as supported formatters to
`vim.languages.json`.
[sjcobb2022](https://github.com/sjcobb2022)
- Modernize rust toolchain by defaulting to a `rustaceanvim` free default
configuration. Enabled via configuration
`vim.languages.rust.extensions.rustaceanvim.enable`.
[BrockoliniMorgan](https://github.com/BrockoliniMorgan)
- Renamed
`languages.typescript.extensions.ts-error-translator.auto_override_publish_diagnostics`
[marciosobel](https://github.com/marciosobel)
- Added `goimports` as supported formatters to `vim.languages.go`.
[kruziikrel13](https://github.com/kruziikrel13)
- Added persisted as session plugin to vim.session as `vim.session.persisted`
[Adam0](https://github.com/adam01110):
[cord.nvim]: https://github.com/vyfor/cord.nvim
- Add [cord.nvim] plugin in `vim.presence.cord` with `enable` and `setupOpts`
<!-- vim: set textwidth=80: -->
|