Skip to content
alarik.me
Go back

数学公式与代码高亮测试

代码高亮(Expressive Code)

基本代码块 + 复制按钮

function greet(name: string): string {
return `Hello, ${name}!`;
}

编辑器帧 + 文件名标签页

utils/math.ts
export const add = (a: number, b: number) => a + b;
export const mul = (a: number, b: number) => a * b;

终端帧(自动检测 shell 语言)

Terminal window
npm install astro-expressive-code

行高亮

function example() {
const x = 42; // 高亮
const y = x * 2;
console.log(x); // 高亮
console.log(y); // 高亮
return y;
}

Diff 标记

function config() {
const port = 3000;
const port = 8080;
return { port };
}

文本标记(词高亮)

function greet(name: string) {
return `Hello, ${name}!`;
}

行号(可选开启)

function fibonacci(n: number): number {
if (n <= 1) return n;
return fibonacci(n - 1) + fibonacci(n - 2);
}

Callout 块

提示

Expressive Code 底层使用 Shiki,语法高亮准确度不变。

注意

代码块自动检测语言:bash/sh/zsh → 终端帧,其他 → 编辑器帧。


数学公式(KaTeX)

行内公式

质能方程 E=mc2E = mc^2 是最著名的物理公式之一。

二次方程求根公式:x=b±b24ac2ax = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

欧拉恒等式:eiπ+1=0e^{i\pi} + 1 = 0

块级公式

高斯积分:

ex2dx=π\int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi}

贝叶斯定理:

P(AB)=P(BA)P(A)P(B)P(A|B) = \frac{P(B|A) \, P(A)}{P(B)}

矩阵乘法:

[a11a12a21a22][x1x2]=[a11x1+a12x2a21x1+a22x2]\begin{bmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} = \begin{bmatrix} a_{11}x_1 + a_{12}x_2 \\ a_{21}x_1 + a_{22}x_2 \end{bmatrix}

麦克斯韦方程组(微分形式):

E=ρε0B=0×E=Bt×B=μ0(J+ε0Et)\begin{aligned} \nabla \cdot \mathbf{E} &= \frac{\rho}{\varepsilon_0} \\ \nabla \cdot \mathbf{B} &= 0 \\ \nabla \times \mathbf{E} &= -\frac{\partial \mathbf{B}}{\partial t} \\ \nabla \times \mathbf{B} &= \mu_0\left(\mathbf{J} + \varepsilon_0 \frac{\partial \mathbf{E}}{\partial t}\right) \end{aligned}

常用符号

类型示例
希腊字母α,β,γ,δ,ϵ,π,σ,ω\alpha, \beta, \gamma, \delta, \epsilon, \pi, \sigma, \omega
运算符,,,,,\sum, \prod, \int, \oint, \partial, \nabla
关系,,,,,\leq, \geq, \approx, \sim, \propto, \neq
逻辑,,¬,,,\forall, \exists, \neg, \wedge, \vee, \Rightarrow
集合,,,,,R,N\in, \subset, \cup, \cap, \emptyset, \mathbb{R}, \mathbb{N}
箭头,,,\rightarrow, \Rightarrow, \mapsto, \leftrightarrow

Share this post: