Tex 语法支持

Mr.Hope ... 大约 5 分钟

# Tex 语法支持

让你的 VuePress 站点中的 Markdown 文件支持 TeX\TeX 语法。

# 配置






 




module.exports = {
  plugin: [
    "md-enhance",
    {
      // 启用 TeX 支持
      tex: true,
    },
  ],
};
1
2
3
4
5
6
7
8
9

# 语法

# 行内语法

使用 $codes$ 来表示。

Euler’s identity $e^{i\pi}+1=0$ is a beautiful formula in $\mathbb{R}^2$.
1

Euler’s identity eiπ+1=0e^{i\pi}+1=0 is a beautiful formula in R2\mathbb{R}^2.

# 块语法

使用 $$codes$$ 来表示。

$$
\frac {\partial^r} {\partial \omega^r} \left(\frac {y^{\omega}} {\omega}\right)
= \left(\frac {y^{\omega}} {\omega}\right) \left\{(\log y)^r + \sum_{i=1}^r \frac {(-1)^i r \cdots (r-i+1) (\log y)^{r-i}} {\omega^i} \right\}
$$
1
2
3
4

rωr(yωω)=(yωω){(logy)r+i=1r(1)ir(ri+1)(logy)riωi}\frac {\partial^r} {\partial \omega^r} \left(\frac {y^{\omega}} {\omega}\right) = \left(\frac {y^{\omega}} {\omega}\right) \left\{(\log y)^r + \sum_{i=1}^r \frac {(-1)^i r \cdots (r-i+1) (\log y)^{r-i}} {\omega^i} \right\}

# 教程

# 运算符

  • 一些运算符,可以在数学模式下直接输入;另一些需要用控制序列生成:

    • +: ++
    • -: -
    • \times: ×\times
    • \div: ÷\div
    • =: ==
    • \pm: ±\pm
    • \cdot: \cdot
    • \cup: \cup
    • \geq: \geq
    • \leq: \leq
    • \neq: \neq
    • \approx: \approx
    • \equiv: \equiv
    • \quad: \quad (空白分隔符)
  • 根式: \sqrt{xxx} xxx\sqrt{xxx}

  • 分式 \frac{aaa}{bbb} aaabbb\frac{aaa}{bbb} (第一个参数为分子,第二个为分母) 。

  • 连加: \sum \sum

  • 连乘: \prod \prod

  • 极限: \lim lim\lim

  • 积分: \int \int

  • 多重积分:

    • \iint: \iint
    • \iiint: \iiint
    • \liiiint:  ⁣ ⁣ ⁣\liiiint (块级公式正常使用 \iiiint)
    • \idotsint  ⁣ ⁣\idotsint

提示

连加、连乘、极限、积分等大型运算符可以用 \limits\nolimits 来强制显式地指定是否压缩这些上下标。

\iiiint( ⁣ ⁣ ⁣\liiiint) 是使用 hack 实现的,由于间距问题对于行公式需要使用 \liiiint 命令。

\varoiint, \sqint, \sqiint, \ointctrclockwise, \ointclockwise, \varointclockwise, \varointctrclockwise, \fint, \landupint, \landdownint 目前不被支持。

# 案例

x\sqrt{x}, 12\frac{1}{2}.

i=1nii=1n\sum_{i=1}^n i\; \prod_{i=1}^n

i=1nii=1n\sum\limits _{i=1}^n i\; \prod\limits_{i=1}^n

12x212x2 ⁣ ⁣ ⁣12x2 ⁣ ⁣12x2\iint_1^2 x^2\; \iiint_1^2 x^2\; \liiiint_1^2 x^2\; \idotsint_1^2 x^2

12x212x2 ⁣ ⁣ ⁣12x2 ⁣ ⁣12x2\iint\limits_1^2 x^2\; \iiint\limits_1^2 x^2\; \liiiint\limits_1^2 x^2\; \idotsint\limits_1^2 x^2

12x212x2 ⁣ ⁣ ⁣ ⁣12x2 ⁣ ⁣12x2\iint_1^2 x^2\; \iiint_1^2 x^2\; \iiiint_1^2 x^2\; \idotsint_1^2 x^2

$\sqrt{x}$, $\frac{1}{2}$.

$\sum_{i=1}^n i\; \prod_{i=1}^n$

$\sum\limits _{i=1}^n i\; \prod\limits _{i=1}^n$

$\iint_1^2 x^2\; \iiint_1^2 x^2\; \liiiint_1^2 x^2\; \idotsint_1^2 x^2$

$\iint\limits_1^2 x^2\; \iiint\limits_1^2 x^2\; \liiiint\limits_1^2 x^2\; \idotsint\limits_1^2 x^2$

$$\iint_1^2 x^2\; \iiint_1^2 x^2\; \iiiint_1^2 x^2\; \idotsint_1^2 x^2$$
1
2
3
4
5
6
7
8
9
10
11

# 符号

  • 英文字母可以直接输入

    abcxyzABCa \quad b \quad c \quad x \quad y \quad z \quad A \quad B \quad C

    $a \quad b \quad c \quad x \quad y \quad z \quad A \quad B \quad C$
    
    1
  • 希腊字母使用 \characterName 来输入符号,首字母大写时输出大写字母。

    αβγΩΔΓ\alpha \quad \beta \quad \gamma \quad \Omega \quad \Delta \quad \Gamma

    $\alpha \quad \beta \quad \gamma \quad \Omega \quad \Delta \quad \Gamma$
    
    1
  • 其他数学表达式可以对应使用

    logabx\log_{a}{b} \quad \partial x

    $\log_{a}{b} \quad \partial x$
    
    1

# 上下标

  • 上标,使用 ^ 来实现
  • 下标,使用 _ 来实现
  • 上下标默认只作用于之后的一个字符,如果想对连续的几个字符起作用,请将这些字符用花括号 {} 括起来。

# 案例

Einstein 's E=mc2E=mc^2.

210>10002^{10} > 1000

Einstein 's $E=mc^2$.

$2^{10} > 1000$
1
2
3

# 定界符 (括号等)

各种括号用 (), [], \{\}, \langle\rangle 等命令表示。

提示

注意花括号通常用来输入命令和环境的参数,所以在数学公式中它们前面要加 \

因为 LaTeX 中 |\| 的应用过于随意,推荐用 \lvert\rvert\lVert\rVert 取而代之。

为了调整这些定界符的大小,推荐使用 \big, \Big, \bigg, \Bigg 等一系列命令放在上述括号前面调整大小。

(((((x)))))\Biggl(\biggl(\Bigl(\bigl((x)\bigr)\Bigr)\biggr)\Biggr) [[[[[x]]]]]\Biggl[\biggl[\Bigl[\bigl[[x]\bigr]\Bigr]\biggr]\Biggr] {{{{{x}}}}}\Biggl \{\biggl \{\Bigl \{\bigl \{\{x\}\bigr \}\Bigr \}\biggr \}\Biggr\} x\Biggl\langle\biggl\langle\Bigl\langle\bigl\langle\langle x \rangle\bigr\rangle\Bigr\rangle\biggr\rangle\Biggr\rangle x\Biggl\lvert\biggl\lvert\Bigl\lvert\bigl\lvert\lvert x \rvert\bigr\rvert\Bigr\rvert\biggr\rvert\Biggr\rvert x\Biggl\lVert\biggl\lVert\Bigl\lVert\bigl\lVert\lVert x \rVert\bigr\rVert\Bigr\rVert\biggr\rVert\Biggr\rVert

$\Biggl(\biggl(\Bigl(\bigl((x)\bigr)\Bigr)\biggr)\Biggr)$
$\Biggl[\biggl[\Bigl[\bigl[[x]\bigr]\Bigr]\biggr]\Biggr]$
$\Biggl \{\biggl \{\Bigl \{\bigl \{\{x\}\bigr \}\Bigr \}\biggr \}\Biggr\}$
$\Biggl\langle\biggl\langle\Bigl\langle\bigl\langle\langle x
\rangle\bigr\rangle\Bigr\rangle\biggr\rangle\Biggr\rangle$
$\Biggl\lvert\biggl\lvert\Bigl\lvert\bigl\lvert\lvert x
\rvert\bigr\rvert\Bigr\rvert\biggr\rvert\Biggr\rvert$
$\Biggl\lVert\biggl\lVert\Bigl\lVert\bigl\lVert\lVert x
\rVert\bigr\rVert\Bigr\rVert\biggr\rVert\Biggr\rVert$
1
2
3
4
5
6
7
8
9

# 省略号

省略号用 \dots, \cdots, \vdots, \ddots 等命令表示。

提示

\dots\cdots 的纵向位置不同,前者一般用于有下标的序列。

x1,x2,,xn1,2,,nx_1,x_2,\dots ,x_n \quad 1,2,\cdots ,n \quad \vdots\quad \ddots

$x_1,x_2,\dots ,x_n \quad 1,2,\cdots ,n \quad \vdots\quad \ddots$
1

# 矩阵

pmatrix, bmatrix, Bmatrix, vmatrix, Vmatrix 等环境可以在矩阵两边加上各种分隔符。

(abcd)[abcd]{abcd}abcdabcd\begin{pmatrix} a&b\\c&d \end{pmatrix} \quad \begin{bmatrix} a&b\\c&d \end{bmatrix} \quad \begin{Bmatrix} a&b\\c&d \end{Bmatrix} \quad \begin{vmatrix} a&b\\c&d \end{vmatrix} \quad \begin{Vmatrix} a&b\\c&d \end{Vmatrix}

$$
\begin{pmatrix} a&b\\c&d \end{pmatrix} \quad
\begin{bmatrix} a&b\\c&d \end{bmatrix} \quad
\begin{Bmatrix} a&b\\c&d \end{Bmatrix} \quad
\begin{vmatrix} a&b\\c&d \end{vmatrix} \quad
\begin{Vmatrix} a&b\\c&d \end{Vmatrix}
$$
1
2
3
4
5
6
7

使用 smallmatrix 环境,可以生成行内公式的小矩阵。

A small matix: (abcd)( \begin{smallmatrix} a&b\\c&d \end{smallmatrix} ).

A small matix: $( \begin{smallmatrix} a&b\\c&d \end{smallmatrix} )$.
1

# 多行公式

  • 换行

    使用 \\\newline 进行换行

    x=a+b+c+d+e+f+gx = a+b+c+{} \\ d+e+f+g

    x=a+b+c+d+e+f+gx = a+b+c+ \newline d+e+f+g

    $$
    x = a+b+c+ \\
    d+e+f+g
    $$
    
    $$
    x = a+b+c+ \newline
    d+e+f+g
    $$
    
    1
    2
    3
    4
    5
    6
    7
    8
    9

    提示

    请注意,由于 KaTeX\KaTeX 支持自动换行,所以如果你手动指定换行会在控制台输出一个警告。

  • 对齐

    可以使用 aligned 环境来实现对齐,使用 & 标识固定锚点

    x=a+b+c+d+e+f+g\begin{aligned} x ={}& a+b+c+{} \\ &d+e+f+g \end{aligned}

    10x+3y=23x+13y=4\begin{alignedat}{2} 10&x+ &3&y = 2 \\ 3&x+&13&y = 4 \end{alignedat}

    $$
    \begin{aligned}
    x ={}& a+b+c+{} \\
    &d+e+f+g
    \end{aligned}
    $$
    
    $$
    \begin{alignedat}{2}
       10&x+ &3&y = 2 \\
       3&x+&13&y = 4
    \end{alignedat}
    $$
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

# 公式组

无需对齐的公式组可以使用 gather 环境。

a=b+c+dx=y+z\begin{gathered} a = b+c+d \\ x = y+z \end{gathered}

$$
\begin{gathered}
a = b+c+d \\
x = y+z
\end{gathered}
$$
1
2
3
4
5
6

# 编号

x+y2x(1)\tag{1} x+y^{2x}

x+y2x1\tag*{1} x+y^{2x}

$\tag{1} x+y^{2x}$

$\tag*{1} x+y^{2x}$
1
2
3

# 分段函数

使用 case 环境

y={x,x0x,x>0y= \begin{cases} -x,\quad x\leq 0 \\ x,\quad x>0 \end{cases}

$$
y= \begin{cases}
-x,\quad x\leq 0 \\
x,\quad x>0
\end{cases}
$$
1
2
3
4
5
6

# 更多

有关更多符号,请查看