你平时写文档用什么?我反正已经离不开 Markdown 了。它没有花里胡哨的排版按钮,也没有文件互相不兼容的烦恼,一份纯文本就能在电脑、手机、网页甚至 AI 之间来回流转。这篇文章是我这几年的实践整理,围绕 Markdown 编辑器这个主题,把选型、语法、常见工具、导出场景和问题排查一次讲清楚,适合刚入门的同学,也适合想在 VS Code、Obsidian 里建立高效工作流的老手。
1. Markdown 编辑器选型前,先想清楚这三件事
1.1 为什么编辑器比“记事本”更重要
Markdown 的本质是标记语言,但你不会拿系统自带记事本来写 Markdown,因为容易敲错符号,也没有即时反馈。好一点的 Markdown 编辑器至少要解决三件事:输入时的语法提示、编辑时的实时预览、输出时的一键导出。如果你还要用来写技术文档或者对接 AI,那最好还支持代码块高亮、数学公式、Mermaid 图表、剪贴板粘贴图片等特性。
我身边不少同事最初用 Markdown 都只是写 README,后来发现这套东西完全可以替代 Word 的日常用途,关键是要找一个趁手的编辑器。编辑器的选型决定了你后续的工作效率:有的编辑器侧重“所见即所得”,有的侧重“极客可定制”,有的侧重“文档管理”。没有全能工具,只有最适合自己使用场景的组合。
1.2 主流 Markdown 编辑器选型对比
我在不同时期用过 Typora、VS Code、Obsidian、语雀笔记等,最近也在关注一些新出的“高颜值”编辑器和小语文稿写作类工具。大体上可以分成三类:
- 所见即所得型:Typora、语雀、Obsidian 的实时预览模式,适合写文章、做笔记,排版直观,缺点是定制性和导出控制力相对弱。
- 代码编辑器增强型:VS Code 加 Markdown 插件,适合技术写作、需要兼顾代码块的场景,自由度最高,但需要动手配置。
- 在线/多端型:飞书云文档、Notion、卡叶笔记这类支持 Markdown 导入,手机电脑自动同步,适合团队协作和碎片化记录。
如果只选一个,我推荐 VS Code 或 Obsidian。VS Code 适合长期坐在电脑前、有一定折腾精神的用户;Obsidian 适合有较强笔记管理需求、希望本地数据完全可控的用户。Typora 虽然颜值高体验好,但正版收费后让一部分人转向开源替代方案。
1.3 一张表看懂核心能力
下面这张表是我自己整理时的评估维度,也方便你按需参考。
| 编辑器 | 实时预览 | Mermaid支持 | 数学公式 | 导出 Word/PDF | 双链笔记/知识库 | 上手难度 |
|---|---|---|---|---|---|---|
| Typora | 好 | 支持 | 支持 | 好 | 一般 | 低 |
| VS Code + Markdown Preview Enhanced | 好 | 支持 | 支持 | 好 | 需插件 | 中高 |
| Obsidian | 好 | 支持 | 支持 | 一般 | 很强 | 中 |
| 语雀 | 好 | 部分支持 | 支持 | 一般 | 一般 | 低 |
| 小语文稿类高颜值工具 | 好 | 不一定 | 不一定 | 取决于平台 | 一般 | 低 |
选择时可以先问自己三个问题:要不要本地存储?要不要一天到晚导出 Word?要不要在文档里画流程图和时序图?答案出来,编辑器基本也就定了。别一上来就追求最强插件,先把手头场景跑顺,后续再慢慢升级。
2. Markdown 语法避坑:表格、换行、公式、图表
2.1 一天能上手的核心语法
很多人在搜索栏里反复敲“Markdown语法”,说明这是新手最关心的事情。其实常用语法只占全部语法的一小部分:标题用井号,列表用减号或数字,加粗用双星号,代码用反引号,链接用中括号加圆括号,图片用感叹号加链接。真要记不住,打开 Typora 或 VS Code 的快捷键提示,几分钟就能学会。
这里有必要重点说三个容易踩坑的地方:
- 标题和段落之间要空一行。很多渲染器对“标题下紧跟内容”没问题,但“标题下紧跟列表”或者“两个标题叠一起”常会出现样式错乱。
- 换行不是“回车换行”就能达到的。Markdown 的单次换行在部分渲染器里不会生效,需要两个空格加回车,或者空一行分段。
- 列表里嵌套代码块时,代码块的缩进必须跟列表项保持一致,否则列表会断开。
初学阶段不要追求背下全部语法,只要会写标题、列表、加粗、链接、代码块,就已经能应付大部分日常记录了。等需要写表格、画流程图时,再回来查语法也不迟。
2.2 表格复制、竖线和换行为什么总出错
“markdown表格复制”和“markdown一段文字前面加一个竖杠”是高频搜索词,这其实是很多人在编辑表格时最头疼的问题。Markdown 表格语法本身不复杂:第二行必须有“---”分隔,列之间用竖线“|”分隔。但一旦内容里包含竖线字符,就需要用反斜杠转义,否则表格就会断列。
我在处理复杂表格时一般这么做:不在 Markdown 里硬画大表格,而是先在 Excel 里排好,再用在线表格转 Markdown 的工具转过去;或者反过来,需要复制 Markdown 表格进 Excel 时,先粘贴到纯文本编辑器里清理竖线,再粘贴到表格软件。
换行的问题同样高频。有人希望“一段文字前面加一个竖杠”表示引用,有人说“换行总不生效”。实际上“>”开头的是引用块,如果希望多行引用,要在每个换行处也加上“>”,或者用一个空行结束引用。换行问题则建议统一规范:短文本用两个空格回车,分段落时用空行,这样在 GitHub、Obsidian、公众号编辑器里都能保持一致。
2.3 公式和 Mermaid 图表并不是玄学
热词里有“markdown公式”和“markdown preview mermaid support”。这说明不少用户想在 Markdown 里写数学公式和画图。公式通常使用 LaTeX 语法,用美元符号包裹,如$x^2$表示行内公式,用两个美元符号$$...$$表示独立公式。这个功能不是所有编辑器默认都支持,Typora 和 VS Code 插件做得比较完善。
Mermaid 是一套用文本描述图表的工具,可以画流程图、时序图、甘特图、类图等。比如你在 Markdown 里写graph LR; A-->B,预览时就能看到一张流程图。这在写技术方案、架构说明时非常实用,不用再切到画图软件截图粘贴。
需要注意的是,Mermaid 语法在部分渲染器或导出场景里并不被支持。比如有的编辑器预览没问题,但导出 PDF 时图表不显示。通用的解决办法是单独把 Mermaid 渲染成图片后再插入 Markdown,虽然牺牲了一点“文本内修改图”的便利,但换来的是兼容性。如果你经常写学术文档,公式支持可能比图表更重要;如果写架构文档,Mermaid 就是刚需。
3. 从安装到导出:搭建一条可复用的 Markdown 工作流
3.1 在 VS Code 里做 Markdown 的准备工作
准备 Markdown 编辑器时,VS Code 是不少技术人首选的“底子”。安装 VS Code 后,要做的准备工作其实很少,但对于追求效率的人,我的建议是装这几类插件:Markdown All in One 用来做快捷键和目录,Markdown Preview Enhanced 用来增强预览和导出,Paste Image 用来直接粘贴剪贴板图片到本地。这些插件能覆盖绝大多数日常场景。
Markdown Preview Enhanced 是绕不开的插件,它支持导出 HTML、PDF、PNG,也支持 Mermaid、MathJax、PlantUML。我通常用它一键导出幻灯片,写分享材料时特别省事。注意,这个插件导出 PDF 默认通过 Chrome 无头浏览器渲染,所以电脑上最好装一个 Chrome 或 Edge。若渲染中文出现字体问题,还需要在配置里指定系统字体。
如果想用 Markdown 做更自动化的事情,可以在 VS Code 里配置任务或者结合 Git 做文档版本管理。比如我写技术提案时,用 Markdown 写草稿,提交到 Git 仓库,然后通过 CI 自动渲染成 PDF 发给团队,这样既保留每次修改记录,又不用担心最终文件被改乱。
3.2 Markdown 转 Word 的三种可靠姿势
热词里有一个很有意思的组合:“markdown转word工作流coze”。Coze 是字节跳动推出的 AI Bot 开发平台,你可以搭一个专门把 Markdown 文本转换成结构化 Word 文档的工作流。常见的做法是:先让 AI 把 Markdown 里的标题、表格、代码块识别成结构化字段,再由工作流节点生成 docx 文档。这样处理长文档时,比本地手动导出来得稳定。
本地方案里,用 Typora 导出 Word 是很简单的操作,它的底层依赖 Pandoc。Pandoc 是一个通用文档转换工具,直接把 Markdown 转成 Word、HTML、PDF 都行,但需要额外安装。VS Code 里的 Markdown Preview Enhanced 也可以导出,但中文环境容易遇到样式问题。因此我通常采用“Markdown + Pandoc + Word 模板”的方式,指定好模板后,导出的 Word 标题和正文样式能保持一致。
如果把“Markdown 转 Word”放进企业协作流程里,我更建议走云文档。比如飞书文档支持直接粘贴 Markdown 内容并自动解析,Notion 也支持 Markdown 导入。AI 生成的 Markdown 结果粘贴进去,基本不需要二次排版。这也是我把“coze 工作流”和“kimi markdown格式怎么使用”这类问题归到同一类原因:AI 输出最终要落到文档里,Markdown 是中间语言,编辑器是容器,导出是最后一公里。
3.3 Chrome 看 Markdown 和笔记导入场景
有人问“chrome 看 markdown”,说明他们经常需要在浏览器里阅读.md文件。其实 Chrome 默认不支持 Markdown 渲染,但安装一个浏览器扩展,比如 Markdown Viewer,就能把本地 Markdown 文件或链接渲染成网页样式。我通常用它在没有编辑器的情况下快速检查 GitHub 上的 README,或者在浏览器标签页里审阅别人发来的.md文件。
还有热词提到“卡叶笔记能导入markdown文本吗”。卡叶笔记是一款本地优先的笔记应用,也支持 Markdown 语法。新版本里可以通过“导入”功能把.md文件直接导入笔记库,部分版本还支持复制 Markdown 格式的文本后自动识别。使用笔记类应用时,我建议养成分文件存放的习惯,一个知识点一个.md文件,比所有内容堆在同一个大文档里更容易管理和检索。
3.4 在 Vue 项目里解析 Markdown 的常见做法
热词里“vue解析markdown语法”是开发者常遇到的问题。如果要在 Vue 项目里渲染 Markdown,一般用 markdown-it 或 marked 把 Markdown 文本转成 HTML,再用v-html输出。需要代码高亮时配上 highlight.js,需要表格渲染默认也支持。注意不要直接读取用户输入后不经过转义就渲染,因为存在 XSS 风险;建议在服务端或前端对 Markdown 源做安全过滤。
如果你的项目是文档站,我推荐用 VitePress,它本身就是基于 Vue 的静态站点生成器,能把 Markdown 文件直接变成路由页面,内置代码高亮和目录。这也是我写组件库文档时的首选方案:写 Markdown,自动生成文档站,哪怕之后要迁移到其他平台,原始.md文件依然通用。从这个角度看,Markdown 编辑器不只是编辑文本,更是整套内容生产链条的入口。
3.5 当 AI 开始输出 Markdown:LLM 与文档链路
现在很多 AI 工具默认用 Markdown 输出答案,因为 Markdown 能表达结构化内容,而且渲染成本低。所以“markdown格式 llm 接收”这个搜索词很有代表性——人们想搞清楚 AI 给出的 Markdown 到底是什么,以及怎么把它消化成可用文档。
我的处理流程很简单:AI 生成的 Markdown 先复制到本地 Markdown 编辑器里检查一遍,因为 AI 输出偶尔会有标题层级混乱、列表符号不统一、表格缺分隔线的问题。检查后如果需要继续喂给另一个 LLM 处理,最好用源码格式而不是渲染后的纯文本,这样结构化信息不会丢。比如让 Kimi 总结长文时,我会把 Markdown 源文件作为上下文输入,而不是先把文档转成 PDF 再丢给它。这样既能保留标题层级和表格关系,也能让模型输出更规范的 Markdown。
4. 常见问题排查:乱码、标题、插件配置
4.1 导出 PDF 中文乱码,先查三个地方
热词里“markdown preview enhanced 使用prince导出乱码”是一个比较具体的问题。Markdown Preview Enhanced 导出 PDF 时,可以选择用 Chrome 或 Prince 渲染。Prince 对排版支持更好,但中文支持有时候会掉链子,出现乱码或方块字。此时不要慌,先排查三个地方:是否设置了正确的字体,是否在样式里定义了font-family,导出用的工具版本是否太旧。
我自己的排查顺序是:先换用 Chrome 渲染试一下,如果 Chrome 正常,就说明问题出在 Prince 或系统字体;如果 Chrome 也乱码,就要检查 Markdown 文件编码是不是 UTF-8。为了避免导出时中文乱码,还可以在 Markdown 文件开头用 HTML 注释引入中文字体样式,或者在导出模板里加入body { font-family: "Noto Sans CJK SC", sans-serif; }。
4.2 标题没有井号了?不是文档坏了
热词里“markdown修改标题之后没有#了如何改回来”是新手常见问题。使用所见即所得编辑器时,你打了井号再打空格,标题样式生效后,井号默认被隐藏。很多新手以为“#”丢了,文档会错乱。其实这只是渲染状态,切换到源码模式就能看到井号。想要改回显示也很简单:在 Typora 里可以设置“标题显示标记符号”,在 VS Code 里按Ctrl+/切换源码视图,在 Obsidian 里用左侧面板打开源码模式。
这个现象背后是“所见即所得”和“纯文本标记”两种理念的冲突。理解这一点后,很多编辑器的诡异表现都能解释:在预览模式下看到的排版,和源码模式下看到的#、*、[]()是同一份内容的不同投影,并没有真正丢失任何东西。
4.3 高频问题速查表
下面是我给项目组整理的一个速查表,很多高频问题一栏就能解决。
| 现象 | 大概率原因 | 快速处理 |
|---|---|---|
| 换行不生效 | 单次回车不是分段 | 行尾加两个空格回车或空一行 |
| 表格复制后错列 | 内容里含未转义竖线 | 用|转义或先清理竖线 |
| 标题没有 # | 所见即所得模式隐藏标记 | 切换源码模式查看 |
| Mermaid 图不显示 | 渲染器不支持 | 先导出图片再插入 |
| 导出 PDF 中文乱码 | 字体或编码问题 | 指定中文字体、检查 UTF-8 |
| AI 生成的 Markdown 粘贴后格式丢失 | 平台不支持部分语法 | 用标准语法,避免嵌套过深 |
4.4 插件和工具选型的两条心得
第一,不要装太多插件。VS Code 市场里 Markdown 相关插件非常多,但装了以后互相冲突、快捷键抢占,反而影响效率。我的固定组合是 Markdown All in One、Markdown Preview Enhanced、Paste Image,三个足够。
第二,要测试“导出链路”。很多人只关注编辑器好不好看,忽略了最终交付物。我建议在选定编辑器后,立刻把一篇含标题、表格、代码、图片、公式的测试文档跑一遍导出流程,看 PDF 和 Word 是否正常。这个习惯能帮你避免在真正交稿时才发现问题。
最后再分享一个我自己的习惯:我始终把 Markdown 编辑器当成“文本处理引擎”看待,而不是某个固定软件。今天可以在这个编辑器里写,明天可以用另一个编辑器打开同一个文件,这就是纯文本的魅力。至于那些纠结“哪个编辑器最好”的朋友,我通常建议先选定一个能快速启动、导出稳定的工具用十天,任何工具都有学习成本,重要的是先把内容写出来。如果你也常年在 Markdown 和 Word、AI 文档之间来回折腾,希望这篇文章能让你少踩几个坑,把更多精力留给内容本身。