Introducing grove.el:Emacs 下的 Obsidian 风格笔记模式
作者长期在 Emacs 中寻找合适的笔记工作流,并开发了 grove.el,这是一种旨在简化 Emacs 笔记体验的方案。
grove.el 类似于 Obsidian,采用纯 Org 文件存储,无需数据库和外部依赖,避免了复杂的配置和潜在的维护问题。
它提供了文件树侧边栏、快速捕捉、维基链接、反向链接、每日笔记、全文搜索和标签搜索等功能,力求提供简单易用、高度灵活的笔记体验,让用户可以自由选择笔记方法,同时保留了 Emacs 的原生感觉。
该项目目前正在 MELPA 审核中,期待在未来提供更完善的功能,例如模板、标签自动完成和交互式图谱视图。
查看原文开头(英文 · 仅前 3 段)
I’ve been looking for (or rather, chasing!) the right note-taking workflow in Emacs for over a decade now. Back in 2013, I wrote about setting up Deft mode with Org-Mode and it was my attempt at bringing that Notational Velocity-style simplicity into Emacs, and I used it for a long time. I genuinely liked Deft, but it’s no longer actively maintained, and the same goes for Zetteldeft which was built on top of it as an alternative successor. Since then, I’ve tried the other major players – org-roam, Denote, and a handful of others. They’re all extremely impressive and comprehensive packages that do more than I could ever ask for, but none of them ever quite stuck for me. I’d set one up and more or less force myself to use it for a few weeks, and then quietly drift back to a loose pile of org files in a directory. And on my darker days, Apple Notes.
The problem was never these packages – it was more me and my typical, simple workflow that I’ve grown so used to over the years. Learning a new tool carried implicit friction points that compounded over time. Org-roam is powerful, but it is opinionated about note creation - every note needs a unique org-id property and lots of frontmatter that I often had to lookup from previous notes to even remember what to include. The whole system, when used correctly, is backed by a SQLite database via emacsql that indexes your nodes and links. That’s a lot of overhead in my candid opinion. If the database gets out of sync or emacsql has compilation issues, you’re debugging infrastructure instead of taking notes. This was another pain point of mine since I often work on multiple machines (work, personal).
On the other hand, simple tooling like ripgrep is plenty fast for searching files, and removing the database removes an entire category of things that can break – especially for newer users who are already navigating the Emacs and org-mode learning curve. Denote is a great package that uses a lot of good, well-thought-out ideas and tooling, but I found it had a higher barrier to entry and is a bit opinionated in favor of note-taking workflows that I just never adopted or used over the years. This isn’t meant to be a knock on org-roam or Denote - it’s all my preference – but I wanted something that fit how I actually work without getting in my way - and something that I knew I would use long term. The note-taking workflow I wanted is something that felt closer to just opening a folder of org files, but with the modern conveniences that tools like Obsidian offers.
※ 出于版权考虑,仅引用前 3 段。完整内容请阅读原文。