Releases: NotAShelf/nvf
v0.7
Hi all! Happy...December? We're back with a large release (perhaps the largest yet) that brings many new, exciting, shiny stuff. This release features long-time requests such as lazy-loading (finally), a boatload of new language modules (including very niche ones), new plugins, module cleanups and internal refactors across the board to make existing modules more ergonomic, or more future proof. Docs have also been updated to reflect both those changes, and our project standards.
Notable Changes
v0.7 features many changes, some of them breaking. To allow you to tackle the update (v0.6 -> v0.7) at your own pace, I have pushed the latest version of the main
branch to the v0.6
tag, which you can pin in your flake input as github:notashelf/nvf/v0.6
until you feel comfortable updating. Though the breaking changes are easy to migrate, I still want users to have a smooth experience.
- Maps rewrite (#352 and #360)
- Lazy-loading support (#407)
- Base16 theming (#389)
- Completion rewrite, migrate to Luasnip (#398)
- New Language Modules
- Rewrite of Visual modules (#442)
- Some options have been renamed,
vim.visuals.enable
has been removed
- Some options have been renamed,
- All plugin inputs have been bumped to their absolute latest revisions.
- Documentation improvements, cleanup (#440)
- CI will now check for typos in code to avoid spelling mistakes.
- Documentation is now checked for dead-links on each rebuild.
- Deprecation of
vim.leaderKey
and similarvim.*
options in favor of a migration tovim.options
andvim.globals
(#455)- There used to be shorthand aliases to options that would normally go under
vim.opt
in Neovim. Some of those shorthands
have been removed in favor of the newvim.options
andvim.globals
submodules, allowing you to take full control of the generated option/global tables.
- There used to be shorthand aliases to options that would normally go under
A more complete overview can be found by comparing v0.6 and v0.7. In addition, please consult the release notes on mitigating breaking changes. If you notice anything broken in the new release, please let us know in the issues tab.
Thanks
For this release my thanks go to @diniamo, @horriblename, @Soliprem, @ksonj, @nezia1, @ppenguin and @DamitusThyYeetus123.
Thank you all those who have contributed to, used, criticized or talked about nvf! Additional thanks to those who have chosen to support us financially for this release. This release was made possible thanks to my fellow contributors, and the many people who bravely beta-tested 0.7 for us.
Hope to see you in the next release.
- NotAShelf
v0.6
Hello again after months of silence on the main branch! We have been cooking a very large release behind the scenes. v0.6
includes several refactors and new features. I cannot list all of them here, but the documentation has been updated to reflect
the most recent changes.
Most notably, we have changed names! This project is now called nvf as opposed to the former, generic
"neovim-flake" as its name. nvf stands for several things, none of them officially confirmed as the name. You are welcome to adapt the one you think is best: nvf is not a vim flake
, notashelf's vim flake
, nix vim flake
.
What's new
Thanks to my fellow co-maintainers and lovely contributors, we bring to you v0.6 with many notable changes. Some of them are:
- Most plugins have been converted to a new
setupOpts
API that generates configuration tables from Nix directly. This means you no
longer have to wait for us to add missing options - any option with the current naming scheme will be featured in the resulting
configuration table. Examples of this are included in the documentation. - The configuration wrapper has been updated to allow for verbatim Lua code wherever you don't want to use Nix to configure your Neovim.
vim.extraRuntimePaths
has been added to append additional directories to your Neovim configuration. This can be used to configure generic Neovim runtime paths, such asspell/
,after/
andftplugin/
.- You can now view view nvf option documentation from the comfort of your terminal. The Home-Manager and the brand new NixOS modules have both received an
enableManpages
option that will optionally add the generated manual pages to your PATH. Once the option is true, simply runman 5 nvf
and you will be able to view all available options from your terminal. - Treesitter module has received more configuration options, namely for
highlight
andindent
. Please take a look at the documentation for the new available module options. - Project structure has changed significantly. The modules directory has been broken into multiple files, each with its own purpose. I hope this will make the project tree easier to navigate for those who want to contribute.
For details on how to migrate to setupOpts
API in your configurations, please see v0.6 changenotes. @horriblename has kindly decided to include a section to make your migration much easier.
Thanks
For this release, I would like to thank @ksonj, @horriblename and @FrothyMarrow for their contributions.
As always, changes are documented in the changelog. Thanks for your continued support!
v0.5
Another major release!
This is a big one, featuring new languages, language servers, formatters and so much more. There also have been some refactors, thanks to the efforts of @horriblename, @FrothyMarrow and @ksonj alongside plugin and tooling updates.
As usual, my thanks go to our new contributors and old ones alike: @Amanse, @Vagahbond and @yavko.
Changes are documented in the changelog
v0.4
0.4 is finally out! It brings great many new features such as customizable keybinds, DAP support, UI improvements and much more.
With this update, I would also like to extend my thanks to @horriblename and @n3oney for implementing two of the biggest changes this update. Thank you for your efforts!
Changes are documented in the changelog
v0.3
The 0.3 is finally here after a few months of development. As this release consists mostly of refactors and restructuring, breaking changes are to be expected. If you are locking stable releases in your flake inputs, do make sure you follow the documentation carefully.
Changes are documented in the changelog.
v0.2 Release
See changelog for a list of new additions.