FREE BBS 数学组 Markdown/KaTeX 数学公式排版规范
规范版本:v0.5
更新日期:2026-07-23
文档类型:主规范
适用范围:数学组知识点 Markdown 正文中由 KaTeX 渲染的数学公式
1. 如何使用本规范
本规范只把以下内容列为前置的“项目约定”:
- 数学上存在多种通行写法,需要项目统一选择的事项;
- Markdown、KaTeX 与完整 LaTeX 之间存在兼容风险的事项;
- 容易造成语义歧义、排版失衡或复核困难的事项;
- 本项目作出的字体、标点和源码风格选择。
不存在明显歧义的常规写法不再逐条上升为强制规则,统一放入第 3 章“参考速查”。复核时应先检查第 2 章的项目约定,再参考第 3 章处理一般问题。完整的正反例、希腊字母表和逐项解释见《数学公式规范与不规范写法对比》。
本规范中的措辞分为三类:
- 统一使用、不得、必须:项目强制约定;
- 默认、优先、建议:无课程特殊传统时采用的项目写法;
- 可以、按语境选择:存在多个合理方案,但同一篇正文必须保持一致。
2. 项目约定
2.1 Markdown 与 KaTeX 边界
- 行内公式使用
$...$,行间公式使用$$...$$。 - 每个公式必须能在不读取 LaTeX 导言区的情况下独立渲染。
- 开发组未明确提供稳定的全局宏前,不依赖
\newcommand、\def、\R、\dd、\abs等自定义命令,应使用展开写法。 - 多行结构放在
$$...$$内,使用aligned、gathered或cases;不得嵌套顶层align、equation,也不使用eqnarray。 - TikZ 不属于 KaTeX 渲染范围。图形先导出为 SVG 或 PNG,再通过 Markdown 引用。
- 最终验收以生产页面的 KaTeX 渲染结果为准;本地 LaTeX 能编译不等于页面可用。
2.2 微分与积分
微分算符 d 统一使用正体 \mathrm{d}:
latex
\frac{\mathrm{d}y}{\mathrm{d}x},
\qquad
\frac{\mathrm{d}^2y}{\mathrm{d}x^2}
偏微分使用 \partial。积分中的被积式与微元之间保留一个小间距 \,:
latex
\int_a^b f(x)\,\mathrm{d}x,
\qquad
\iint_D f(x,y)\,\mathrm{d}x\,\mathrm{d}y
不写 dx,不写 \int f(x)\mathrm{d}x,也不用普通空格代替 \,。
原函数在端点的代入统一使用右侧竖线:
latex
\int_a^b f(x)\,\mathrm{d}x
=\left.F(x)\right\rvert_a^b
=F(b)-F(a)
不混用 \right|、\right\rvert 和 \left[F(x)\right]_a^b。多元微积分中的向量微元遵循项目向量字体,例如 \mathrm{d}\boldsymbol{r};面积、体积微元写作 \mathrm{d}S、\mathrm{d}V。
2.3 关系符号与定义符号
- 项目源码统一使用
\le、\ge,不混用其别名\leq、\geq。 - 定义等号统一使用
\coloneqq,如f(x)\coloneqq x^2;普通恒等或已知等式使用=。 - 映射中的冒号使用
\colon:f\colon A\to B。 - 不使用
<=、>=、!=、->代替正式数学符号。
2.4 括号、绝对值、范数与竖线
- 普通高度内容使用普通括号;只有内容明显较高时才使用
\left...\right。 - 自动伸缩过大时,成对使用
\bigl/\bigr、\Bigl/\Bigr等手动尺寸。 - 绝对值使用
\lvert x\rvert,范数使用\lVert x\rVert。 - 条件概率、集合条件和整除使用
\mid,如P(A\mid B)、\{x\in\mathbb{R}\mid x>0\}、a\mid b。 - 不用普通竖线
|同时承担绝对值、范数、条件和整除等不同语义。
2.5 行内、行间与多行公式
- 行内短分式可以使用
\frac{a}{b};普通比值在无歧义时可以使用a/b;复杂分式移到行间。 - 即使分子、分母均为单字符,也保留花括号,如
\frac{1}{2}。 - 行内不使用
\dfrac或\displaystyle;行间公式本身已是展示样式,不重复添加\displaystyle。 - 遵循 AMS/TeX 通行排版习惯,简短极限可以使用默认样式放在行内,如
\lim_{x\to0}f(x)=L;极限条件位于算符右下侧是正常的行内排版。 - 不在行内使用
\displaystyle强行把极限条件移到\lim正下方。极限条件较长、表达式包含复杂分式、积分、求和或嵌套结构,或者极限式是主要结论时,改用行间公式;行间无需重复添加\displaystyle。 - 连续推导使用
aligned,无对齐关系的多行陈列使用gathered,分段定义使用cases。 - 多行公式按关系符对齐,不为了视觉居中而加入无语义的空格。
上述极限排版是与国际数学出版习惯一致的项目约定,不表述为 ISO 强制条文;ISO 80000-2 主要规范数学符号、含义和应用,并未要求含 \lim 的公式必须行间显示。
2.6 中文、公式与标点混排
- 行内公式与前后中文词句之间各保留一个半角空格:
函数 $f$ 在区间 $[a,b]$ 上连续。 - 中文标点紧跟公式右侧的
$,标点前不留空格:当 $x>0$ 时,$f(x)>0$。 - 数学结构内部使用半角标点,如
(x,y)、\{1,2,\dots,n\};中文句法标点放在数学环境外。 - 行间公式由完整的中文引导语和中文冒号引出;项目正文中的行间公式末尾不另加中文或英文句号。
- 不用
\text{}把中文逗号、句号或长句塞入数学环境。
2.7 \text{} 的使用边界
KaTeX 支持 \text{},但项目限制其用途:
- 仅用于无法自然移到公式外的简短条件或标签;
- 能写成纯数学条件时直接写数学条件;
- 能移到公式外的完整说明移到中文正文;
- 不用
\text{}伪造算符、单位、拉丁缩写、正体常数或句法标点; - 含中文的
\text{}必须在生产页面检查字体、基线与行距。
例如,分段函数可以优先写:
latex
f(x)=
\begin{cases}
x^2, & x\ge 0,\\
-x, & x<0
\end{cases}
确需连接词时才写 & \text{若 }x\ge 0。
2.8 集合记号
- 空集统一使用
\varnothing,幂集统一使用\mathcal{P}(A)。 - 允许相等的包含关系使用
\subseteq、\supseteq;严格包含使用\subsetneq、\supsetneq。 - 裸
\subset、\supset在不同教材中含义不统一,项目正文原则上不用;必须忠实引用时,首次出现须说明是否允许相等。 - 集合差使用
\setminus,不使用减号或\backslash。 - 补集默认写
A^c,使用前必须说明全集或讨论空间。课程固定使用其他记号时,可以保留,但须先定义并全文一致。 - 对称差使用
A\mathbin{\triangle}B,首次出现时定义其含义;\mathbin用于赋予\triangle二元运算符间距。 - 指标族使用
\bigcup、\bigcap、\bigsqcup,不直接给小运算符\cup、\cap、\sqcup添加指标。
2.9 数域、函数空间、概率与相关字体
- 标准数域使用
\mathbb{N}、\mathbb{Z}、\mathbb{Q}、\mathbb{R}、\mathbb{C}。 \mathbb{N}是否包含0必须在首次出现时说明,除非课程已有统一约定。- 函数空间统一写作
C([a,b])、C^k(\Omega)、L^p(\Omega);不用\mathscr{C}或\mathcal{C}表示连续函数空间。 - 概率测度使用普通数学斜体
P,如P(A)、P(A\mid B);本项目不用\mathbb{P}表示概率。 - 幂集使用
\mathcal{P},事件族或 σ-代数使用\mathcal{F},期望使用\mathbb{E}。 - 标准概率空间写作
(\Omega,\mathcal{F},P);数学括号使用半角定界符,不使用中文全角括号。
2.10 希腊字母字形
正文使用 KaTeX 命令,不直接粘贴 Unicode 希腊字母。项目默认采用:
latex
\varepsilon,\theta,\kappa,\pi,\rho,\sigma,\varphi
对应变体仅在需要区分两个对象,或必须忠实引用领域固定记号时使用,并应首次说明、全文一致。
小写 omicron 使用 KaTeX 提供的 \omicron。大写 Omicron 与拉丁大写字母 O 同形,本项目为兼容完整 LaTeX 引擎直接使用 O;当前 KaTeX 虽支持 \Omicron,本项目不采用该写法。
完整大小写字母表及变体对照见参考文档。
2.11 \boxed 的使用
\boxed{...} 是强调数学结论的命令,不是环境。项目作如下约定:
- 仅用于完整推导后的最终答案、核心结论或需要读者立即定位的结果。
- 默认每个例题或独立推导最多使用一次;多个并列最终结论可以合并展示。
- 不用于普通中间步骤、定义、已知条件或仅仅“比较重要”的公式。
- 只在行间公式中使用;不嵌套方框,不承载长段中文,不把句末标点放入方框。
- 方框内部不使用
\,、\quad等命令人为增加内边距。 - 过长或多行内容优先改为正文提示或拆分;确需框住多行公式时必须复核移动端宽度。
```markdown 因此,方程的最终解为:
$$ \boxed{x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}} $$ ```
2.12 主公式与附加条件的间距
主公式后跟定义域、参数范围或成立条件时,单个简短条件统一使用:
latex
主公式,\qquad 附加条件
例如:
markdown
$$
A(x)\coloneqq\int_a^x f(t)\,\mathrm{d}t,
\qquad
x\in[a,b]
$$
具体约定如下:
- 主公式与条件之间先写半角数学逗号
,,再写\qquad。 - 不使用普通空格、
~~、\quad\quad或任意\hspace模拟该间距。 - 公式最后不再添加逗号或句号。
- 条件较长、数量较多或导致窄屏溢出时,把条件移到公式外:
```markdown 对任意 \(x\in[a,b]\),定义:
$$ A(x)\coloneqq\int_a^x f(t)\,\mathrm{d}t $$ ```
2.13 允许按语境选择但须保持一致的事项
以下事项不存在唯一通行答案,不应仅凭个人偏好判错:
- 普通比值使用
/还是短分式;按可读性选择; - 括号使用自动伸缩还是手动尺寸;按实际高度选择;
- 公式是否编号;仅在正文需要引用时编号;
- 某一领域固定记号是否保留;必须先定义并全文一致。
3. 参考速查
本章用于发现常见疏漏,不把每一项都视为项目特有的强制约定。遇到课程教材已有明确传统时,应先保证数学含义准确,再保持全文一致。
3.1 字体与算符
| 对象 | 参考写法 | 说明 |
|---|---|---|
| 一般变量 | x、n、\alpha |
默认数学斜体 |
| 内置函数 | \sin x、\ln x、\det\boldsymbol{A} |
不写成字母连乘 |
| 反三角函数 | \arcsin x、\arccos x、\arctan x |
不用有倒数歧义的 \sin^{-1}x |
| 非内置算符 | \operatorname{rank}\boldsymbol{A}、\operatorname{tr}\boldsymbol{A}、\operatorname{span}S、\operatorname{im}T |
不用 \text{...} 伪造算符 |
| 正体常数 | \mathrm{e}、\mathrm{i} |
按项目约定使用正体 |
| 单位 | 5\,\mathrm{m} |
数值与单位之间留小间距 |
| 集合族 | \mathcal{F} |
与一般集合和概率测度区分 |
| 向量、矩阵、线性映射 | \boldsymbol{x}、\boldsymbol{A}、T |
项目统一字体,不混用 \vec、\mathbf |
3.2 常用对象与运算
| 含义 | 参考写法 |
|---|---|
| 元素属于、不属于 | \in、\notin |
| 并、交、差 | \cup、\cap、\setminus |
| 笛卡尔积 | \times |
| 不交并 | \sqcup |
| 集合基数 | \lvert A\rvert |
| 开、闭、半开区间 | (a,b)、[a,b]、(a,b]、[a,b) |
| 含无穷端点的区间 | (-\infty,a]、[a,+\infty) |
| 内积 | \langle\boldsymbol{x},\boldsymbol{y}\rangle |
| 二项式系数 | \binom{n}{k} |
| 单位矩阵、零向量、零矩阵 | \boldsymbol{I}_n、\boldsymbol{0}、\boldsymbol{0}_{m\times n} |
| 直和、张量积、正交补 | \oplus、\otimes、V^\perp |
| 梯度、散度、旋度 | \nabla f、\nabla\cdot\boldsymbol{F}、\nabla\times\boldsymbol{F} |
3.3 上下标、极限与映射
- 多字符上下标和上标加花括号:
x_{n+1}、a^{(k)}。 - 高阶导数优先写
f^{(k)}(x);极限条件写完整:\lim_{x\to x_0^+}。 - 求和、乘积的指标范围写完整:
\sum_{k=1}^{n}、\prod_{j=1}^{m}。 - 函数与映射可写:
f\colon A\to B、x\mapsto f(x)。 - 矩阵转置写
\boldsymbol{A}^{\mathsf{T}},共轭转置或伴随写\boldsymbol{A}^*,逆矩阵写\boldsymbol{A}^{-1},Moore–Penrose 广义逆写\boldsymbol{A}^{\dagger}。 - 行列式写
\det\boldsymbol{A};矩阵展开的行列式使用vmatrix,普通矩阵使用pmatrix。 - 线性代数算符统一写作
\ker T、\dim V、\operatorname{rank}\boldsymbol{A}、\operatorname{tr}\boldsymbol{A}、\operatorname{span}S、\operatorname{im}T。 - 极值点使用
\operatorname*{arg\,max}、\operatorname*{arg\,min};Jacobian 写J_f,Hessian 写\nabla^2 f。
3.4 常见源码问题
| 避免 | 参考改写 |
|---|---|
dx |
\mathrm{d}x |
\int f(x)dx |
\int f(x)\,\mathrm{d}x |
$sin x$ |
$\sin x$ |
$R^n$ 表示实空间 |
$\mathbb{R}^n$ |
|x|、\|x\| 混用 |
\lvert x\rvert、\lVert x\rVert |
全部使用 \left...\right |
按内容实际高度选择 |
行内 \dfrac |
短式用 \frac,复杂式移到行间 |
\text{rank} |
\operatorname{rank} |
\sin^{-1}x 表示反正弦 |
\arcsin x |
\mathscr{C}[a,b] |
C([a,b]) |
\left.F(x)\right|_a^b |
\left.F(x)\right\rvert_a^b |
\mathbf{r}、\vec{x} |
\boldsymbol{r}、\boldsymbol{x} |
f:A->B |
f\colon A\to B |
未配置的 \R、\dd |
使用展开写法 |
4. 复核流程
4.1 第一轮:项目约定
优先检查:
- KaTeX 环境、宏与多行环境是否符合第 2.1 节;
- 微分、积分、关系符、定界符和竖线是否统一;
- 集合、概率、希腊字形及
\text{}是否符合项目约定; - 中文空格和标点是否正确;
\boxed是否被滥用,主公式与附加条件是否按,\qquad处理。
4.2 第二轮:数学与可读性
逐式确认数学条件、定义域、上下限、量词、正负号和等价关系准确;再参考第 3 章检查字体、层级、源码可读性和全文一致性。
自动搜索只能标记“需要人工确认”的位置,不能盲目全局替换。例如普通 Markdown 竖线、英文单词中的字母 d 与数学微分无关。
4.3 第三轮:生产页面渲染
至少检查:
- 开头第一个公式;
- 全文最长公式;
- 一个多行推导或分段函数;
- 所有含中文
\text{}的公式; - 所有
\boxed公式; - 所有“主公式+附加条件”结构;
- 图表附近公式和窄屏显示效果。
重点观察基线、行距、括号尺寸、长式溢出、多行对齐、中文字体和不支持命令。
5. 复核结论模板
```markdown
数学公式复核记录
- 文件:
- 知识点名称 / ID:
- 初审人:
- 日期:
检查结果
- [ ] 项目约定检查通过
- [ ] 数学内容与适用条件准确
- [ ] 参考速查未发现明显疏漏
- [ ] 生产页面与窄屏渲染通过
问题清单
文件位置/公式片段:问题;建议修改为……
结论
- [ ] 通过
- [ ] 修改后通过
- [ ] 需再次复核 ```
6. 正式发布前仍需确认
- 生产页面的 KaTeX 版本、完整配置和测试入口;
- 是否配置稳定的全局宏;未确认前继续使用展开写法;
aligned、gathered、cases、\tag{}、\boxed和\omicron的生产支持情况;- 含中文
\text{}的字体、基线和行距表现; - 自然数是否包含
0; - 公式末尾标点由 KaTeX 片段还是 Markdown 正文层处理。
附录 A:积分相关命令速查
本附录汇总微积分、向量分析和微分形式中常见的积分源码。积分号后的微元继续遵守第 2.2 节:微分算符使用正体 \mathrm{d},被积式与微元之间使用 \,。
A.1 基本积分号与积分区域
| 含义 | 推荐源码 | 渲染 |
|---|---|---|
| 一重积分 | \int_a^b f(x)\,\mathrm{d}x |
\(\int_a^b f(x)\,\mathrm{d}x\) |
| 二重积分 | \iint_D f(x,y)\,\mathrm{d}x\,\mathrm{d}y |
\(\iint_D f(x,y)\,\mathrm{d}x\,\mathrm{d}y\) |
| 三重积分 | \iiint_\Omega f\,\mathrm{d}V |
\(\iiint_\Omega f\,\mathrm{d}V\) |
| 闭合曲线积分 | \oint_\gamma |
\(\oint_\gamma\) |
| 闭合曲面积分 | \oiint_\Sigma |
\(\oiint_\Sigma\) |
| 闭合三重积分 | \oiiint_\Omega |
\(\oiiint_\Omega\) |
积分区域统一放在积分号下标中。区间用 [a,b];平面区域通常用 D 或 \Omega\subset\mathbb{R}^2;空间或一般区域用 \Omega;曲线用 \gamma;曲面用 \Sigma;区域边界用 \partial\Omega。字母含义必须在正文首次出现时定义,不因对象是积分区域就自动改用花体。
A.2 曲线积分
| 类型 | 推荐写法 |
|---|---|
| 标量函数对弧长 | \int_\gamma f\,\mathrm{d}s |
| 向量场沿曲线 | \int_\gamma \boldsymbol{F}\cdot\mathrm{d}\boldsymbol{r} |
| 坐标形式 | \int_\gamma (P\,\mathrm{d}x+Q\,\mathrm{d}y) |
| 闭合曲线 | \oint_\gamma (P\,\mathrm{d}x+Q\,\mathrm{d}y) |
| 边界曲线 | \oint_{\partial D} (P\,\mathrm{d}x+Q\,\mathrm{d}y) |
使用 \oint 只表示路径闭合,不自动表达方向;曲线方向或边界的诱导定向须在正文说明。坐标形式含多个加减项时,整个被积微分式属于同一个积分号,不在每一项前重复积分号。
A.3 曲面积分与体积分
| 类型 | 推荐写法 |
|---|---|
| 标量曲面积分 | \iint_\Sigma f\,\mathrm{d}S |
| 向量场通量 | \iint_\Sigma \boldsymbol{F}\cdot\boldsymbol{n}\,\mathrm{d}S |
| 闭合曲面通量 | \oiint_{\partial\Omega}\boldsymbol{F}\cdot\boldsymbol{n}\,\mathrm{d}S |
| 体积分 | \iiint_\Omega f\,\mathrm{d}V |
\boldsymbol{n} 表示已定义方向的单位法向量。\oiint 只用于闭合曲面;普通曲面即使有边界仍使用 \iint。\oiiint 虽可渲染,但“闭合三重积分”的语义并非各领域都常用,只有课程已明确定义时才使用。
A.4 外微分与微分形式
外微分仍使用项目统一的正体微分算符:
| 含义 | 推荐源码 | 渲染 |
|---|---|---|
| 外微分 | \mathrm{d}\omega |
\(\mathrm{d}\omega\) |
| 坐标微分 | \mathrm{d}x^i |
\(\mathrm{d}x^i\) |
| 楔积 | \alpha\wedge\beta |
\(\alpha\wedge\beta\) |
| 外微分平方为零 | \mathrm{d}^2\omega=0 |
\(\mathrm{d}^2\omega=0\) |
| Stokes 形式 | \int_{\partial\Omega}\omega=\int_\Omega\mathrm{d}\omega |
\(\int_{\partial\Omega}\omega=\int_\Omega\mathrm{d}\omega\) |
微分形式示例:
latex
\omega
=P\,\mathrm{d}x+Q\,\mathrm{d}y,
\qquad
\mathrm{d}\omega
=\left(
\frac{\partial Q}{\partial x}
-\frac{\partial P}{\partial y}
\right)
\mathrm{d}x\wedge\mathrm{d}y
不要用普通字母 d 与外微分算符混写;\wedge 两侧不手工添加空格。
A.5 KaTeX 兼容边界
- KaTeX 原生支持
\int、\iint、\iiint、\oint、\oiint、\oiiint和\wedge。 - KaTeX 不支持
\iiiint、\idotsint,课程 Markdown 中不得使用。 - 四维或一般高维积分优先写成
\int_\Omega f(x)\,\mathrm{d}x;如需强调维数,可在定义清楚后写\mathrm{d}^n x。 - 不用
\int\!\!\int、负间距或重复积分号手工拼接\iint;也不用未配置的自定义宏代替上述命令。 - 最终仍须在生产页面核对 KaTeX 版本与实际渲染结果。
参考依据
- AMS-LaTeX
amsmath用户指南; - LaTeX2e 数学公式参考;
- KaTeX Supported Functions、Options 与 Auto-render 文档;
- GB/T 15834—2011《标点符号用法》。