Neovim Core updates

Updates of Neovim itself, which are available on Neovim nightly.

Important: if you are a plugin author, you are strongly advised to follow the #14090 breaking changes on master GitHub thread, as it contains important breaking changes information.

  • spellsitter merged to core!. A huge contribution by @lewis6991 and @vigoux. If you did not know, spellsitter is a tree-sitter powered spell checking mechanism that only checks spells for specified queries. This allows checking only relevant parts such as comments or markdown text for spelling errors. (#19419)

  • #15391 adds tree-sitter parsers and queries for core languages (C, Lua and VimL).

    Neovim now bundles parsers and highlight queries for Lua, Vimscript, and C; by default the former are installed in /usr/local/lib/nvim/parsers, the latter in /usr/local/share/nvim/runtime/queries. Parsers and queries from plugins and user configs should take precedence, but conflicts cannot be ruled out in some situations.

    To enable treesitter highlighting for Lua, add vim.g.ts_highlight_lua = true to your init.lua. (Note that this disables regex syntax highlighting, which plugins may rely on for functionality. In this case, add vim.bo.syntax = 'ON' to ftplugin/lua.lua in your config.)

    Note that this does not work with brew install neovim --HEAD, which doesn’t bundle parsers, see discussions/3611.

  • #20039 updates nvim_parse_cmd().

    nvim_parse_cmd() now returns tab = -1 instead of tab = 0 when :tab modifier is absent. This makes it possible for :[n]tab to be properly forwarded to nvim_cmd() for all valid non-negative values.

  • #20105 changes tree-sitter runtime queries.

    The behavior of the runtime queries changed and now works as follows:

    • The first query in the rtp without and extends modeline will be used as the base query (typically implies the priority “user config > plugins > bundled runtime”).
    • All queries (without a specific order) with an extends modeline are concatenated with the base query, see :h lua-treesitter-query.

    This has to be done to correctly handle different version of the queries, working with different parsers following #15391.

Neovim Plugin Community updates

Neovim is full of active plugins. This section is about the community and what is going on.

Plugins supporting SemVer will have a little badge on the right side of their title: SemVer Those plugins help contributing to a more stable Neovim ecosystem, and hence are put in front of others. Thank you!

Need help

What do you want for autolist.nvim?

Automatic list continuation and formatting for neovim, powered by Lua.

@gaoDean is asking the community what kind of features you want to be included in the next iteration of autolist.nvim. Go help them out with the next feature set!


Guides, tours, articles, etc.


New plugins

debuglog

Have you ever used print() in your plugin code for debugging? This new plugin by @smartpde simplifies this use case - leave log statements in the code and enable them when needed.


telescope-recent-files

Another new plugin by @smartpde for picking the recent files with Telescope. Unlike the built-in oldfiles picker, this plugin also takes into account new buffers opened in the current session.


SemVer

kat.nvim

@katawful made a colorscheme called kat.nvim which hit its v1.0 version! This version is named Rotund Donskoy — I will let you read the Reddit announcement to know why! — and it looks pretty cool!


nvim-tundra

nvim-tundra

@sam4llis released their own personal colorscheme, called nvim-tundra. It has native integration of other famous plugins, such as:

  • nvim-lspconfig
  • nvim-treesitter
  • nvim-treesitter-context
  • gitsigns.nvim
  • nvim-cmp
  • telescope.nvim
  • vim-dadbod-ui

Go check it out!


sterm.nvim

sterm.nvim

Hey, a new terminal plugin! @Hvassaa made their very first Neovim plugin, sterm.nvim, which stands for (s)tupid (term)inal. It allows you to toggle between showing and hiding a terminal buffer. Simple, to the point. Congrats on your first plugin!


coal.nvim

coal.nvim

Are you sick of colors? Do you enjoy monochromatic themes? Here’s a new theme for you then, made by @cranberry-clockworks.


last-color.nvim

last-color.nvim

Procrastinating instead of doing their university duty, @raddari made a fun Neovim plugin to recall your last call to :colorscheme. You can then reuse it as you wish, and even automatically set your colorscheme based on the last session.

But really, do your homework!


lualine-lsp-progress.nvim

lualine-lsp-progress.nvim

A plugin that shows the LSP progress inside lualine statusline, by @WhoIsSethDaniel. I don’t know who they are, but that looks pretty cool!


telescope-makefile.nvim

telescope-makefile

Do you use Makefile with lots of targets? If yes, try @ptethng’s first plugin. With help from telescope.nvim it can show and run available make targets.


mason-null-ls.nvim

@jayp0521’s first plugin! It can automatically install/upgrade tools needed for null-ls (with help from mason.nvim, hence the name).


markid

A Neovim plugin to highlight same-name identifiers with the same color, by @David-Kunz.


SJ.nvim

SJ.nvim

@woosaaahh made a search based navigation combined with quick jump features plugin. Congrats! The name is two o and three a, for people struggling installing the plugin!


Updates

inc-rename.nvim

inc-rename.nvim is a small plugin that lets you preview Neovim vim.lsp.buf.rename command as you type (nightly only). It will highlight all occurrences of the variable in your buffers as you rename it.

inc_rename.nvim

inc-rename.nvim released a new update which adds proper support for the popular dressing.nvim plugin that enhances the appearance of Neovim’s default vim.ui.input. Now, the new name of a variable will be mirrored in dressing’s input buffer as you type in the command line. There is still a small issue with the UI though that can only be fixed in Neovim itself (see #14735).


diffview.nvim

A plugin that uses the strengths of Neovim builtin diff-mode and offers some nice interfaces for viewing git-diffs for any git revision, as well as exploring file history.

diffview.nvim

The plugin now has a merge tool! Also, that screenshot looks really nice, doesn’t it?! Congrats on the update, @sindrets.


Did you know?

Nothing for this week…


Want to contribute?

You have noticed something missing that you saw lately? Do not keep the candies for yourself and please feel free to share with us! You can open a PR at This Week In Neovim Contents.

Feel free to read how to contribute to get started.


CC-BY-SA