Markdown通用性暴论
Markdown通用性暴论
take from LincZero 2026-01-19 于 PKMer 知识管理交流群内的发言
暴论一: 通用性不等于标准
我遵守通用性,但通用性不等于标准
两个例子:
- h1 为例,多个 h1 是符合 Markdown 标准的,但不符合通用性实践
- obsidian callout & gfm alert 为例,是约定型语法补充,但完全向下&向上兼容,不在 Command Mark 标准的定义中,但满足通用性
暴论二:方言可比标准更具有通用性
哪怕是方言、哪怕不被支持、哪怕仅作为正文被渲染,只要设计合理,其可读性也可以大于瞎写的标准 markdown
- 反例 (设计/使用上不太良好/容易被滥于使用 的标准 Markdown):
复杂内容的私有代码块类型、单元格拥挤或列数过多的大表格、过多内容的 Admonition 代码块、HTML 片段 (特别是带 style 等有安全风险属性的) - 正例 (设计&使用良好的 Markdown 附加语法,通常完全向上&向下兼容):
anyblock 的一些设计、callout / gfm alert、Markdown-it-container、"伪标题" 和 "伪列表"
补充: 伪标题/伪列表是什么?
我个人设计的一个概念
不遵循 markdown 标题/列表语法的(一般是正文),但看上去像,或能起到相同功能的,类似标题/列表的正文写法。我把这叫伪标题 / 伪列表
例子1
伪标题 —— 伪列表
(1) 伪列表介绍
像这里这个就相当于伪列表,你完全可以改写成列表 (有序/无序) 的形式
相较于列表而言,没有了正式列表的缩进,包含表格/代码公式块/列表/引用块等都很方便
(2) 使用建议
如果你的伪标题里的内容不多,行数不多,这种其实也挺好用的。但长了的话我感觉不算合适
例子2
其实这种也有点像那种中文文章和作文。印刊文章本身没有结构化的表示方法。但可以在不同段落的开头使用 一、二、三,或其一、其二等,可以将多个段落很清晰地划分为多个不同的段落组
其一,是因为xxx
又xxx (段落二,而非行二)
其二,由于xxxx
对xxx而言于是乎xxx
其三,xxx
例子3
像很多非自搭博客 (CSDN/博客园/简书等),由于环境受限,无法魔改和做很多骚操作,也会用到这种伪标题
> 伪标题1 (用引用块伪装)
xxx
(2) 伪标题2 (也可以用 ①②ⅠⅡ 等)
xxx
> ## 伪标题3 (用引用块+标题伪装,区别于常规的引用块)
xxx
---
伪标题4 (使用 `---` 分割线)
xxx
----------伪标题5---------- (有点类似于代码块注释分割线)
xxx链接到当前文件 0
没有文件链接到当前文件