Markdown 是简单的写作语法,即使 Metion 在它的基础上做了很多扩展,也都是针对具体场景下的应用。多数时候,Metion 提倡简单的语法,简单地书写。不提倡过于追求语法格式本身,也不提倡在简单的语法上进行复杂的嵌套。
当然,这些只是 Metion的一家之言,每个人都可以按照自己的偏好去写作,我们提供的只是建议而非指南、或者标准。
使用 H2 作为基本层级
一个 # 前缀的标题对应的 HTML 结果的 H1,而 ## 对应的则是 H2,虽然实际上使用 # (H1) 作为基础层级标题还是 ## (H2),两者并无区别,但从 HTML 页面 的角度来说, H2 作为正文的分段标题是更合适的。
另外,建议 # 后面多一个空格。
Markdown 也有其它的标题语法,为了避免不必要的兼容性冲突,Metion 都是禁用了对应的规则,比如下面:
一级标题
=================
二级标题
-----------------
避免过多层级
层级的概念,在标题之中,有理性的限制,最多 6 层,也就是 H1 ~ H6,实际上到了 H4、H5、H6 的时候,在样式上的区分度已经不足够明显了。
除了标题之外,还有列表语法,也存在层级的概念,因为列表可以包含子列表
。 Metion 已经把子列表的最大层级扩充到了 10 层 (一般解析器默认为 6 层),但即便如此,也不建议有太多层级的内容出现。一般建议,最好只有一层,多一点是两层,最多不宜超过三层。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 10
- 9
- 8
- 7
- 6
- 5
- 4
- 3
- 2
避免不必要的嵌套
一般情况下,我们会简单地假设一个列表语法:
- 每个列表项之间应该是连续的,没有其他内容间隔;
- 每个列表项应该是一行而非多行文本。
下面的例子,是一个有层级的列表,还嵌套了代码的示例,但这并不是推荐的,例子最终还能正常解析,也是因为 Metion优化过的结果,如果再嵌一个层级,比如在 引用
中再嵌入列表语法,相信最终渲染的布局会比较奇怪。
不必要的嵌套不只是会破坏最终的布局,而且书写过程中会不够友好,比如下面例子中的代码高亮这部分就失效了。
-
我是列表项:
from settings import *
- 还是列表项
你好,这是引用说明
-
子列表项
console.log("another code block")
- 子列表项
-
- 列表的第三项
可以不使用 Markdown 语法
并不总是要用到 Markdown语法,有些因为语法的问题导致最终渲染效果有些奇怪,那么完全比可以避免使用 Markdown 语法。
比如列表语法:
1. hello world
2. this is demo
完全可以写成(只需要把 . 改为 , 就可以了):
1, hello world
2, this is demo