当你的lua/plugins/目录比项目代码还长,也许是时候重新思考了
从493行到55行:一个真实案例
启动 Neovim 要等好几秒 lua/plugins/目录下躺着几十个配置文件 很多插件的功能你只用到了 10% 每次更新插件都提心吊胆怕崩

第一步:重新审视"必需品"
第二步:原生插件管理器vim.pack
})

第三步:用Mini.nvim替代"全家桶"
0pt;">原插件 | Mini 替代 | 效果 |
vim-startify(启动页) | Mini.starter | ✅ 更轻量,Lua 编写 |
illuminate.nvim(词语高亮) | Mini.cursorword | ✅ 功能完全一致 |
which-key.nvim(键位提示) | Mini.clue | ✅ 极简设计,浮动窗口正合适 |
自定义会话管理 | Mini.session | ✅ 告别自己写 Vimscript |
gitsigns.nvim(Git 标记) | Mini.diff | ✅ 可用,但需要手动调整配置 |
0pt;">原插件 | 考虑过 Mini 替代 | 保留原因 |
Oil.nvim(文件浏览器) | Mini.files | 浮动窗口不如普通缓冲区直观 |
fzf-lua(模糊查找) | Mini.pick | 性能略慢,缺少侧边预览 |
fugitive.vim(Git 操作) | Mini.git | 无法查看完整 Git 索引状态 |
fidget.nvim(LSP 通知) | Mini.notify | 通知文本不对齐,信息可读性差 |

第四步:精简LSP和补全配置
优点:安装方便,一键安装语言服务器 缺点:多了一层依赖,跨机器同步配置可能出问题
优点:减少插件依赖,配置更可控 缺点:需要手动管理语言服务器版本
第五步:目录结构瘦身
单文件搞定一切
基础选项
快捷键
插件列表
实战对照清单
0pt;">功能 | 插件堆砌方案 | 瘦身方案 |
插件管理 | lazy.nvim (数百行配置) | vim.pack (几行) |
补全 | nvim-cmp + 各种 source | blink.cmp (单文件配置) |
文件查找 | telescope.nvim (复杂配置) | mini.pick 或 fzf-lua (精简) |
Git 标记 | gitsigns.nvim | mini.diff |
键位提示 | which-key.nvim | mini.clue |
启动页 | alpha.nvim / startify | mini.starter |
最后:何时保留插件
工作流依赖:如果某个插件已经成为你日常开发的核心环节,不要轻易替换 性能无明显优势:mini 替代品有时在大型项目上性能略逊 功能差异明显:如 fugitive.vim 的完整 Git 工作流,mini.git 暂无法替代
夜雨聆风