Markdown 的克制,是一种设计

很多人第一次接触 Markdown,会觉得它的格式太少。

在 Word 中,正文可以设置不同的字体、字号、颜色、缩进和间距。为什么要换成一个看起来如此简陋的格式?

我认为,这种克制恰恰是 Markdown 的优点。

想象一下,在电梯里遇到领导,你只有三分钟汇报一项工作。你不可能把所有背景、过程和细节都讲一遍,而必须挑出最重要的内容,按照清晰的逻辑组织语言。

Markdown 的写作体验也有些类似。

它主要通过标题、段落、列表、引用、加粗等少量格式,表达内容之间的层次关系。由于没有太多视觉装饰可供选择,我们需要更多地考虑:

  • 这份文档究竟要解决什么问题?
  • 哪些内容是核心,哪些可以删除?
  • 观点之间是什么关系?
  • 读者应该按照什么顺序理解?
  • 哪些信息值得突出,哪些只需要作为补充?

当然,Markdown 并不会自动让人写出好文章。但当工具主动减少了无关的格式选择,我们就更容易把注意力放在内容本身。

少即是多。格式上的克制,最终是为了表达上的清晰。

AI 时代的必然选择

以前,Markdown 更多是程序员使用的一种轻量级标记语言。写代码的人用它写 README,做技术的人用它写开发文档。对于大多数日常办公人员来说,Word 和 WPS 才是理所当然的文档工具。

但是,AI 的出现正在改变这件事。

过去,我们向 AI 提问,得到一段回答,再把内容复制、粘贴到 Word 里,调整标题、段落、字体和格式,最后形成一份文档。现在,以 WorkBuddy 这类 Agent 为代表的工具,已经可以直接读取文件、整理资料、生成文档、修改内容,甚至按照任务要求连续完成多个步骤。

当 AI 从一个回答问题的工具,变成一个可以持续执行任务的工作伙伴,中间文档的数量就会大幅增加。

研究计划、任务清单、调研记录、分析结果、方案草稿、修改说明、执行日志……这些文档可能需要被 AI 反复读取、修改、比较和传递。它们未必需要精美的排版,却需要结构清晰、容易修改、方便追踪。

Markdown 应当是工作过程中的默认文档格式,把 DOCX 和 PDF 留给最终需要正式排版、审阅或交付的文档。

Markdown 最有价值的地方,是它提供了一种简单、透明、易于处理的中间表达形式。

当 AI 能够参与越来越多的日常工作,我们需要的不仅是一份最终交付的文档,还需要一系列能够被 AI 持续读取、修改、比较和复用的工作材料。

先把内容写清楚,再决定如何呈现;先让 AI 和人都能高效处理内容,再考虑最终文档的排版。

Markdown 不再只是程序员的工具

Markdown 是一种轻量级标记语言,即使没有专门的 Markdown 编辑器,你也能看懂这些内容。标题前面的 #、列表前面的 -,都是直接可读的文本。

这带来几个很实际的好处。

  • 门槛低:Markdown 文件就是普通文本文件,使用记事本、VS Code 或其他文本编辑器都可以打开和编辑。不需要购买专门的软件,也不需要复杂的格式设置。
  • 兼顾人和机器:人可以直接阅读 Markdown 源文件,AI 也可以方便地识别其中的标题、段落、列表和代码块。文档结构通过明确的符号表达,不必依赖字体大小、颜色或其他视觉属性来推断。
  • 便于修改和比较:Markdown 文件可以使用 Git 等版本控制工具管理。两版文档之间有哪些内容被增加、删除或修改,可以直接比较。对于 AI 反复修改的方案、技术文档和项目材料,这一点尤其重要。
  • 长期可读:Markdown 文件通常使用 UTF-8 等文本编码保存。即使某款编辑器停止维护,只要还有文本编辑器,就能打开文件并读取内容。未来能否继续完美渲染某种扩展语法是另一回事,但正文内容不容易被某个软件绑定。

为什么 AI 时代更适合使用 Markdown?

这里需要区分两个概念:最终文档和中间文档。

最终文档需要考虑阅读体验、版式、字体、页眉页脚、目录、审阅和正式交付。例如,报送学校的请示、提交编辑部的论文、对外发布的报告,往往需要 DOCX 或 PDF。

但中间文档的首要任务不是好看,而是让内容能够被持续处理。

想象一下这样的工作流程:

  • 我们把一些尚未整理的资料交给 AI,其中可能有错别字、重复内容、混乱的顺序和不完整的观点。
  • AI 将资料整理成结构化的 Markdown 文档。
  • 我们继续要求 AI 分析、补充、纠错和调整结构。
  • 不同的 Agent 或工具继续读取这些文档,完成后续任务。
  • 内容成熟后,再转换成 DOCX 或 PDF,进行人工审阅、排版和正式交付。

在这个过程中,Markdown 是一种方便传递和加工的中间表达形式。

它类似于一份结构化的工作底稿:内容可以不断演进,不必每次都花费精力维护排版。

内容与格式分离

我在 2018 年写过一篇文章,讨论内容与格式分离的问题:《内容和格式分离,说说写论文、写文档、画框图的事》。

DOCX、HTML 等格式既能承载内容,也能描述大量的结构和展示信息。HTML 可以将内容与样式分开,但实际网页中也经常同时包含内容、结构和样式信息。

Markdown 则尽量减少对视觉样式的描述,主要表达内容的逻辑结构。

例如,在 Word 中,我们可以将一个标题设置为微软雅黑、三号字、加粗、蓝色。但在 Markdown 中,通常只需要写:

## 二、工作目标

至于它最终在网页上显示成什么字号、在 Word 中使用什么字体,可以交给渲染器、模板或导出工具决定。

我们不必在内容尚未确定的时候,就过早地投入精力调整排版。

减少格式处理的干扰

把 DOCX 文件交给 AI,并不意味着 AI 就无法处理它。现在的工具已经能够读取 Word 文档,识别标题、表格和部分格式信息。

但 DOCX 内部包含的结构和格式信息,可能会增加解析、转换和内容提取的复杂度。对于只需要处理正文的任务,这些信息未必有价值。

Markdown 的优势是结构简单、文本透明,能够让 AI 直接处理我们真正关心的内容。

让版本管理成为日常习惯

如果一份方案要修改十次,传统工作方式可能会产生:

  • 方案初稿.docx
  • 方案修改版.docx
  • 方案修改版2.docx
  • 方案最终版.docx
  • 方案最终版最新.docx

这当然不是 Word 的问题,而是文件管理方式的问题。

如果使用 Markdown,并结合 Git,就可以直接比较两次修改的差异,查看修改记录,必要时恢复到之前的版本。AI 生成了什么、人工修改了什么,都可以更清晰地保留下来。

Markdown 的生态已经足够成熟

有人可能会觉得,Markdown 虽然简单,但最终还是得转换成 Word,日常办公是否会增加麻烦?

我认为,这个障碍已经比过去小得多。

首先,普通文本编辑器可以直接打开 Markdown。VS Code 等开发工具有丰富的预览和扩展功能,MarkText、Zettlr、Typora 等编辑器提供了更适合阅读和写作的体验。

其次,微信和企业微信已经原生支持 Markdown 文件预览。WPS 也可以通过相应的打开或导入功能处理 .md 文件。

选择什么 Markdown 编辑器?

Markdown 生态中有很多编辑器。下面介绍几种我认为有代表性的工具,重点是它们各自适合什么场景。这里主要讨论免费或开源的软件(Free and Open Source Software,FOSS)。

VS Code:适合开发人员和技术工作者

如果你本来就在使用 VS Code 进行软件开发,那么直接使用它编辑 Markdown 是最自然的选择。

配合 Markdown All in One 等扩展,可以获得目录导航、快捷键、列表处理、预览、Linting 等功能。再加上 Git,能够把 Markdown 文档纳入日常开发和版本管理流程。

我以前也写过一篇文章:《推荐好用的编辑器 Visual Studio Code》。

VS Code 的优势是扩展能力强,适合与代码和 AI 工具协作。它的不足是,面对复杂表格时,编辑体验不一定如专门的 Markdown 编辑器直观。

如果你的日常工作已经离不开 VS Code,就没有必要为了 Markdown 再安装一套完全不同的工具。

记事本、WPS:适合偶尔查看

如果只是临时打开一个 Markdown 文件,甚至不需要专门安装软件。

记事本和WPS可以直接查看和编辑文本。

Obsidian、Logseq:适合建立知识库

Obsidian、Logseq 这类工具不仅可以编辑 Markdown,还提供链接、反向链接、标签、搜索和知识组织等能力,因此更适合长期积累笔记、建立知识关联和管理个人知识库。

我曾在文章 《我所使用的29种或开源、或免费、或正版化软件》 中介绍过自己的软件使用经验。

我个人更倾向于把知识库和工作文档分开管理。

知识库需要长期维护自己的目录结构、链接关系和组织方式;临时工作文档则可能只是一个独立文件,需要快速创建、修改、传递和归档。

MarkText:适合追求简洁体验的人

marktext

MarkText 是一款开源 Markdown 编辑器,采用比较简洁的界面,支持实时预览和所见即所得式的编辑体验。

它支持 CommonMark、GitHub Flavored Markdown,以及部分 Pandoc Markdown 扩展,也提供数学公式、前置元数据等功能。

它比较适合这样的用户:不想使用 VS Code 那样复杂的开发工具,也不需要完整的知识库管理功能,只想专心编辑 Markdown 文档。

尤其是在表格编辑方面,MarkText 提供了专门的表格编辑工具,可以创建和调整行列。

它还支持绿色使用方式,可以下载相应的压缩包,解压后直接运行,不一定需要安装。

如果你追求简单、直观,可以试试它。

Zettlr:我更推荐的长文档编辑器

zettlr

如果你的工作不仅是写几段文字,而是需要撰写研究报告、论文、技术手册,甚至一本书,那么我更推荐 Zettlr。

Zettlr 的定位不仅仅是一个轻量级 Markdown 编辑器,还强调学术写作、长文档组织和文献管理。它希望让作者利用相对简单的 Markdown 语法完成复杂的写作任务,而不必直接面对 LaTeX 那样的完整排版体系。

Zettlr 用的Markdown方言包含 Zettlr 自身的编辑功能和 Pandoc 等工具链支持的扩展语法,并不等同于纯粹的 CommonMark 或 GFM。对于普通工作文档,使用标题、列表、表格、加粗、链接等常见语法通常就够了。只有在真正需要时,再考虑加入脚注、文献引用、交叉引用、数学公式等功能。

它有几个值得关注的特点:

  • 面向长文档和项目组织:可以将相关文件组织成项目,分别编写章节,再根据需要导出。对于较大的文档,把内容拆分成多个小文件,也更有利于 AI 按章节读取和修改。
  • 表格编辑比较友好:如果经常编辑 Markdown 表格,专门的表格编辑体验会比单纯修改管道符和分隔线更加直观。对于需要维护大量表格的文档,这一点很实用。
  • 支持学术引用:Zettlr 支持基于 Pandoc 的文献引用语法,并能与 Zotero 等文献管理工具配合。对于需要维护参考文献的论文和研究报告,这很实用。
  • 支持交叉引用:在长文档中,图表、公式和章节的编号可能会不断变化。Zettlr 支持相应的交叉引用语法。
  • 具备自动补全等辅助写作功能:例如,在输入标题、文献引用或代码片段时,可以借助相应的补全和编辑功能提高效率。对于经常写长文档的人,这比单纯的文本输入更方便。
  • 支持多种格式的导出:Zettlr 的导出体系主要依赖 Pandoc。根据具体导出配置,可以将 Markdown 转换为 DOCX、HTML、LaTeX 等格式。

对于需要同时兼顾 AI 协作、学术写作和大文档交付的人来说,Zettlr很值得尝试。