ITADN
roobert/activate.nvim
roobert/activate.nvim · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

🚀 activate.nvim

activate.nvim demo

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' } }
  }
}