Markdown

    技术2022-07-11  70

    Markdown

    Markdown 是什么

    Markdown 是一种轻量级的标记语言,具有纯文本格式语法,由 John Gruber 和 Aaron Awartz 于 2004 年创建1。Markdown 常用于编写结构化文档,它基于 email 和 usenet 的格式约定2

    Markdown 的特征由最初 John Gruber 发布的 非正式规范 以及将 Markdown 转为 HTML 的参考实现所定义,之后出现了很多不同的实现。很多实现都对 Markdown 的基本语法进行了相应的扩展。

    RFC 7763 引入了 text/markdown MIME 类型。RFC 7764 介绍了关于 Markdown 的一些不同版本的扩展信息。

    Markdown 变体

    MultiMarkdownGitHub Flavored Markdown (GFM)PandocFountainCommonMarkkramdown-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>

    显示结果:

    百度主页: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

    显示结果:

    redgreenblue

    有序列表

    使用数字加 . 加空格可以形成有序列表。

    示例:

    1. red 2. green 3. blue

    显示结果:

    redgreenblue

    任务列表

    示例:

    - [ ] 未完成事项 - [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=iuXvXjuYvYk00

    表格

    示例:

    | 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 HeaderSecond HeaderContent CellContent CellContent CellContent Cell Left-AlignedCenter AlignedRight Alignedcol 3 issome wordy text$1600col 2 iscentered$12zebra stripesare 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 使用教程。

    PicGojsDelivr

    配置好 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": {} }

    其他资源

    awesome-markdownhttp://support.typora.io/

    https://en.wikipedia.org/wiki/Markdown ↩︎

    https://commonmark.org/ ↩︎

    https://support.typora.io/Upload-Image/ ↩︎

    Processed: 0.010, SQL: 12