在很久以前我写过关于nvim配置的文章,里面推荐使用 packer作为插件管理器。但是在一年多以前,packer的仓库中出现这么一段文字
This repository is currently unmaintained. For the time being (as of August, 2023), it is recommended to use one of the following plugin managers instead:
lazy.nvim: Most stable and maintained plugin manager for Nvim.
pckr.nvim: Spiritual successor of packer.nvim. Functional but not as stable as lazy.nvim.
而且nvim相关的开源社区已经出现了 lazyVim 这样的配置。之前曾今考虑过更换自己的配置,但是秉持着代码能跑就不动的传统,一直没有动手。但是这个周末我游戏也不太想玩,学习elisp的动力也没那么足,那就决定来捣鼓一下之前使用的配置把。
升级到lazy
总的来说升级过程并不复杂,我之前的配置没有什么很深度的定制,基本都是在使用插件的基础功能。根据官方的文档,在升级的时候需要更改的代码在 plugins.lua
这个文件中。这个文件专门记录了我们安装了哪些插件。这个文件中主要做了以下几个修改
在安装之前首先要安装 luarocks。在arch下,使用
sudo pacman -S luarocks
然后在plugins.lua
中添加安装 lazy
的代码
-- 自动安装 lazy 插件管理器
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable",
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
上述代码就是在检测在对应目录下是否存在 lazy.nvim
,没有则通过 git
进行安装。安装完成之后使用 vim.opt.rtp:prepend
来将lazy的路径添加到nvim的运行路径的最前面,保证在查找插件时有限在这个路径中查找。
接着修改下面安装插件的代码,主要的修改就是去除 use
,并且将 require
修改为 dependencies
。具体修改的内容可以看这个 commit。
这些工作都做完之后,重新打开nvim,可以发现 lazy
已经安装成功,并且它已经在为我们下载安装插件了
插件安装成功之后,使用 check_health lazy
来检查插件是否有问题,第一次检查会得到几个错误
因为现在 packer
和 lazy
安装的插件都存在,我们要根据提示删除 packer
的相关信息。
删除完了之后,再次检查,发现已经不存在上面的错误了
本篇就到这里了,后续每个插件是否都能正常工作我还没有测试,如果后续我发现错误,会在错误解决过后更新此文。如果有读者愿意使用我的配置,在使用过程中有错误请联系我,谢谢!