我所理解的 Markdown 最佳实践(5):Markdown 怎样交付到网页和富文本编辑器
- 中文加粗为什么会露出星号
- 给 Markdown 文档接入 textlint
- Markdown 里的代码也要检查
- 给 AI 写的 Markdown 做批注
- Markdown 怎样交付到网页和富文本编辑器(当前)
- 善用 Markdown 扩展语法
编辑器里能看见表格和图片,把同一个 Markdown 文件交给同事,结果可能只剩几行带竖线的文字,截图也找不到了。交付方式变了,解析器和资源的查找位置也跟着变了。
保留可编辑的 Markdown
交付仓库里的 README 时,把图片和文档一起提交,使用从文档出发能找到文件的相对路径。表格和任务列表是 GFM 的扩展,换到只支持基础语法的渲染器时,要在目标页面检查这些内容。代码围栏保留语言标签,渲染器可以据此高亮,工程工具也能据此选择解析器。GitHub Flavored Markdown 规范
按目标准备图片和 HTML
| 交付目标 | 图片如何随文档抵达 | 在哪里验收 |
|---|---|---|
| 仓库中的 Markdown | 资源和正文一起提交 | 仓库的实际预览页 |
| 静态 HTML | 复制资源到产物目录并改写相对路径 | 用产物的目录结构打开页面 |
| 富文本编辑器 | 使用目标编辑器接受的图片方式,例如上传或内联 | 粘贴后保存,再重新打开 |
把 Markdown 渲染成 HTML 时,代码里的尖括号和 & 会在 HTML 源码里转义。浏览器解析后,读者看到的仍是代码原来的字符。若粘贴后的代码框直接显示 <,可以检查剪贴板有没有按 HTML 写入,以及目标编辑器是否把这份内容当作纯文本接收。
在目标端至少核对一张图片、一张表格和一个带语言标签的代码块。富文本场景还要重新打开已保存的文档,因为预览成功只验证了渲染这一环,图片是否持久化、代码块是否保留语言,取决于保存后的内容。