我如何为 Neovim 构建了一个 Git Log Diff 工作流插件
Source: Dev.to
Overview
当我不久前彻底转向 Neovim 时,我发现缺少 JetBrains IDE(如 RubyMine)提供的 Git 集成功能——尤其是我每天用来检查最近提交和差异的 Git 日志视图。在 RubyMine 中,我常常会问:“最近三次提交有什么变化?”并立即得到交互式的历史视图。
Neovim 并没有内置这种 UI。虽然已有许多 Git 插件(例如用于行内标记的 gitsigns.nvim 或提供完整界面的 Neogit),但它们都没有提供我想要的工作流:一个紧凑的“挑选提交,然后比较差异”的体验。
于是我创建了 gitlogdiff.nvim,一个小巧的 Neovim 插件,用于列出最近的 Git 提交并快速查看它们的差异。
Features
- 简洁的提交列表 – 通过
git log获取,展示你的近期历史。 - 轻松的导航 – 使用
j/k在列表中移动并选择提交。 - 即时差异视图 – 按 “ 打开一个差异视图(通过
diffview.nvim),比较所选提交。
Usage
工作流与 JetBrains 的 Git 日志浏览器类似,但全部在 Neovim 中完成:
- 打开插件的提交列表。
- 使用
j/k导航。 - 在某个提交上按 “,即可侧边并排查看它与前一次提交的差异。
Contributing
插件已托管在 GitHub —— 这里。欢迎提交 issue、分享想法或提交 pull request!插件设计保持轻量同时具备可扩展性。
Future Plans
我希望在未来的版本中加入对 diffview.nvim 之外的其他差异查看器的支持。
Happy vim‑ing! 🧑💻