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
输出
- 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;
}
```
输出
#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’s Blog
可以对链接采用文本强调语法,此时是包含整个链接,即
**[CY's Blog](https://cysblog.space/ "博客主页")**
为
CY's Blog
可以设置链接为代码格式,此时是包含字面量的部分,即
[`CY's Blog`](https://cysblog.space/ "博客主页")
原始外链
直接使用,不需处理,即
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
输出
脚注
输入
后面是脚注[^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>
输出:
自定义
插入pdf
输入
{{ < embed-pdf url="./sample.pdf" hidePaginator="true" >}}
<!--或者-->
{{ < embed-pdf url="./sample.pdf" hideLoader="true" >}}
<!--或者-->
{{ < embed-pdf url="./sample.pdf" showSource="false"> }}
输出
其他
暂无
参考链接
https://markdown.com.cn/basic-syntax/
https://spec.commonmark.org/0.30/
-
解释内容自动放在文末了,请跳至文末查看 ↩︎