用 Markdown 文件做卡片笔记法

笔记管理约 8 分钟

卡片笔记法(Zettelkasten)就是一堆小笔记,每张只放一个想法,有一个固定不变的地址,并且明确指向相关的笔记,这样找想法靠的是顺着链接走,不是在文件夹树里翻。只用文件夹里的 Markdown 文件就能跑起来,一个笔记一个文件,名字唯一,笔记之间用 [[双向链接]] 连接,再配一个搜索框。妙言 V4.5.0 用双向链接、反向链接列表和全文搜索覆盖了这个核心,但没有关系图,想看到笔记网络画出来的样子,Obsidian 更合适。这套方法成不成,取决于习惯,和用哪个应用关系不大。

卢曼实际做了什么

这个方法得名于社会学家尼克拉斯·卢曼(Niklas Luhmann)的卡片盒,他在比勒费尔德大学任教,学校买下了他的遗稿,学校的卢曼档案项目发表过卡片盒如何组织的研究。这一节依据的是该项目里 Johannes Schmidt 的文章《Der Zettelkasten Niklas Luhmanns als Überraschungsgenerator》。

卡片盒是两套纸质卡片,较早的一套大约来自 1950 年代到 1960 年代初,约 23,000 张,较晚的一套约 67,000 张。每张卡片都有一个编号,编号就是它固定的位置,之后不会改动。接着卡片 1,1 继续写的想法编号为 1,1a,插在 1,1 和 1,2 之间,再往下接就是 1,1a1,所以整个集合是向内分叉生长的,不是按主题排序。Schmidt 还写到,有的卡片上记着其他卡片的编号作为引用,另有一个关键词索引,较晚那套里约有 3,200 条。zettelkasten.de 指出这个索引是入口列表,不是标签系统,每个词旁边的编号很少,有时只有一个。卢曼在访谈里说过他的高产大体能用这套系统解释,Schmidt 的标题把卡片盒称作惊喜生成器,文中引了卢曼的话,没有这些卡片、只靠思考,他想不到这样的点子。

有三点可以搬到文件上,每条笔记有一个永不改变的地址,笔记之间的关联是明确写出来的,入口很少而且是手选的。

用纯 Markdown 实现同样的想法

zettelkasten.de 是方法实践者运营的网站,它把原则归成两条,笔记需要唯一的地址好让别的笔记引用,还要是原子的,也就是一条笔记只放一个知识单元,这是指南针,不是死规定。它还说重点在连接多过收集,正文要用自己的话写,来源放在页脚。

落到一个 Markdown 文件夹里就是:

  • 一个想法一个文件。 一条笔记里有两个能单独成立的小标题,就拆开。
  • 文件名就是地址。 选定一种命名方式并坚持下去。zettelkasten.de 的例子用类似 202005191402 的时间戳,也提到标题只要唯一也可以当 ID。
  • 链接就是笔记正文里的纯文本。 在妙言里写成 [[另一条笔记的标题]]。
  • 入口也是笔记。 一条叫 索引 或 写作 的笔记,只列出某个主题下最好的笔记链接,作用就相当于卢曼的关键词索引。
  • 来源写在底部。 每条笔记末尾一行,写书名或网址。

妙言里的文件命名

妙言把去掉扩展名的文件名当作笔记标题,双向链接必须和这个标题完全一致,所以你起的名字就是你要敲的链接。这样有两种可行的做法。

用描述性标题当文件名,比如 间隔重复需要主动回忆.md,正文里的链接读起来自然:[[间隔重复需要主动回忆]]。这符合 zettelkasten.de 说的唯一标题可以当 ID,而且一句完整的论断在反向链接列表里很容易认出来。代价是以后给笔记改名,指向它的链接会断。

用 ID 加标题,比如 202610191402 间隔重复需要主动回忆.md,在任何文件浏览器里都按创建时间排序,但每个链接都要敲一遍 ID。选这种的话,先在搜索框里输入标题的一部分,找到准确的名字再写链接。

一次阅读或一个想法写成一条自己话写的笔记,用唯一的文件名存在 Markdown 文件夹里,用双链连到相关笔记,最好的几条列进索引笔记,反向链接指回来。
每个想法写成一个文件并起一个唯一的名字,链接建立关联,反向链接列表显示哪些笔记指回了它。

妙言 V4.5.0 里的双向链接和反向链接

把标题写在双括号里,不带扩展名,匹配是精确的,大小写和空格都算。妙言把括号里的全部内容当作标题,所以不支持 Obsidian 的 [[笔记|别名]] 和 [[笔记#标题]] 写法,没有别名,也不会跳到某个小标题,反向链接列表会把括号里的整段文字记成标题。规则和提示信息见双向链接与反向链接那篇。

反向链接列表在「显示简介」(⌘⌥I)打开的面板里,和字数、创建、修改时间放在一起,列出链接到当前笔记的那些笔记标题,没有的话显示「无」。标题是文字,不能点击,要跳转就用搜索框。索引读取的是妙言在当前列表里已经加载的笔记文本,所以启动后没打开过的笔记里写的链接,可能要等你打开或保存那条笔记才会出现在反向链接里。

找东西靠搜索框,它会拿你输入的词去匹配标题和正文,文件夹结构也可以和链接并存。常见的折中是只留几个大文件夹,比如 收集箱、笔记、来源,真正的组织工作交给里面的链接。妙言的本地优先方式把这一切都存成普通文件,随时能用别的应用打开。

妙言没有的东西

没有关系图,也没有插件系统,链接别名、标题链接和嵌入同样不支持。如果你在意笔记整体的形状,或者想要插件来做每日笔记、间隔复习,Obsidian 更合适,Mac 上的 Obsidian 替代品那篇列了哪些内容能迁移、哪些不能。普通的 [[标题]] 链接和笔记本身可以在两者之间互通,因为两个应用都读 Markdown 文件夹。

只想写笔记、连起来、再找回来的话,工具小一点,要维护的设置就少一些。

每周的流程

这部分是根据上面的原则给出的建议,不是卢曼档案里的内容:

  1. 边读边记。 留一条 收集箱 笔记或一个文件夹放零碎片段,先不整理。
  2. 每周一次把片段变成笔记。 值得留的片段,用自己的话写成一条只含一个想法的笔记,来源写在底部,其余的片段删掉。
  3. 每条新笔记至少加两个链接。 搜相关的词,链到旧笔记,并在链接前后的句子里写明为什么相关。
  4. 打开一条旧笔记的反向链接列表。 看看挂上来了什么,判断它是否需要一条自己的入口笔记。
  5. 更新索引笔记。 把最好的新笔记加到对应的 索引 里。

习惯养成之后半小时就够,顺序很重要,先写,再链接,最后做索引。

常见的问题

  • 只收集不写。 文件夹里塞满剪下来的引文,没有一条自己的话写成的笔记。办法是每周流程的第 2 步,不重写的就不留。
  • 笔记太大。 一条覆盖整章的笔记,没有单独的位置可以链接,要拆开。
  • 链接没有理由。 另见 [[X]] 不如一句说明 X 怎么相关的话。
  • 索引笔记长成什么都列的清单。 卢曼的关键词索引每个词的条目很少,入口要短,而且是挑出来的。
  • 给笔记改名。 在妙言里其他笔记里的链接还是旧标题,找不到目标时会提示标题不存在,搜旧标题把链接改过来。
  • 不同文件夹里有两条同标题的笔记。 妙言会转成搜索,不会直接打开其中一条,所以标题要唯一。

常见问题

做卡片笔记一定要用应用吗?

不用,卢曼用的是纸质卡片。文件夹里的 Markdown 文件加按文件名写的链接就够了,应用只是让链接和搜索更快。

文件名该用 ID 还是标题?

对妙言按标题精确匹配的链接来说都行。标题在正文和反向链接里更好读,ID 按时间排序,但每个链接里都得敲一遍。

以后能把笔记搬到 Obsidian 吗?

文件和普通的 [[标题]] 链接可以,因为两个应用都读 Markdown 文件夹,在 Obsidian 里写的别名和标题链接在妙言里不会生效。