Recently the nvim 0.7.2 version is released following the 0.7.0 release two months ago. Here are some of the updates in 0.7.0.
Python 2 support is removed#
Python 2 support is dropped since nvim 0.7.0.
So command :py
and :py3
works the same now.
Mappings#
- there is a new
vim.keymap.set()
interface, where you can set mapping for multiple modes at the same time. - support
desc
field for mappings, which is used to describe what the mapping does. Check this commit.
Easier inspection of lua table#
- we can use
:lua =expr
: quickly print the value of an expression, e.g.,:lua =vim
will print thevim
table. - The function
vim.pretty_print()
can print lua tables nicely. Usevim.pretty_print()
to show the content of a lua object
Autocmd in lua#
You can now use native lua function to create autocmd in Lua, no more vim.cmd()
hack.
See :h nvim_create_automcmd
for the details.
Create command in lua#
You can now create command in lua via function nvim_create_user_command()
.
Filetype.lua#
The old way of detecting filetypes from vim is slow. So the new filetype.lua
is introduced to reduce the time.
TL;DR, add the following config to init.vim
" use filetype.lua instead of filetype.vim
let g:do_filetype_lua = 1
let g:did_load_filetypes = 0
or use
vim.g.do_filetype_lua = 1
vimg.did_load_filetypes = 0
if you use init.lua
.
Global statusline#
Want to use a single statusline for all the windows? Now it is possible, with the following setting:
set laststatus=3