Markdown自用手册

本文主要介绍 MathJax 数学公式。MathJax.js 是一个网页端 latex 公式渲染引擎。

希腊字母

首字母大小写对应大小写的希腊字母(Greek letters):
\alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta \theta \iota \kappa \lambda \mu \nu \xi \pi \varpi \rho \varrho \sigma \varsigma \tau \upsilon \phi \varphi \chi \psi \omega \Omega \ell
$ \alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta \theta \iota \kappa \lambda \mu \nu \xi \pi \varpi \rho \varrho \sigma \varsigma \tau \upsilon \phi \varphi \chi \psi \omega \Omega \ell $

其中部分字母开头是 \var- 表示变量专用的形式。

自定义函数/操作符

在公式中如果直接写英文字母会渲染成斜体,如\(sin\),但我们可能想让其不倾斜.

MathJax中内置了\sin,\lim等函数写法,可以直接用,非内置的函数的写法是:\operatorname{operator}(x),渲染成\(\operatorname{operator}(x)\)

也可使用{\rm operator}(x),渲染成\({\rm operator}(x)\),或者\text{operator}:\(\text{operator}(x)\)

如果一个自定义操作符频繁被用到,可以在文件中加上这句:$\DeclareMathOperator{\arsinh}{arsinh}$ ,之后便可直接使用$\arsinh x$了.

\[\operatorname{operator}_{x\to +\infty}^2(x) \lim_{x\to 0}{x\over 2} \]

文字颜色

\color{颜色}{文字}
颜色可以是green、blue等文字表示,也可以是rgb三个十六进行数字表示

符号

列举一些常用的符号表示,也可以在一些在线网页工具中查找所需的符号。

在线查询网站Easy Copy Mathjax

参考:stackexchange[1]

不同字体的英文字母

\mathcal L \mathbb L \mathbf L: \(\mathcal L \mathbb L \mathbf L\)

空白符

\ thin space ; \; wider space;

\quad 四个空格,\qquad 更多空格

a\ b\; c\quad d\qquad e显示为: \(a\ b\; c\quad d\qquad e\)

下划线与上下标

\underline{content}_{subscript},\underbrace \overbrace

\(\underline{content}_{subscript},\underbrace{x} \overbrace{x}, x_1^2\)

正下方下标表示\underset{sub}{text},比如 \(\underset{Φ}{\rm{minimize}}\)

绝对值和范式

\lvert x \rvert:\(\lvert x \rvert\)

将v大写,变为二范式:\(\lVert x \rVert\)

数学符号

数学运算: \times \div \pm \mp \(\times \div \pm \mp\)

余数模:a\equiv b\pmod n ==> \(a\equiv b\pmod n\)

求和积分:\sum \prod \int \iint \bigcup \bigcap $\sum \prod \int \iint \bigcup \bigcap $

比较符:\lt \gt \le \ge \neq <>≤≥≠<>≤≥≠.

可以在每个符号前加\not 给符号添加一个 slash: \not\lt ≮

箭头:\to \rightarrow \leftarrow \Rightarrow \Leftarrow \mapsto →→←⇒⇐↦

星号※ \star \ast $\star \ast $

近似:\approx \sim \simeq \cong \equiv \prec \lhd ≈∼≃≅≡≺,⊲

梯度、偏导、无穷:\infty \aleph_0 \nabla \Delta \delta \partial \Im \Re : \(\infty,\aleph_0,\nabla, \Delta, \delta, \partial, \Im, \Re\)

多点:\dots或\ldots ... \cdots⋯ \ddots⋱ \vdots⋮

圆点: \circ \bullet \bigcirc \oplus \ominus \otimes \odot: \(\circ \bullet \bigcirc \oplus \ominus \otimes \odot\)

逻辑操作符logical: \land \lor \lnot \forall \exists \top \bot \vdash \vDash \(\land \lor \lnot \forall \exists \top \bot \vdash \vDash\)

集合: \cup \cap \setminus \subset \subseteq \subsetneq \supset \in \notin \emptyset \varnothing \(\cup \cap \setminus \subset \subseteq \subsetneq \supset \in \notin \emptyset \varnothing\)

极限:\lim_{变量 \to 表达式} 表达式 \(\lim_{n \to +\infty} \frac{1}{n}\)

箭头图示:

输入 图示 输入 图示
\uparrow ↑↑ \Uparrow ⇑⇑
\downarrow ↓↓ \Downarrow ⇓⇓
\leftarrow ←← \Leftarrow ⇐⇐
\to \rightarrow →→ \Rightarrow ⇒⇒
\leftrightarrow ↔↔ \Leftrightarrow ⇔⇔
\longleftarrow ⟵⟵ \impliedby \Longleftarrow ⟸⟸
\longrightarrow ⟶⟶ \implies \Longrightarrow ⟹⟹
\longleftrightarrow ⟷⟷ \iff \Longleftrightarrow ⟺⟺
\mapsto ↦↦ ... ...

大的括号

由于{}在公式中如\frac分子式中用来隔离分子和分母,所以如果想在公式中表达较大的括号,需要用\left和\right

\left 与 \right 可以适用于多种类型的括号,使得括号的大小能够适应它所包裹的公式的大小。

(round), [square] , {curly} , | \vert, \Vert, \langle , \rangle, \lceil , \rceil, \lfloor , \rfloor

\((), [] , \{ \} , | \vert, \Vert, \langle , \rangle,\lceil , \rceil,\lfloor , \rfloor\)

示例:

$$
f\left(
\left[
\frac{ 1+\left\{x,y\right\} }{ \left( \frac{x}{y}+\frac{y}{x} \right) \left(u+1\right)}
+a
\right]^{3/2}
\right)
$$

\[f\left( \left[ \frac{ 1+\left\{x,y\right\} }{ \left( \frac{x}{y}+\frac{y}{x} \right) \left(u+1\right) }+a \right]^{3/2} \right) \]

在整行公式中匹配的括号通常要求成对出现,否则可能出现显示问题。Mathjax提供了一个不可见的括号,用.表示,这使得我们可以单独使用单个括号,如:\left.\frac12\right\rbrace

\[\left.\frac12\right\rbrace \]

音标(Accent)与矢量符号

\hat{ a } \grave{ a } \acute{ a } \dot{ a } \ddot{ a } \bar{ a } \vec{ a } \check{ a } \tilde{ a } \breve{ a } \widehat{ AAA } \widetilde{ AAA }
效果: \(\hat{ a } \grave{ a } \acute{ a } \dot{ a } \ddot{ a } \bar{ a } \vec{ a } \check{ a } \tilde{ a } \breve{ a } \widehat{ AAA } \widetilde{ AAA }\)

使用 \vec{矢量}来自动产生一个矢量。也可以使用 \overrightarrow等命令自定义字母上方的符号。同时,如果使用\underrightarrow可以在字符下方产生一个箭头。值得注意的是,\vec产生的箭头有一定的大小限制,超过之后就不会变大,而\overrightarrow产生的箭头则会随着内容改变大小。

分数

\frac{1}{3} = {1 \over 3} = \dfrac{1}{3} = \tfrac{1}{3}\(\frac{1}{3} = {1 \over 3} = \dfrac{1}{3} = \tfrac{1}{3}\)

dfrac(display fractions)与tfrac(text) 区别在于显示的方式、大小上。

排列组合数

\mathbf C_5^2={5 \choose 2}=\binom{5}{2} : \(\mathbf C_5^2={5 \choose 2}=\binom{5}{2}\)

删除线

公式内使用 \require{cancel} 来容许片段删除线的使用。 使用 \cancel{字符}、\bcancel{字符}、\xcancel{字符} 和 \cancelto{字符} 实现不同的效果。

保留字符

Mathjax广泛采用了反斜杠作为标记符,还使用了$、{}、_等字符来描述公式。如果要在Markdown中展示这些字符,需要转义:\$ \{ \}, \_。对于反斜杠自身的转义需要用\backslash,因为两个反斜杠表示公式换行。

公式格式化

\begin{equation}
可以嵌套cases,align等公式形式.
换行用两个反斜杠\\,如果用mathjax渲染没有换行的话,多用几个反斜杠\\\
\end{equation}

$ 表示行内公式:

质能守恒方程可以用一个很简洁的方程式 \(E=mc^2\) 来表达。

$$ 表示整行公式,但需要写在多行中,否则效果和行内公式一样:

$$
\sum^{j-1}_{k=0} \widehat{\gamma}_k z_k = 0
$$

\[\sum^{j-1}_{k=0} \widehat{\gamma}_k z_k = 0 \]

公式对齐

bbox加边框,背景色等,控制范围为大括号内的内容

在公式或矩阵的编辑中符号&表示要对齐的字符位置,用&&连接的两段内容在显示时会将多行的内容的第二段左对齐.

\bbox[10px,border:2px solid red]{
\begin{align}
v + w & = 0 &&\text{Given} \tag 1\\
-w & = -w + 0 && \text{additive identity} \tag 2\\
-w + 0 & = -w + (v + w) && \text{add equations $(1)$ and $(2)$} \tag 3
\end{align}
}

\[\bbox[5px,border:2px solid red]{ \begin{align} v + w & = 0 &&\text{Given} \tag 1\\ -w & = -w + 0 && \text{additive identity} \tag 2\\ -w + 0 & = -w + (v + w) && \text{add equations $(1)$ and $(2)$} \tag 3 \end{align} } \]

条件表达式:包含左大括号,但是等号未对齐
\begin{cases}
a_1x+b_1y+c_1z=d_1 \\
a_2x+b_2y+c_2z=d_2 \\
a_3x+b_3y+c_3z=d_3
\end{cases}

等号对齐,但需显式写上大括号,注意\right后面加上句点表示大括号范围的结束
\left\{
\begin{aligned}
a_1x+b_1y+c_1z &=d_1+e_1 \\
a_2x+b_2y&=d_2 \\
a_3x+b_3y+c_3z &=d_3
\end{aligned}
\right.

用&分割需要对齐的部分
f(n) =
\begin{cases}
\frac{n}{2}, & \text{if $n$ is even} \\[2ex]
3n+1, & \text{if $n$ is odd}
\end{cases}

\[\left\{ \begin{aligned} a_1x+b_1y+c_1z &=d_1+e_1 \\ a_2x+b_2y&=d_2 \\ a_3x+b_3y+c_3z &=d_3 \end{aligned} \right. \]

\[f(n) = \begin{cases} \frac{n}{2}, & \text{if $n$ is even} \\[2ex] 3n+1, & \text{if $n$ is odd} \end{cases} \]

还有eqnarray类似align,但是需要两个&符号表示对齐位。不推荐使用。align is from amsmath, while eqnarray is from base LaTeX。

\begin{eqnarray}
\vec\nabla \times (\vec\nabla f) & = & 0  \cdots\cdots梯度场必是无旋场\\
\vec\nabla \cdot(\vec\nabla \times \vec F) & = & 0\cdots\cdots旋度场必是无散场\\
\vec\nabla \cdot (\vec\nabla f) & = & {\vec\nabla}^2f\\
\vec\nabla \times(\vec\nabla \times \vec F) & = & \vec\nabla(\vec\nabla \cdot \vec F) - {\vec\nabla}^2 \vec F\\
\end{eqnarray}

\[\begin{eqnarray} \vec\nabla \times (\vec\nabla f) & = & 0 \cdots\cdots梯度场必是无旋场\\ \vec\nabla \cdot(\vec\nabla \times \vec F) & = & 0\cdots\cdots旋度场必是无散场\\ \vec\nabla \cdot (\vec\nabla f) & = & {\vec\nabla}^2f\\ \vec\nabla \times(\vec\nabla \times \vec F) & = & \vec\nabla(\vec\nabla \cdot \vec F) - {\vec\nabla}^2 \vec F\\ \end{eqnarray} \]

访问 MathJax 参考更多使用方法。

矩阵

\[\begin{matrix} 1 & x & x^2 \\ 1 & y & y^2 \\ 1 & z & z^2 \\ \end{matrix} \]

$$
\begin{matrix}
1 & x & x^2 \\
1 & y & y^2 \\
1 & z & z^2 \\
\end{matrix}
$$
加括号方式:\left...\right或将matrix替换成pmatrix/bmatrix/Bmatrix/vmatrix/Vmatrix,对应()/[]/{}/||/||||

带分割符号的矩阵

cc|c 代表在一个三列矩阵中的第二和第三列之间插入分割线。

$$
\left[
    \begin{array}{cc|c}
      1&2&3\\
      4&5&6
    \end{array}
\right]
$$

\[\left[ \begin{array}{cc|c} 1&2&3\\ 4&5&6 \end{array} \right] \]

行内矩阵

\bigl(\begin{smallmatrix} ... \end{smallmatrix}\bigr)

这是一个行内矩阵: \(\bigl( \begin{smallmatrix} a & b \\ c & d \end{smallmatrix} \bigr)\)

包含纯文本

在公式中显示的英文字符通常为斜体,可以使用\text{…}包裹一段文字,让其展示为普通文字说明并用正体显示。text中可以嵌套公式。

公式颜色

\color{red}{part1} \color{black} part2 ... 其中part的花括号可加可不加。

注:在某些Markdown应用软件中一行需要使用至少两个color,否则生效范围会到行尾。

数组与表格

数组与表格均可用array定义,c l r 分別代表居中、左对齐及右对齐,\hline表示横线。

$$
\begin{array}{c|lcr}
n & \text{左} & \text{中} & \text{右} \\
\hline
1 & 0.24 & 1 & 125 \\
2 & -1 & 189 & -8 \\
3 & -20 & 2000 & 1+10i
\end{array}
$$

\[\begin{array}{c|lcr} n & \text{左} & \text{中} & \text{右} \\ \hline 1 & 0.24 & 1 & 125 \\ 2 & -1 & 189 & -8 \\ 3 & -20 & 2000 & 1+10i \end{array} \]

画图

时序图

​```sequence
Alice->Bob: Hello Bob, how are you?
Note right of Bob: Bob thinks
Bob-->Alice: I am good thanks!
​```
Alice->Bob: Hello Bob, how are you?
Note right of Bob: Bob thinks
Bob-->Alice: I am good thanks!

流程图

​```flow
st=>start: Start
e=>end
op=>operation: My Operation
cond=>condition: Yes or No?

st->op->cond
cond(yes)->e
cond(no)->op
​```
st=>start: Start
e=>end
op=>operation: My Operation
cond=>condition: Yes or No?

st->op->cond
cond(yes)->e
cond(no)->op

交换图标

采用 \require{AMScd} 引入,@>>>代表右箭头、@<<<代表左箭头、@VVV代表下箭头、@AAA代表上箭头、@=代表水平双实线、@|代表垂直双实线、@.代表沒有箭头。 在@>>>>>> 之间任意插入文字即代表该箭头的注释文字。

$$
\require{AMScd}
\begin{CD}
A @>a>> B \\
@V b V V\# @VV c V \\
C @>> \text{very long label} > D
\end{CD}
$$

\[\require{AMScd} \begin{CD} A @>a>> B \\ @V b V V\# @VV c V \\ C @>> \text{label} > D \end{CD} \]

提示: 更多关于时序图与流程图的语法请参考:

其它

表格竖线

markdown中写表格时如果表格内容包含英文竖线则会引起冲突,有如下处理方式:

  • HTML转义

  • 改成中文竖线字符

  • 用公式中的转义表示:\mid

竖线的html转义符为:

&verbar;
&vert;
&VerticalLine;
&#x0007C;
&#124;

table表格中实现手动换行,使用<br>

反引号对中使用反引号

在 Markdown 中,经常会使用一种反引号对语句来标识一段 特殊文字,如 特殊文字。不过,有时候 特殊文字 中也会含反引号。显然,如果在 特殊文字 内直接使用反引号, Markdown 渲染器会优先匹配最近的一对反引号,这会导致渲染器的误解析。那么,如何在反引号对语句中使用反引号呢?
方法是,将原来的 反引号对 改成 二反引号对 + 空格。比如,如果原来的语句是 【特殊文字】,现在,特殊文字 中将含有反引号,此时的语句应改成 【含有`反引号`的特殊文字】。

参考 blog

注音 ruby HTML

注音 (ruby、振假名)的HTML写法:<ruby> 文本 <rt>注音</rt> </ruby>
可能因为不常用,多数Markdown软件未做支持,但是大多都支持混杂HTML片段。

比如 <ruby>动态链接库<rt>dynamic link library</rt></ruby> 的预览效果:

动态链接库dynamic link library

问答-隐藏详情 HTML

<details>
  <summary>WHY DOES ...?</summary>
  Answer: xx.
</details>

效果:

WHY DOES ...? Answer: xx.

参考

Maxkit: 如何在 Markdown 輸入數學公式及符號

脚注

方法一:HTML

标准:<sup>上标引用内容</sup>,可以用<a>,<p>,<img>等标签来描述引用内容。

方法二:markdown语法

视markdown渲染器的支持程度,非标准。

(1)分离使用[^n][^n]: 引用内容

即引用和定义的位置分离,可以在多处重复引用。

(2)^[引用内容] 引用的位置直接定义,在不需要重复引用的情况下会比较方便。

注:各编辑器对这两个语法支持情况不同,比如Typora编辑器支持(1),VNote、CSDN支持两者(仅测试了Markdown-it渲染器),为知笔记旧版支持(1)而新版的实时渲染引擎却不支持。

示例:

生成一个脚注[^footnote123].
[^footnote123]: 这里是 **脚注** 的 *内容*.

生成一个脚注[2].


  1. http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference ↩︎

  2. 这里是 脚注内容. ↩︎

posted @ 2022-07-31 21:06  康行天下  阅读(163)  评论(0编辑  收藏  举报