Markdown
Markdown 是什么
Markdown 是一种轻量级的标记语言,具有纯文本格式语法,由 John Gruber 和 Aaron Awartz 于 2004 年创建1。Markdown 常用于编写结构化文档,它基于
usenet
的格式约定2。Markdown 的特征由最初 John Gruber 发布的 非正式规范 以及将 Markdown 转为 HTML 的参考实现所定义,之后出现了很多不同的实现。很多实现都对 Markdown 的基本语法进行了相应的扩展。
RFC 7763 引入了
text/markdown
MIME 类型。RFC 7764 介绍了关于 Markdown 的一些不同版本的扩展信息。
Markdown 变体
- MultiMarkdown
- GitHub Flavored Markdown (GFM)
- Pandoc
- Fountain
- CommonMark
- kramdown-rfc2629 (Markdown for RFCs)
- rfc7328 (Pandoc2rfc)
- PHP Markdown Extra
Markdown 基础语法
Typora Markdown 语法参考可以在 这里 看到,也可以在安装完 Typora 软件后通过 Help->Markdown Reference
查看。
目录
输入 [TOC]
展示目录。
水平线
在 ---
前后加空行形成水平线。
行内元素
示例:
_我是斜体_ **我是粗体** ~~我是删除线~~
显示结果:
我是斜体 我是粗体 我是删除线
段落和换行
可以在一段话结束后加上 空行 来形成分段,也可以在需要换行的地方最后加上 两个空格 或者 <br/>
标记。
标题
标题需要在行首加上 1-6 个 #
号,从而形成 1-6 级的标题。
# 一级标题
## 二级标题
###### 六级标题
块引用
通过在引用内容前加上 >
符号来表明段落是引用块。块引用元素中可以嵌套其他元素。
示例:
> 这段块引用包含两个段落。这是第一段
>
> 这是第二段。
显示结果:
这段块引用包含两个段落。这是第一段
这是第二段。
链接
将 URL
写在尖括号 <>
内可形成可点击链接。
示例:
百度主页:<https://www.baidu.com>
显示结果:
行内链接
这是一个带有可选标题的链接 [示例](http://example.com/ "Title")。
[这个链接](http://example.net/) 没有标题属性。
文章内部跳转链接
跳转到本文开始 [标题](#Markdown)
小括号内 #
号后加标题内容即可跳转到相应标题。
显示结果:
跳转到本文开始 标题
引用链接
格式:
[链接内容][id]
[id]: http://example.com "可选标题"
如果 id
和 链接内容
一样,也可以简化为
[id][]
[id]: http://example.com "可选标题"
示例:
链接到 [百度][baidu]
[baidu]: https://www.baidu.com/ "百度一下,你就知道"
显示结果:
链接到 百度
图片
格式:
![alt text](图片路径 "可选标题")
示例:
![baidu icon](https://www.baidu.com/favicon.ico "百度图标")
显示结果:
脚注
可以像这样[^fn1] 和这样[^fn2]使用脚注。
[^fn1]: 这是第一个 **脚注** 的 _内容_。
[^fn2]: 这是第二个 **脚注** 的 _内容_。
^
符号之后可以换成任意内容。
无序列表
使用符号 -
或 *
或 +
加上空格可以形成无序列表。
示例:
- red
- green
- blue
显示结果:
- red
- green
- blue
有序列表
使用数字加 .
加空格可以形成有序列表。
示例:
1. red
2. green
3. blue
显示结果:
- red
- green
- blue
任务列表
示例:
- [ ] 未完成事项
- [x] 已完成事项
显示结果:
- 未完成事项
- 已完成事项
代码块
示例:
```python
print("hello world")
```
显示结果:
print("hello world")
数学公式
行内公式使用单 $
包含,公式块使用双 $$
包含。
行内公式
示例:
欧拉公式:$e^{ix}=\cos x + i\sin x$
显示结果:
欧拉公式: e i x = cos x + i sin x e^{ix}=\cos x + i\sin x eix=cosx+isinx
公式块
示例:
$$
\mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix}
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
\frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \\
\frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \\
\end{vmatrix}
$$
显示结果:
V 1 × V 2 = ∣ i j k ∂ X ∂ u ∂ Y ∂ u 0 ∂ X ∂ v ∂ Y ∂ v 0 ∣ \mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ \frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \\ \frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \\ \end{vmatrix} V1×V2=∣∣∣∣∣∣i∂u∂X∂v∂Xj∂u∂Y∂v∂Yk00∣∣∣∣∣∣
表格
示例:
| First Header | Second Header |
| ------------ | ------------- |
| Content Cell | Content Cell |
| Content Cell | Content Cell |
| Left-Aligned | Center Aligned | Right Aligned |
| :------------ | :-------------: | ------------: |
| col 3 is | some wordy text | \$1600 |
| col 2 is | centered | \$12 |
| zebra stripes | are neat | \$1 |
显示结果:
First Header | Second Header |
---|---|
Content Cell | Content Cell |
Content Cell | Content Cell |
Left-Aligned | Center Aligned | Right Aligned |
---|---|---|
col 3 is | some wordy text | $1600 |
col 2 is | centered | $12 |
zebra stripes | are neat | $1 |
使用 Typora 写作 Markdown
使用 Typora 可以方便的写作 Markdown 文档,可以选择不同的主题,Typora 通过使用 Pandoc 可以导出为多种格式如 PDF、HTML、Word、LaTex、Image 等等。
图片上传
在较新版本的 Typora 中(在 MacOS 上为 0.9.9.32 或在 Windows / Linux 上为 0.9.84),Typora 添加了 上传图像 功能,可通过第 3 方应用程序或脚本将图像上传到云图像存储3。
推荐使用 Github + PicGo + jsDelivr
组合来使用图片上传功能。PicGo 使用教程。
配置好 Picgo 并创建 Github 仓库后,可以直接加上 https://cdn.jsdelivr.net/gh/Github用户名/仓库名
来加速图片访问。
PicGo 配置示例:
{
"picBed": {
"uploader": "github",
"github": {
"repo": "Github用户名/仓库名",
"token": "生成的token字符串",
"path": "img/",
"customUrl": "https://cdn.jsdelivr.net/gh/Github用户名/仓库名",
"branch": "master"
}
},
"picgoPlugins": {}
}