博客写作时的一些规范和特殊用法参考。
File
- 使用文件名为链接名,因此使用英文,用
-
代替空格 - Front Matter 中写上
date
和lastmod
属性
Markdown
脚注
示例1
标题引用
可以为标题增加 ID,以便在文内引用
告示
可以使用 引用 + emoji + 加粗 实现
📝 Note: Sunrises are beautiful.
💡 Tip: Remember to appreciate the little things in life.
⚠️ Warning: Do not push the big red button.
Mermaid Graph
需要 Markdown 支持
flowchart LR
A[Hard] -->|Text| B(Round)
B --> C{Decision}
C -->|One| D[Result 1]
C -->|Two| E[Result 2]
sequenceDiagram
Alice->>John: Hello John, how are you?
loop Healthcheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts!
John-->>Alice: Great!
John->>Bob: How about you?
Bob-->>John: Jolly good!
classDiagram
Class01 <|-- AveryLongClass : Cool
<<interface>> Class01
Class09 --> C2 : Where am i?
Class09 --* C3
Class09 --|> Class07
Class07 : equals()
Class07 : Object[] elementData
Class01 : size()
Class01 : int chimp
Class01 : int gorilla
class Class10 {
<<service>>
int id
size()
}
stateDiagram
[*] --> Still
Still --> [*]
Still --> Moving
Moving --> Still
Moving --> Crash
Crash --> [*]
erDiagram
CUSTOMER ||--o{ ORDER : places
ORDER ||--|{ LINE-ITEM : contains
CUSTOMER }|..|{ DELIVERY-ADDRESS : uses
journey
title My working day
section Go to work
Make tea: 5: Me
Go upstairs: 3: Me
Do work: 1: Me, Cat
section Go home
Go downstairs: 5: Me
Sit down: 3: Me
gantt
dateFormat YYYY-MM-DD
section Section
Completed :done, des1, 2014-01-06,2014-01-08
Active :active, des2, 2014-01-07, 3d
Parallel 1 : des3, after des1, 1d
Parallel 2 : des4, after des1, 1d
Parallel 3 : des5, after des3, 1d
Parallel 4 : des6, after des4, 1d
pie
"Dogs" : 386
"Cats" : 85
"Rats" : 15
gitGraph
commit
commit
branch develop
checkout develop
commit
commit
checkout main
merge develop
commit
commit
Grammar
- 推导数学公式时加入
:
,表示下面的公式与本段有关,除非有连接词 - 中文使用直角引号「」
- 中文和英文之间空格
- 数字和单位之间空格,如 8 GB
Math
基本知识
注释以
%
开头颜色:${\color{red} a + b =} c$
分数如果分子分母只有一个符号则可以省去括号:$\frac 1 2$
盒装公式:$\boxed{a+b}$
对比 $|-k|, \lvert - k\rvert, |{-k}|$; $\lVert -k \rVert, \|-k\|$
\mod
相关:$a\mod b$, $a\pmod b$, $a\bmod b$数学推导:$\implies, \iff$
连分数使用
$$ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+\dotsb }}} $$cfrac
:改变限制的位置使用
$$ \begin{gather*} \sum_a \qquad \sum\nolimits_a \\ \int_a \qquad \int\limits_a \end{gather*} $$\limits
和\nolimits
:多行上下标使用
$$ \sum_{\substack{ 0\le i\le m \\ 0 < j < n}} P(i,j) $$\substack
:\text
表示 text,\mathrm
表示数学符号,\operatorname
表示函数
Spacing
Code | Description |
---|---|
\quad | space equal to the current font size |
\, | 3/18 of \quad |
\: | 4/18 of \quad |
\; | 5/18 of \quad |
\! | -3/18 of \quad |
\ (space after backslash) | equivalent of space in normal text |
\qquad | twice of \quad |
二元运算符和关系运算符的距离有极细微的差异:
$$ \begin{align*} 3ax+4by=5cz\\ 3ax<4by+5cz \end{align*} $$因此在定义自己的运算符时应确定是二元运算符 \mathbin{\#}
还是关系运算符 \mathrel{\#}
字体
默认拉丁字母、小写希腊字母是斜体,阿拉伯数字、大写希腊字母是罗马体
对字母有效:(一般用来表示特殊集合)
\mathbb
: 黑板粗体\mathcal
: 手写体(无小写)\mathscr
: 花体\mathfrak
: 哥特体
对整个公式有效:\mathnormal
, \mathrm
, \mathit
, \mathbf
, \mathsf
, \mathtt
Display Math
主环境
单行使用 equation
:
公式超出一行使用 multline
:
多行居中不对齐使用 gather
:
多行对齐使用 align
:(每个等式由两部分组成,用 &
分隔;等式之间同样由 &
分隔。用于排列多个公式)
align
会在列之间加入空格,如果希望自己控制距离则使用 alignat
:
align
为 flalign
:$$
\begin{flalign}
x&=y & w &=z & a&=b+c\\
2x&=-y & 3w&=\frac{1}{2}z & a&=b\\
-4 + 5x&=2+y & w+2&=-1+w & ab&=cb
\end{flalign}
$$主环境都可以在名字最后加入 *
来抑制自动编号
从属环境
公式多行推导使用从属环境 split
:
分段函数使用 cases
(公式样式会变为行内公式)或 dcases
(需要 mathtools
包)
其它从属环境:multlined
, gathered
, aligned
, alignedat
其它
MathJax 尚不支持从属编号环境 subequations
自定义
宏TODO
$$ \def\specialFrac#1#2{\frac{x + #1}{y + #2}} \specialFrac{7}{z+3} $$ $$ \DeclarePairedDelimiters\norm{\lVert}{\rVert} % require{\mathtools} \norm{v}_2 \quad \norm{\frac 1 2} \quad \norm*{\frac 1 2} \quad \norm[\Bigg]{v} $$自定义数学符号
数学符号以罗马体表示,间距和上下标也会有区别,比如正确的写法 $\sin(x)$ 对比 $sin(x)$。自定义数学符号可以使用 \DeclareMathOperator
或 \DeclareMathOperator*
。等价于使用 \operatorname
和 \operatorname*
MathJax Extensions
See MathJax Extension List TODO
$$ \toggle{math1}{math2}\endtoggle $$physics:
$$ \require{physics} $$centernot:
$$ \require{centernot} \centernot\implies \qquad \not\implies $$mathtools:
自定规范
下面是一些自己制定的规范,用来更好的统一自己的写作,非强制
- Expectation: $\mathbb{E}$
- Set: $\mathbb{R}, \mathbb{Z}$
- Empty set: $\varnothing$
- Gaussian: $\mathcal{N}$
- Conditional probability: $p(a | b)$
- Set with conditions: $\{a \mid a\in A\}$
- $i$-th
这是一个脚注 ↩︎