Markdown 语法备忘

因为写博客使用 Markdown 语法,一些不常用的语法有时需要检索才能准确使用。因此在自己的博客里维护一个 Markdown 语法索引页。因为 Hugo 使用的 goldmark 解析器是基于 CommonMark 0.30 的。因此本页记录的 Markdown 也是基本符合 CommonMark 的,能够在 Hugo 中正常解析。

标题

一级标题

输入:# 一级标题# 一级标题 #
输出:参见本节标题
注意:前后的 #一级标题 之间至少有一个空格,否则不能正常解析;前导的 #前可以任意缩进或空格。

多级标题

输入:输入几个前导的#就是几级标题,其他与一级标题相同
输出: 从略
注意:Hugo 使用的 goldmark 遵循 commonmark 0.30,最多只支持6级标题,超过6个#的前导不会解析为标题。

行内样式

粗体文本

输入:**示例文本**__示例文本__
输出:示例文本
注意:**__示例文本 之间没有空格,有空格可能无法正常解析。

斜体

输入:*示例文本*_示例文本_
输出:示例文本
注意:*_示例文本 之间没有空格,有空格可能无法正常解析。

粗斜体组合

输入:***示例文本***___示例文本___*__示例文本*__**_示例文本_**_**示例文本**___*示例文本*__
输出:示例文本
注意:***___示例文本 之间没有空格,有空格可能无法正常解析;上述各种情况中前后标记是对称的才能正常解析。

区块

换行与段落

列表

有序列表

输入一 输入二 输出
1. 第一 1) 第一 1. 第一
1. 第二 1) 第二 2. 第二
1. 第三 1) 第三 3. 第三

注意:数字的具体值并不重要,markdown 会自动按序递增。

无序列表

输入一 输入二 输入三 输出
- 第一 * 第一 + 第一 * 第一
- 第一 * 第一 + 第一 * 第一
- 第一 * 第一 + 第一 * 第一

注意:符号与数字之间有至少一个空格:简单的采用缩进可以生成嵌套列表。

任务列表

输入

- [x] Write the press release
- [ ] Update the website
- [ ] Contact the media

输出

引用

单段引用

输入

> 晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。

输出

晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。

多段引用

输入

> 晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。
>
> 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。

输出

晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。

林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。

代码块

输入(`替换为` (backquote) )

```CPP
#include<iostream>

using namespace std;

int main(){
cout<<"hello world!"<<endl;

return 0;
}
&#96;&#96;&#96;

输出

#include<iostream>

using namespace std;

int main(){
cout<<"hello world!"<<endl;

return 0;
}

链接相关(含图片等)

文本外链

输入

[CY's Blog](https://cysblog.space/)

或者可以添加标题

[CY's Blog](https://cysblog.space/ "博客主页")

输出
CY&rsquo;s Blog
可以对链接采用文本强调语法,此时是包含整个链接,即

**[CY's Blog](https://cysblog.space/ "博客主页")**


CY's Blog
可以设置链接为代码格式,此时是包含字面量的部分,即

[`CY's Blog`](https://cysblog.space/ "博客主页")


<code>CY's Blog</code>

原始外链

直接使用,不需处理,即
https://cysblog.space/
demo@demo.com

链接引用

输入

[引用链接][1]
...
[1]: https://cysblog.space/

输出
引用链接 建议 链接的真实部分一般放在文末或者段末。

文内链接

输入,使用#指定文内链接

[返回标题](#标题)
[返回斜体](#斜体)

输出
返回标题
返回斜体

图片

输入

![markdown 图片](./sample.jpg "markdown")
<!--或者-->
![markdown 图片](./sample.jpg)
<!--或者-->
![Image][1]
...
[1]: http://url/b.jpg

输出

markdown 图片

脚注

输入

后面是脚注[^1]
<!--其他内容-->
[^1]: 解释内容

输出
后面是脚注1

表格

输入

|标题1test|标题2test|标题3test|标题4test|标题5test|
|:---:|:----|---:|----|:---:|
|居中 |左对齐|右对齐|默认|居中|
|居中 |左对齐|右对齐|默认|居中|

输出

标题1test 标题2test 标题3test 标题4test 标题5test
居中 左对齐 右对齐 默认 居中
居中 左对齐 右对齐 默认 居中

公式

行内公式

输入:$\sqrt{b^2-4 a c}$
输出:$\sqrt{b^2-4 a c}$

行间公式

输入:

<div>
$$

\left\{\begin{matrix}
 1 &  2& 3 & 4\\
 1 &  2& 3 & 4\\
 1 &  2& 3 & 4
\end{matrix}\right.
$$
</div>

输出:

$$ \left\{\begin{matrix} 1 & 2& 3 & 4\\ 1 & 2& 3 & 4\\ 1 & 2& 3 & 4 \end{matrix}\right. $$

自定义

插入pdf

输入

{{ < embed-pdf url="./sample.pdf" hidePaginator="true" >}}
<!--或者-->
{{ < embed-pdf url="./sample.pdf" hideLoader="true" >}}
<!--或者-->
{{ < embed-pdf url="./sample.pdf" showSource="false"> }}

输出

    / [pdf]

其他

暂无

参考链接

https://markdown.com.cn/basic-syntax/

https://spec.commonmark.org/0.30/

https://commonmark.org/help/

 


  1. 解释内容自动放在文末了,请跳至文末查看 ↩︎