Skip to content

Markdown

一种方便简单的排版语言

不同的平台使用 Markdow 规则可能有些许不同,比如标题 # 后面可能不需要加空格,本文主要基于 typora

基本语法

标题

一级标题 # + 空格

二级标题 ##+ 空格

...最多有六级标题

# Markdown
## 基本语法

引用

> + 空格

这是一个例子

引用可以嵌套

例子

嵌套

强调

*_都可以表示强调

使用方式:在需要强调的部分的头和尾都要加

  • 一个*或者_表示 倾斜
  • 两个*或者_表示 加粗
  • 三个*或者_表示 加粗+倾斜

`可以用于强调一些字符,语法如下:

`+`

效果:

+

列表

* + 空格 或者 + + 空格

  • 这是一个例子
  • 这是一个例子

在一个列表下按 tab 会变成二级列表

  • 这是一级列表
    • 这是二级列表

代码块

 ``` + 语言(比如C++) + 回车

效果如下:

#include<iostream>
using namespace std;

int main() {
    cout << "hello, world."
    return 0;
}

分割线

三个或者更多的+_- + 回车

效果:


超链接与图片

行内式

格式:[名字] (URL)

[百度](https://www.baidu.com/)

效果如下:

百度

参考式

在要多次使用同一个超链接时使用

格式:[给网站起的名字]:URL (相当于定义)

使用方式:[超链接的名字] [给网站起的名字]

[百度]:https://www.baidu.com/
[here][百度]

图片

也有行内式与参考式,需要在前面加个!

![图片名][具体地址,本地或者网页]

HTML

用 HTML 来做超链接更方便,对图片还能进行大小的调整,以图片为例

<img src="图片链接"/>

页内跳转

需要定义跳转的出发点和终点(锚点),可能并不一定是 span

[出发点](#id)
<span id="id">锚点</span>

数学公式

1.内联式

typora中 文件-偏好设置-markdown-打开内联公式

$公式内容$

2.非内联式

添加数学公式:

$$
公式内容
$$

常用符号

这里仅列出一些常用的,具体请看参考

符号 效果 表示方式
上下标 \(x^2\) x^2 x_2
分式 \(\frac{1}{2}\) \frac{1}{2}
根号 \(\sqrt{2}\) \sqrt{2}
矢量 \(\vec{a}\) \vec{a}
不定积分 \(\int{x}dx\) \int{x}dx
定积分 \(\int_{1}^{2}{x}dx\) \int_{1}^{2}{x}dx
空格 \quad
极限 \(\lim{a+b}\) \lim{a+b}
\(\lim_{n\rightarrow+\infty}\) \lim_{n\rightarrow+\infty}
\(\lim_{n\rightarrow+\infty}{a+b}\) \lim_{n\rightarrow+\infty}{a+b}
累加 \(\sum{a}\) \sum{a}
\(\sum_{i=1}^{n}{a_i}\) \sum_{i=1}^{n}{a_i}
累乘 \(\prod{x}\) \prod{x}
\(\prod_{i=1}^{n}{x_i}\) \prod_{i=1}^{n}{x_i}
对数函数 \(\ln2\) \ln2
\(\log_{11}{121}\) \log_{11}{121}
\(\lg10\) \lg10
加减 \(\pm\) \pm
叉乘 \(\times\) \times
点乘 \(\cdot\) \cdot
除法 \(÷\) \div
不等 \(\neq\) \neq
恒等 \(\equiv\) \equiv
小于等于 \(\leq\) \leq
大于等于 \(\geq\) \geq
约等于 \(\approx\) \approx
因为 \(\because\) \because
所以 \(\therefore\) \therefore
合取 \(\wedge\) \wedge
析取 \(\vee\) \vee
蕴含 \(\Rightarrow\) \Rightarrow
\(\urcorner\) \urcorner

大括号

\[ y = \begin{cases} 1 &x\geq 0 \\ 0 &x<0 \end{cases} \]
y = 
\begin{cases} 
1  &x\geq 0  \\  
0  &x<0    
\end{cases}

矩阵

\[ \begin{bmatrix} a & b \\ c & d \end{bmatrix} \]
\begin{bmatrix}
       a & b \\ 
       c & d
\end{bmatrix}

表格元素

typora 中使用快捷键 Ctrl+T

name|score
----|----
abcd|100
defg|0
name score
abcd 100
defg 0

折叠代码和侧边栏

typora中折叠侧边栏:文件-偏好设置-外观-侧边栏

折叠代码:

<details>
<summary>tag</summary>
<code>
Hello world!
</code>
</details>

效果如下:

tag Hello world!

导出其他格式

typora 中可以直接点击 文件-导出 并选择文件格式即可

导出为 word 之前需要下载 pandoc,具体可以参考网上博客

Mermaid

Typora 支持渲染 mermaid,需要在 Typora 中将代码块的语言选择为 Mermaid

参考:Mermaid从入门到入土——Markdown进阶语法 - 知乎 (zhihu.com)

饼状图

pie
    title 为什么总是宅在家里?
    "喜欢宅" : 15
    "天气太热或太冷" : 20
    "穷" : 500

title 是可选的

pie
    title 为什么总是宅在家里?
    "喜欢宅" : 15
    "天气太热或太冷" : 20
    "穷" : 500

流程图

graph LR
    A[Start] --> B{Is it?};
    B -- Yes --> C[OK];
    C --> D[Rethink];
    D --> B;
    B -- No ----> E[End];
graph LR
    A[Start] --> B{Is it?};
    B -- Yes --> C[OK];
    C --> D[Rethink];
    D --> B;
    B -- No ----> E[End];

声明

先声明流程图和方向

  • graphgraph TBgraph TD:从上往下
  • graph BT:从下往上
  • graph LR:从左往右
  • graph RL:从右往左

结点

可以为结点编号,可以指定结点形状,默认为矩形

  • 无编号结点,直接写名字即可,且内容不能为空格
  • 有编号结点,编号后写内容,且内容可以为空格
graph
    默认方形
    id1[方形]
    id2(圆边矩形)
    id3([体育场形])
    id4[[子程序形]]
    id5[(圆柱形)]
    id6((圆形))
graph
    默认方形
    id1[方形]
    id2(圆边矩形)
    id3([体育场形])
    id4[[子程序形]]
    id5[(圆柱形)]
    id6((圆形))
graph
    id1{菱形}
    id2{{六角形}}
    id3[/平行四边形/]
    id4[\反向平行四边形\]
    id5[/梯形\]
    id6[\反向梯形/]
graph
    id1{菱形}
    id2{{六角形}}
    id3[/平行四边形/]
    id4[\反向平行四边形\]
    id5[/梯形\]
    id6[\反向梯形/]

连线样式

可以有文本

  • 实线箭头,文本有 2 种书写方式
graph LR
a-->b--文本1-->c-->|文本2|d
graph LR
a-->b--文本1-->c-->|文本2|d
  • 粗实线
graph LR
a==>b==文本==>c
graph LR
a==>b==文本==>c==>|文本2|d
  • 虚线箭头
graph LR
a-.->b-.文本.->c
graph LR
a-.->b-.文本.->c
  • 无箭头线,上面三种箭头的改写
graph LR
a --- b
graph LR
a---b--文本1---c---|文本2|d===e==文本3===f-.-g-.文本4.-h
  • 其他连线,将 graph 关键字改为 flowchart
flowchart LR
    A o--o B
    B <--> C
    C x--x D
flowchart LR
    A o--o B
    B <--> C
    C x--x D
  • 延长连线:增加相应字符即可,如下图中的B到E,连线中增加了一个-。字符可多次添加
graph LR
    A[Start] --> B{Is it?}
    B -->|Yes| C[OK]
    C --> D[Rethink]
    D --> B
    B --->|No| E[End]
graph LR
    A[Start] --> B{Is it?}
    B -->|Yes| C[OK]
    C --> D[Rethink]
    D --> B
    B --->|No| E[End]
  • 多重链,使用 &,多次连线也可以
graph 
   a --> b & c--> d

   A & B--> C & D

    X --> M
    X --> N
    Y --> M
    Y --> N
graph 
   a --> b & c--> d

   A & B--> C & D

    X --> M
    X --> N
    Y --> M
    Y --> N

注释

graph LR
    %% 注释
    A[Start] --> B{Is it?}
    B -->|Yes| C[OK]
    C --> D[Rethink]
    D --> B
    B --->|No| E[End]
graph LR
    %% 注释
    A[Start] --> B{Is it?}
    B -->|Yes| C[OK]
    C --> D[Rethink]
    D --> B
    B --->|No| E[End]

参考

Introduction | Learning-Markdown (Markdown 入门参考)

Supported Functions · KaTeX

Mathjax公式教程_dabokele的博客-CSDN博客_mathjax公式

Mermaid从入门到入土——Markdown进阶语法 - 知乎 (zhihu.com)