nvf/docs/release-notes/rl-0.8.md

17 KiB

Release 0.8

Breaking changes

  • git-conflict keybinds are now prefixed with <leader> to avoid conflicting with builtins.

  • alpha is now configured with nix, default config removed.

  • Lspsaga module no longer ships default keybindings. The keybind format has been changed by upstream, and old keybindings do not have equivalents under the new API they provide. Please manually set your keybinds according to Lspsaga documentation following the new API.

  • none-ls has been updated to the latest version. If you have been using raw Lua configuration to manually configure it, some of the formats may become unavailable as they have been refactored out of the main none-ls repository upstream.

  • vim.useSystemClipboard has been deprecated as a part of removing most top-level convenience options, and should instead be configured in the new module interface. You may set appropriately to configure Neovim to use the system clipboard.

  • Changed which-key group used for gitsigns from <leader>g to <leader>h to align with the "hunks" themed mapping and avoid conflict with the new neogit group.

NotAShelf:

  • Add typst-preview.nvim under languages.typst.extensions.typst-preview-nvim.

  • Add a search widget to the options page in the nvf manual.

  • Add render-markdown.nvim under languages.markdown.extensions.render-markdown-nvim.

  • Implement for user-specified setup table in gitsigns configuration.

  • no longer compares values to an enum of available mouse modes. This means you can provide any string without the module system warning you that it is invalid. Do keep in mind that this value is no longer checked, so you will be responsible for ensuring its validity.

  • Deprecate vim.enableEditorconfig in favor of .

  • Deprecate rnix-lsp as it has been abandoned and archived upstream.

  • Hardcoded indentation values for the Nix language module have been removed. To replicate previous behaviour, you must either consolidate Nix indentation in your Editorconfig configuration, or use an autocommand to set indentation values for buffers with the Nix filetype.

  • Add for manually managing the previously managed lightbulb autocommand.

    • A warning will occur if and vim.lsp.lightbulb.setupOpts.autocmd.enabled are both set at the same time. Pick only one.
  • Add yanky.nvim to available plugins, under vim.utility.yanky-nvim.

  • Fix plugin setupOpts for yanky.nvim and assert if shada is configured as a backend while shada is disabled in Neovim options.

  • Add yazi.nvim as a companion plugin for Yazi, the terminal file manager.

  • Add and to allow declaring autocommands via Nix.

  • Fix plugin setupOpts for yanky.nvim and assert if shada is configured as a backend while shada is disabled in Neovim options.

  • Add yazi.nvim as a companion plugin for Yazi, the terminal file manager.

  • Add snacks.nvim under vim.utility.snacks-nvim as a general-purpose utility plugin.

  • Move LSPSaga to setupOpts format, allowing freeform configuration in vim.lsp.lspsaga.setupOpts.

  • Lazyload Lspsaga and remove default keybindings for it.

  • Add colorful-menu.nvim to enhance the completion menus, with optional integration for blink-cmp and nvim-cmp

  • Add oil.nvim as an alternative file explorer. It will be available under vim.utility.oil-nvim.

  • Add vim.diagnostics to interact with Neovim's diagnostics module. Available options for vim.diagnostic.config() can now be customized through the in nvf.

  • Add vim.clipboard module for easily managing Neovim clipboard providers and relevant packages in a simple UI.

    • This deprecates vim.useSystemClipboard as well, see breaking changes section above for migration options.
  • Add hunk.nvim, Neovim plugin & tool for splitting diffs in Neovim. Available as vim.git.hunk-nvim

amadaluzia:

horriblename:

  • Add [aerial.nvim].
  • Add [nvim-ufo].
  • Add blink.cmp support.
  • Add LazyFile user event.
  • Migrate language modules from none-ls to conform/nvim-lint
  • Add tsx support in conform and lint
  • Moved code setting additionalRuntimePaths and enableLuaLoader out of luaConfigPre's default to prevent being overridden
  • Use conform over custom autocmds for LSP format on save

diniamo:

  • Add Odin support under vim.languages.odin.

  • Disable the built-in format-on-save feature of zls. Use vim.lsp.formatOnSave instead.

LilleAila:

  • Remove vim.notes.obsidian.setupOpts.dir, which was set by default. Fixes issue with setting the workspace directory.
  • Add vim.snippets.luasnip.setupOpts, which was previously missing.
  • Add "prettierd" as a formatter option in vim.languages.markdown.format.type.
  • Add the following plugins from mini.nvim
    • mini.ai
    • mini.align
    • mini.animate
    • mini.base16
    • mini.basics
    • mini.bracketed
    • mini.bufremove
    • mini.clue
    • mini.colors
    • mini.comment
    • mini.completion
    • mini.deps
    • mini.diff
    • mini.doc
    • mini.extra
    • mini.files
    • mini.fuzzy
    • mini.git
    • mini.hipatterns
    • mini.hues
    • mini.icons
    • mini.indentscope
    • mini.jump
    • mini.jump2d
    • mini.map
    • mini.misc
    • mini.move
    • mini.notify
    • mini.operators
    • mini.pairs
    • mini.pick
    • mini.sessions
    • mini.snippets
    • mini.splitjoin
    • mini.starter
    • mini.statusline
    • mini.surround
    • mini.tabline
    • mini.test
    • mini.trailspace
    • mini.visits
  • Add fzf-lua in vim.fzf-lua
  • Add rainbow-delimiters in vim.visuals.rainbow-delimiters
  • Add options to define highlights under

kaktu5:

  • Add WGSL support under vim.languages.wgsl.

tomasguinzburg:

thamenato:

  • Add ruff as a formatter option in vim.languages.python.format.type.
  • Add cue support under vim.languages.cue.

ARCIII:

  • Add vim.languages.zig.dap support through pkgs.lldb dap adapter. Code Inspiration from vim.languages.clang.dap implementation.
  • Add leetcode.nvim plugin under vim.utility.leetcode-nvim.
  • Add [codecompanion.nvim] plugin under vim.assistant.codecompanion-nvim.
  • Fix codecompanion-nvim plugin: nvim-cmp error and setupOpts defaults.

nezia1:

  • Add support for nixd language server.

jahanson:

  • Add multicursors.nvim to available plugins, under vim.utility.multicursors.
  • Add hydra.nvim as dependency for multicursors.nvim and lazy loads by default.

folospior:

  • Fix plugin name for lsp/lspkind.

  • Move vim-illuminate to setupOpts format

iynaix:

  • Add lsp options support for nixd language server.

Mr-Helpful:

  • Corrects pin names used for nvim themes.

Libadoxon:

UltraGhostie

  • Add harpoon plugin for navigation

MaxMur:

  • Add YAML support under vim.languages.yaml.

alfarel:

  • Add missing yazi.nvim dependency (snacks.nvim).
  • Add mkdir.nvim plugin for automatic creation of parent directories when editing a nested file.
  • Add nix-develop.nvim plugin for in-neovim nix develop, nix shell and more.
  • Add direnv.vim plugin for automatic syncing of nvim shell environment with direnv's.
  • Add blink.cmp source options and some default-disabled sources.
  • Add blink.cmp option to add friendly-snippets so blink.cmp can source snippets from it.
  • Fix blink.cmp breaking when built-in sources were modified.
  • Fix conform.nvim not allowing disabling formatting on and after save. Use null value to disable them if conform is enabled.

TheColorman:

  • Fix plugin setupOpts for neovim-session-manager having an invalid value for autoload_mode.

esdevries:

BANanaD3V:

  • alpha is now configured with nix.
  • Add markview-nvim markdown renderer.

viicslen:

  • Add intelephense language server support under vim.languages.php.lsp.server

Butzist:

  • Add Helm chart support under vim.languages.helm.

rice-cracker-dev:

  • eslint_d now checks for configuration files to load.
  • Fix an error where eslint_d fails to load.
  • Add required files support for linters under vim.diagnostics.nvim-lint.linters.*.required_files.
  • Add global function nvf_lint under vim.diagnostics.nvim-lint.lint_function.
  • Deprecate vim.scrollOffset in favor of vim.options.scrolloff.

Sc3l3t0n:

  • Add F# support under vim.languages.fsharp.

venkyr77:

  • Add lint (luacheck) and formatting (stylua) support for Lua.
  • Add lint (markdownlint-cli2) support for Markdown.
  • Add catppuccin integration for Bufferline, Lspsaga.
  • Add neo-tree, snacks.explorer integrations to bufferline.
  • Add more applicable filetypes to illuminate denylist.
  • Disable mini.indentscope for applicable filetypes.
  • Fix fzf-lua having a hard dependency on fzf.
  • Enable inlay hints support - config.vim.lsp.inlayHints.
  • Add neo-tree, snacks.picker extensions to lualine.
  • Add support for vim.lsp.formatOnSave and vim.lsp.mappings.toggleFormatOnSave

tebuevd:

  • Fix pickers configuration for telescope by nesting it under setupOpts
  • Fix find_command configuration for telescope by nesting it under setupOpts.pickers.find_files
  • Update default telescope.setupOpts.pickers.find_files.find_command to only include files (and therefore exclude directories from results)

ckoehler:

  • Fix oil config referencing snacks
  • Add flash.nvim plugin to vim.utility.motion.flash-nvim
  • Fix default telescope ignore list entry for '.git/' to properly match
  • Add gitlinker.nvim plugin to vim.git.gitlinker-nvim
  • Add nvim-treesitter-textobjects plugin to vim.treesitter.textobjects
  • Default to disabling Conform for Rust if rust-analyzer is used
    • To force using Conform, set languages.rust.format.enable = true.

rrvsh:

  • Add custom snippet support to vim.snippets.luasnip
  • Fix namespace of python-lsp-server by changing it to python3Packages

Noah765:

  • Add missing flutter-tools.nvim dependency plenary.nvim.
  • Add necessary dependency of flutter-tools.nvim on lsp.
  • Add the vim.languages.dart.flutter-tools.flutterPackage option.
  • Fix the type of the highlight color options.
  • Add vim-sleuth plugin under vim.utility.sleuth.

howird:

  • Change python dap adapter name from python to commonly expected debugpy.

aionoid:

  • Fix render-markdown.nvim file_types option type to list, to accept merging.
  • Add [avante.nvim] plugin under vim.assistant.avante-nvim.

poz:

  • Fix gitsigns null-ls issue.
  • Add everforest theme support.

Haskex:

  • Add Plugin Hardtime.nvim under vim.binds.hardtime-nvim with enable and setupOpts options

taylrfnt:

nvim-tree:

  • Add missing right_align option for existing renderer.icons options.
  • Add missing render.icons options (hidden_placement, diagnostics_placement, and bookmarks_placement).

cramt:

  • Add rubylsp option in vim.languages.ruby.lsp.server to use shopify's ruby-lsp language server

Haskex:

  • Add img-clip.nvim plugin in vim.utility.images.img-clip with enable and setupOpts
  • Add vim.utility.images.img-clip.enable = isMaximal in configuration.nix

anil9:

  • Add Clojure support under vim.languages.clojure using clojure-lsp
  • Add code evaluation environment conjure under vim.repl.conjure

CallumGilly:

  • Add missing transparent option for existing onedark.nvim theme.

theutz:

  • Added "auto" flavour for catppuccin theme

lackac:

  • Add solarized.nvim theme with support for multiple variants
  • Add smart-splits.nvim for navigating between Neovim windows and terminal multiplexer panes. Available at vim.utility.smart-splits.
  • Restore vim-dirtytalk plugin and fix ordering with spellcheck in generated config.
  • Fix lualine separator options
  • Add neogit, an interactive and powerful Git interface for Neovim, inspired by Magit
  • Allow deregistering which-key binds or groups by setting them to null

justDeeevin:

  • Add supermaven-nvim plugin in vim.assistant.supermaven-nvim with enable and setupOpts

trueNAHO:

soliprem:

  • fix broken neorg grammars
  • remove obsolete warning in the otter module

Cool-Game-Dev:

  • Add nvim-biscuits to show block context. Available at vim.utility.nvim-biscuits.