Issue #25
Email Newsletter
Sign up with your email address to receive an email when a new issue of This Week in Neovim is available
Neovim Core updates {#core}
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.
-
This release is focusing mainly on robustness and bug fixes, many of which by regular core developer Zeertzjq.
Neovim Plugin Community updates {#plugins}
new-plugins-{#new-plugins}">Neovim is full of active plugins. This section is about the community and what is going on.
New plugins {#new-plugins}
search-replace.nvim
A Neovim search and replace plugin that builds on the native search and replace experience.
olddirs.nvim
olddirs.nvim
is like :oldfiles
, but for directories. It provides autocommands which store the current directory in
an olddirs file when Neovim starts or the directory is changed with :cd
, :lcd
, or :tcd
. The old directories can be
retrieved as a list of strings or through a telescope.nvim
picker. A plugin written by
@marcuscaisey.
deferred-clipboard.nvim
A plugin that synchronizes the clipboard of your operating system with Neovim's unnamed register ("
), while avoiding
the performance issue of clipboard=unnamed
and clipboard=unnamedplus
. By
@EtiamNullam.
u-keymapper.vim
A universal keymapper for Vim and Neovim; useful for people who want keybindings for both editors. Created by @pechorin.
chafa.nvim
A new plugin that wraps the functionality of chafa — a tool that converts image data into graphics formats or ANSI/Unicode art — into Neovim. By @princejoogie.
neovim-plugin-boilerplate
Do you want to create a new plugin, but you need a template / skeleton? This plugin by @shortcuts is probably the right thing to start with!
live-server.nvim
Live reload HTML, CSS, and JavaScript files inside of neovim. Another classic VSCode extension being ported to neovim!
reddish.nvim
A new theme, by @paulfrische. Very red, much wow.
caskey.nvim
Declarative cascade key mapping configuration. The plugin written by @Nexmean can:
- Define all your keymaps as simple lua tables.
- Group keymaps the way you think about them.
- Modular, declarative way to define keymaps.
- It's as easy to define buffer local keymaps as global.
- which-key.nvim integration out of the box.
Congrats on the plugin!
nvim-various-textobjs
A new plugin that bundles more than a dozen textobjects (dozens!), written by @chrisgrieser. Among its features:
- Supports forward seeking of text objects (if appropriate for the type of textobj).
- Minimal configuration if you are fine with the default keybindings.
- Supports visual and operator pending mode.
- Fully written in Lua.
- Readme includes an example for further processing the textobjects, like opening the next js-regex pattern in regex101.com (prefilled with pattern, flags, and replacement).
Nice addition!
updates-{#updates}">Updates {#updates}
ChatGPT
Neovim plugin for interacting with OpenAI GPT-3 chatbot, providing an easy interface for exploring GPT-3 and NLP.
The plugin got updated with new features, and is expecting your feedback!
easypick
A Neovim plugin that lets you easily create Telescope pickers from arbitrary console commands.
The plugin received a new action which allows to run nvim command "prepended" with some text like for example
:FloatermNew make <your-make-target>
.
no-neck-pain.nvim
Dead simple plugin to center the currently focused buffer to the middle of the screen.
The plugin received a couple of new features and fixes, among more side buffer theme options, customizable mappings to to toggle the plugin, automated enbling on entering the editor, and more!
did-you-know?-{#tips}">Did you know? {#tips}
Did you know that you can automatically jump to the last place you’ve visited in a file before exiting? Just add this
autocmd
in your init.lua
:
vim.api.nvim_create_autocmd('BufReadPost', {
callback = function()
local mark = vim.api.nvim_buf_get_mark(0, '"')
local lcount = vim.api.nvim_buf_line_count(0)
if mark[1] > 0 and mark[1] <= lcount then
pcall(vim.api.nvim_win_set_cursor, 0, mark)
end
end,
})
It will search mark "
which contains the cursor position when last exiting the buffer and set the cursor position to
that location. A pretty nice trick to know!
Want to contribute? {#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.