This section lists the release notes for tagged version of neovim-flake and current main.
This is the current master branch and information here is not final. These are changes from the v0.01 tag.
Special thanks to home-manager for this release. Docs/manual generation, the new module evaluation system, and DAG implementation are from them.
vim.lsp.hare
is no longer defined. If you use hare and would like it added back, please file an issue.
vim.startPlugins
& vim.optPlugins
are now an enum of string
for options sourced from the flake inputs. Users can still provide vim plugin packages.
If you are contributing and adding a new plugin, add the plugin name to availablePlugins
in types-plugin.nix.
neovimBuilder
has been removed for configuration. Using an overlay is no longer required. See the manual for the new way to configuration.
vim.treesitter.grammars
. Utilizes the nixpkgs nvim-treesitter
plugin rather than a custom input in order to take advantage of build support of pinned versions. See discourse for more information. Packages can be found under the pkgs.vimPlugins.nvim-treesitter.builtGrammars
attribute. Treesitter grammars for supported languages should be enabled within the module. By default no grammars are installed, thus the following grammars which do not have a language section are not included anymore: comment, toml, make, css, graphql, json.
nvim-treesitter
which fixes query errors.
vim.configRC
and vim.luaConfigRC
are now of type DAG lines. This allows for ordering of the config. Usage is the same is in home-manager’s home.activation
option.
vim.luaConfigRC = lib.nvim.dag.entryAnywhere "config here"
build.package
. There is no more .neovim
attribute from the configuration function, the output is the package itself. See the manual for accessing the meta
attributes.
build.rawPlugins
. They can be accessed in vim.startPlugins
& vim.optPlugins
config.build
attribute: build.viAlias
& build.vimAlias
built.package
A new section has been added for language support: vim.languages.<language>
. The options vim.languages.enableLSP
, vim.languages.enableTreesitter
, etc. will enable the respective section for all languages that have been enabled.
plantuml
and markdown
have been moved here
html
. The old vim.treesitter.autotagHtml
can be found at vim.languages.html.treesitter.autotagHtml
.
vim.git.gitsigns.codeActions
has been added allowing you to turn on gitsigns codeactions.
vim.visual.lspkind
has been moved to vim.lsp.lspkind.enable
vim.autocomplete.sources
, can also include optional menu mapping. And can provide your own function with vim.autocomplete.formatting.format
.
vim.visuals.indentBlankline.fillChar
and vim.visuals.indentBlankline.eolChar
turning them off should use null
rather than ""
now.
openOnStartup
option from nvim-tree-lua
statix
and deadnix
through vim.languages.nix.extraDiagnostics.types
plugin-
to allow autodiscovery of them
vim.languages.bash.enable
, includes bash-language-server
lsp, shellcheck
diagnostics, and shfmt
formatting
nvim-dap
debugger support under vim.debugger.enable
nvim-dap-ui
under vim.debugger.ui.enable
nvim-dap-virtual-text
under vim.debugger.virtualText.enable
vim.languages.rust.debugger.enable
telescope-file-browser
under vim.telescope.fileBrowser.enable
telescope-live-grep-args
under vim.telescope.liveGrepArgs.enable
nixpkgs-fmt
for formatting
null
will result in neovim calling the command as if it is in your $PATH
catppuccin
theme is now available as a neovim theme vim.theme.style
and lualine theme vim.statusline.lualine.theme
.
vim.languages.plantuml.plantumlPackage
and vim.languages.plantuml.javaPackage
can be used to configure which version of the corresponding packages are used.
vim.chatgpt.config
should be used to configure a command to get an api key. See https://github.com/jackMort/ChatGPT.nvim#configuration for details.