Markdown 常用扩展语法

Markdown 常用扩展语法

Markdown 速查笔记中,已经讲过了 Markdown 基础语法。基本能满足我们多数写作需求。除此之外,Markdown 还有一些扩展语法,能够让我们更加直观清晰的表达内容。

表格

通过符号|可以很轻松的构造表格1

1
2
3
4
5
| 排名 | 语言 | 份额 |
| :----| :----: | ---:|
| 1 | python | 20% |
| 2 | java   | 15.1% |
| 3 | js     | 10% |

效果展示:

排名 语言 份额
1 python 20%
2 java 15.1%
3 javascript 10%

其中:

  • 左对齐用 :--- 表示
  • 右对齐用 ---: 表示
  • 居中对齐用 :---: 表示

任务列表(TODO List)

通过在每一行前面增加 - [] 来生成任务列表。

1
2
3
4
- [x] 产品需求评审
- [ ] 开发工作量评估
- [ ] 测试
- [ ] 产品上线
  • 产品需求评审
  • 开发工作量评估
  • 测试
  • 产品上线

删除线

在内容前后用 ~~ 包围即可产生删除线效果(即两个波浪号)2

1
离离原上草,~~一岁一枯荣~~

效果展示:

离离原上草,一岁一枯荣

画流程图 - mermaid 扩展插件

通过 mermaid 可以扩展 Markdown 语法,实现画图功能。

下面是摘抄的官方的例子

1
2
3
4
5
6
7
8
9
10
11
sequenceDiagram
    participant Alice
    participant Bob
    Alice->>John: Hello John, how are you?
    loop Healthcheck
        John->>John: Fight against hypochondria
    end
    Note right of John: Rational thoughts <br/>prevail!
    John-->>Alice: Great!
    John->>Bob: How about you?
    Bob-->>John: Jolly good!

sequence.png

Mermaid 实际上是扩展了 Markdown 的语法,并不是所有的 Markdown 编辑器都可以渲染这个语法,已知的有 Typora可以正常渲染。

Mermaid 可以生成多种风格的图,如流程图、甘特图、时序图、UML类图、git图等等。

对于前端开发,mermaid可以直接写在网页里,提供了多钟安装方式:

  • 通过直接引用js的方式

    https://unpkg.com/mermaid@<version>/dist/

  • 通过 yarn 安装(webpack demo)

    yarn add mermaid

此外,对于纯粹的 mermaid 语法,还可以使用 cli将其转换为普通图片。如:

1
`mmdc -i input.mmd -o output.svg`

标题 ID(页面内锚点跳转)

Markdown 支持标题 ID 功能,即可以指定标题的ID,然后可以通过标准链接方式进行跳转。 例如:

### 这是测试用的标题 {#custom-id}
[跳转值测试标题](#custom-id)

注意,括号左边的空格时不能缺少的。 效果如下:

这是测试用的标题

跳转值测试标题

如果markdown工具不支持上述{#custome-id}语法,还可以使用span标签: 用span标签,为元素添加id

1
2
3
<span id='jump1'> 这是锚点 </span>

[单击跳转至锚点处](#jump1)

效果如下:

这是锚点(跳转过来时,该锚点会自动滚动到屏幕顶端)

单击跳转至锚点处

定义列表2

顾名思义,定义列表(Definition Lists)就是对多个术语的描述和定义。书写方法,在第一行写要定义的术语,第二行以英文冒号开头,后接一个空格,然后是详细的定义。例如:

1
2
3
4
5
6
术语1
: 这是对术语1的定义

术语2
: 这是对术语2的定义
: 这是术语2的第二种定义

效果如下:

术语1
这是对术语1的定义
术语2
这是对术语2的定义
这是术语2的第二种定义

角注(footnote页面内部跳转)

脚注主要用于实现文章参考链接的引用功能。比如我们一些思路涞源于其他文章,此时需要注明出处,我们可以使用一个脚注来实现。这样做的好处是,保持文档的整洁。例如:

1
2
3
4
5
这是一个简单的脚注[^1],这是另一个脚注[^second]

[^1]: 这是第一个脚注

[^sencond]:这是第二个脚注

效果如下: 这是一个简单的脚注3,这是另一个脚注4

vscode 对 Markdown 的支持

vscode 对 Markdown 有良好的支持。 对于 Markdown 的编写规范,可以参考阮一峰的博客5《中文技术文档的写作规范》。 通过安装 Prettier 插件, 可以轻松的格式化 Markdown 文件, 使之满足阮一峰提到的写作规范。

参考

Rating: