README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈
🚀 activate.nvim
activate.nvim 是专为 Neovim 设计的插件安装系统,旨在补充 folke/lazy.nvim。
演示
功能特点
- 精选插件列表:该列表源自 rockerBOO/awesome-neovim] 中的插件清单。
- 直观的用户界面:用户可通过 telescope 界面轻松浏览、搜索、安装及卸载 Neovim 插件。
- 自动配置:如果某个插件遵循非官方的配置标准,
activate.nvim可以自动生成默认配置。此举旨在缩短新插件的初始设置时间。 - 自动更新插件列表:一个 Github action 会定期检查
awesome-neovim仓库中是否有更新,并更新对应的插件data.json文件,随后由lazy.nvim将其同步到 Neovim,操作方式与其他插件完全相同。
工作原理
插件更新
使用 activate.nvim 安装插件后,插件更新将由 lazy.nvim 以与其他插件相同的方式进行处理。
数据库刷新
为提供最新的插件,Github 流水线会每三小时检查一次 awesome-neovim 仓库的更新情况。一旦检测到变化,data/data.json 文件就会随之更新。这样一来,lazy.nvim 就能识别出 activate.nvim 的变化,从而确保用户始终能够使用到最新的插件。
非官方标准:setup.lua.example
插件开发者可以通过遵循一项非官方标准来支持activate.nvim。具体做法是在其插件仓库中创建一个名为setup.lua.example的文件。该文件应在$HOME/.config/nvim/lua/plugins目录中返回一个与lazy.nvim兼容的配置,如下所示:
return {
"roobert/tabtree.nvim",
config = function()
require("tabtree").setup()
end,
}
非标准插件
当插件不符合上述非官方标准时,系统会生成一个占位符配置,例如 $HOME/.config/nvim/lua/plugins/grapple.lua:
-- No example configuration was found for this plugin.
--
-- For detailed information on configuring this plugin, please refer to its
-- official documentation:
--
-- https://github.com/cbochs/grapple.nvim
--
-- If you wish to use this plugin, you can optionally modify and then uncomment
-- the configuration below.
return {
-- "cbochs/grapple.nvim"
}
安装
对于 lazy.nvim,请将此配置添加到 ~/.config/nvim/lua/plugins/activate.lua 中:
return {
"roobert/activate.nvim",
keys = {
{
"<leader>P",
'<CMD>lua require("activate").list_plugins()<CR>',
desc = "Plugins",
},
},
dependencies = {
{ 'nvim-telescope/telescope.nvim', branch = '0.1.x', dependencies = { 'nvim-lua/plenary.nvim' } }
}
}