一早起来看到朋友抱怨笔记文件迁移起来非常麻烦,所以放弃从 Evernote 迁移数据到 Notion。也许大家都有类似的困境:用了很久的文本处理工具越来越难以适应新的需求,可是迁移到新工具的成本又非常高(主要是数据导出和格式转换),所以到底迁移还是不迁移?
差不多十年前,当我开始写学位论文的时候,也遇到类似的问题:最终提交的版本是 PDF,老板评阅的时候希望通过 Google Docs,而我写的时候又要考虑插入引用的问题。最主流的选择可能是使用 Latex,除了给我老板看的时候要转换成其他格式贴到 Google Docs,好像没啥大问题?可惜,我比较懒,Latex 的学习曲线太陡峭,我也没有很多公式要处理,所以最后我选择 Pandoc Markdown (Markdown 的一种方言)写完了三百页的学位论文。当时用 Markdown 写论文有以下几个优点:
- 可以在 Vim 里写作/编辑;
- 可以用 Git 做版本控制;
- 可以用 Pandoc 方便地转换成 PDF 等格式;
- 可以使用 Papers 的 citation key,引用管理的问题也解决了;
可以任意选用备份方式,我当时使用了 Dropbox + Github 的双保险,在不同的地方至少有五个备份,绝对不会出现没了电脑就没了论文的窘境。
简而言之,使用 Markdown 这种简单的标记语言,我将数据牢牢掌控在自己手中。十年后的今天,我依旧庆幸自己当初做了这个选择。这么多年,虽然工具变化了很多,但是数据都是基于 Markdown 格式存储的,所以这些数据都还躺在我的硬盘里。新工具不断诞生,旧工具不断消失(比如当年大红大紫的 Mou),我的文本处理工作流也发生了很大的变化,所以在此梳理一下。
什么是 Markdown?
Markdown 是一门非常轻量的标记语言,比如上面提到的 Latex 也是一门标记语言,但是它非常重。既然是标记语言, Markdown 可以通过各种方式渲染成好看的格式,或者轻松地转换成其他语言。而 Markdown 最大的特点就是轻量,任何人只要短短几分钟就可以轻松上手这门语言,具体的语法我们就不展开了,如果你还不太了解它的语法,可以去它的联合创造者 John Gruber 的网站上查看语法(另一位是英年早逝的联网之子 Arron Swartz 联)。随着时间的推移,各种方言不断衍生,比如 MultiMarkdown,Github Markdown 等等,大家可以根据自己的需求选择适合自己的 Markdown 语言。
为什么是 Markdown?
正因为 Markdown 十分轻巧,所以它成为了我们打造文本处理工作流的不二选择:
Markdown 在硬盘上占用的空间很小,比如这篇文章,在我的硬盘上,md 格式的文件只有14kB,存成 PDF 就是160kB,十倍大小都不止。
Markdown 非常容易上手,并且它用简单的符号就能处理加粗/多级标题等格式,可以让我们在写作的时候减少分心;
Markdown 转换起来方便,后文会介绍几款转换工具。比如我有一位在传统媒体工作的朋友,因为憎恶 MS Word,所以在 Ulysses 里用 Markdown 写稿,然后用内置的工具转换成 Pages/Docx 发给其他同事。
如何使用 Markdown 打造文本处理工作流?
诚如知名生产力博主 Ali Abdaal 最近的介绍,他使用不同的工具处理不同的任务,所以最佳的工具其实是最合适的工具。我们有各种处理文本的需求,所以也有可能需要不同的任务来应对这些续期,所以我们在下面根据不同的需求来推荐对应的 Markdown 工具:
- 收集点子;
- 笔记整理;
- 严肃写作;
- 时间管理;
- 脑图
- 格式转换。
每个分类下的工具需要满足两个要求:1. 可以处理 markdown 文件,2. 可以由用户选择数据存储位置。基于这两点,我们可以通过 Markdown 这种格式来掌控自己的文本数据。当然,不少优秀的工具也因此落选,比如 SimpleNote 是非常简洁好用的跨平台笔记工具,但是它的数据都是通过 Wordpress 母公司的服务器同步,用户无法选择本地数据,所以不在我们的推荐之列。
另外,推荐的工具主要集中在 macOS/iOS/iPadOS 生态下,部分也有 Linux / Windows 的版本,因为我只熟悉 Apple 生态。如果你熟悉 Windows / Android / Windows 上的笔记工具,也欢迎在评论里补充。
收集点子
不关你在构建自己的 Second Brain ,还是使用 Zettelkasten 来构建自己的笔记系统,收集点子都是重要的第一步。比如我会看大量生产力视频来学习新方法,我新养成的习惯就是在观看这些视频的同时,随手记录他们的要点,并把自己的想法记录下来,因此一款趁手的收集点子的工具就非常重要。
Drafts 原先是一款 iOS only 的工具,去年增加了 MacOS 版本,并且由买断改为了订阅,好在免费版本的功能已经十分强大,所以成为了我们收集点子的最佳选择。
- 基于 iCloud Sync 的同步功能,方便在 iPhone / iPad / Mac 之间同步数据;
- 官方提供了脚本库,我们可以根据需要安装;
- 支持听写,所以我们可以口述笔记,它能自动转换为文本;
- 支持多种 Markdown 语法,除了 md 本身,还有 MultiMarkdown ,github markdown 等。
nvALT 是一款老牌的轻量笔记工具,主打的就是快,目前这一版本的 UI 设计还延续着古老的 macOS 设计语言。
- 不用的时候它就在状态栏里,即用即走;
- 丰富的快捷键支持,基本上可以只使用键盘操作;
- 丰富的接口支持,用户可以自行拓展工作流,比如直接用外部编辑器打开长文档;
它的维护者 Brett Terpstra 说(MultiMarkdown 的作者 Fletcher Penney)正在开发基于 nvALT 的新一代笔记工具 nvUltra。
笔记管理
如果你有非常多的笔记,那么可能就需要一款笔记管理工具来组织管理这些宝藏。比如 OneNote,Notion 就是这一类工具的代表,可惜使用它们的用户对于没有完全的掌控,所以我们推荐的是 Obsidian 和 Foam 这两款工具,它们是近来这类工具的代表之作。
这是 Dynalist 的作者开发的新工具,目前正在活跃地开发 beta 版本,面向个人免费,当然你也可以付费支持。
- 支持双向链接,这可能是目前笔记管理类软件最红的功能了吧;
- 快速的迭代,目前开发者非常专注地迭代,基本每周都有版本更新;
- 活跃的社区,社区十分活跃,而且开发者经常在里面收集反馈,并在新版本中实施;
Foam 是一款参考 Roam Resarch 的开源文本管理工具。它本身不是独立工具,可以用插件的形式借助 VS Code 实现,我们可以在 VS Code 内安装 Foam for VSCode 来使用这一工具。
- 支持双向链接;
- 我们可以非常方便地定制自己的 Foam 工作环境,比如可以在 VS Code 里加上 Git,可以绑定 Vim 快捷键等等。
严肃写作
前面提到的 Drafts 和 nvALT 比较适合短文本的记录,但是一旦要撰写比较长的笔记或者文章,它们就显得捉襟见肘。所以在严肃写作的时候,我们需要更加专业的工具,这里推荐 Ulysses 和 Typora。当然这个分类下类似的工具还有很多,比如 MWeb,你也可以根据自己的需求来选择。
Ulysses 是非常知名的严肃写作工具,甚至有大量的作家使用这一工具。既然如此,一定有不少特性是它独有的:
- 可以将文档设定为 material sheet ,类似卡片写作中的卡片,等到一系列的卡片完成之后,一键就可以将它们合并成完整的文档;
- 有各种写作辅助工具,比如目标设定,语法检查等;
- 丰富的导出接口,这些内置的导出工具极大地方便了用户使用;
相较于 Ulysses 的高价,Typora 的免费使用可能是它最吸引人的一点。当然免费不等于廉价,Typora 的开发质量非常高,使用体验也非常棒:
- 即时渲染,当用户使用 md 写作的时候,它立即会渲染成相应的格式;
- 支持创建 md 表格;
- 支持 Latex 语法;
- 复制文本的格式默认为 HTML;
时间管理
市面上的时间管理工具五花八门,层出不穷。绝大多数的时间管理工具都将数据牢牢掌握在自己手里,用户对它们失去了掌控。好在 NotePlan 和 Mak 都是基于 md 文件打造的时间管理工具,所以用户可以很方便地管理自己的数据。
NotePlan 是一款将日历和笔记结合到一起的工具,跨 macOS/iOS/iPadOS 三个平台。德国独立开发者 Eduard Metzger 凭一己之力从 2016 年开始开发这一工具。
- 默认支持 markdown 语法,这样一下子将上手成本降低了很多。比如它会自动将
-
开头的行识别为一条任务; - 内置了笔记和日历模块,很好地将待办列表,日历和笔记三者结合到一起;
- 支持无线级别的标签,用户可以使用
/
对标签分级,方便对标签分组;
Edward 还公开了数据在用户硬盘上的地址,这样用户可以非常方便地迁移数据或者对数据进行再加工。
iCloud Drive Paths
General, standalone Notes: ~/Library/Mobile Documents/iCloud~co~noteplan~NotePlan/Documents/Notes
Calendar, daily notes: ~/Library/Mobile Documents/iCloud~co~noteplan~NotePlan/Documents/Calendar
这是我的好朋友 Shu 的独立制作,与 nvALT 的概念类似,不过这款工具对于待办列表的支持更棒,所以我就把它放在这一分类下了。具体的使用方法可以参考这篇文章。
- 默认使用 gist 存储数据,所以我们可以方便地同步数据,按照 Shu 的说法,Mak 可以当作是 gist 的 GUI;
- 即开即用,用完即走,非常轻量;
- 包含了内链,非常方便关联相关文件;
如果你想将 gist 同步到本地,可以使用这款工具 gister。
格式转换
当我刚开始用 md 的时候,很多工具只是一个纯粹的 md 编辑器,只支持读取/存储 md 格式。想要把 md 转换为其他格式,其实很不方便。幸好,我们有几乎全能的 Pandoc 和优雅的 Marked 2。
Pandoc 是一款无比强大的文件格式转换工具,它是由 Berkeley 哲学教授 John MacFarlane 独立开发的。至于这款工具到底能转换多少格式,请看这幅图片。
Pandoc 其实有自己的 md 变体,这套 md 方言更好地支持了学术写作,方便把 md 转换为 Latex。如果你打算和我一样,利用 md 来写学术论文,请参考 Pandoc Markdown写作规范。
如果你不习惯使用命令行工具,那么 Marked 2 是你的最佳选择。
Mindmap
严格来说,Mindnode 并不是一款 md 工具,但是它支持 md 输入/输出,所以我们可以拿它转换脑图和 md 文件。举个例子,MarginNote 是一款很棒的阅读工具,可以生成框架化的阅读笔记,但最大的缺点就是不支持 md 格式导出。所以我们可以先导出 mmap 的文件格式,这是一个通用的 mindmap 文件格式;然后我们用 Mindnode 读取这一 mmap 文件,并导出为 md 格式。所以 Mindnode 就变成了一个文件格式转换工具。
Recap
上面这些基于 md 的工具不仅极大地方便了我们的文本处理工作流,也让我们重新掌控了自己的数据。如果你也希望掌控自己的数据,希望上面这些推荐能够对你有所帮助。
名称 | 付费使用 | 免费使用 | 支持平台 | 分类 |
---|---|---|---|---|
Draft | 订阅 | Yes | macOS, iOS, iPadOS | 收集点子 |
Mak | Yes | macOS, Windows | 收集点子/时间管理 | |
nvALT | Yes | macOS | 收集点子 | |
Obsidian | Yes | macOS, Windows, Linux | 笔记管理 | |
Typora | Yes | macOS, Windows, Linux | 严肃写作 | |
Ulysses | 订阅 | macOS, iOS, iPadOS | 严肃写作 | |
MindNode | 订阅 | macOS, iOS, iPadOS | 脑图制作 | |
NotePlan 2 | Yes | macOS, iOS, iPadOS | 时间管理 | |
Pandoc | Yes | macOS, Windows, Linux | 格式转换 | |
Marked 2 | Yes | macOS | 格式转换 | |
MindNote | Yes | macOS, Windows, Linux | 笔记管理 |
如果你也想成为更高效的人,欢迎加入我们的 TG 群
也欢迎订阅我们的 TG 频道