看到一个介绍chemfig的文章,想起以前有个师兄用LaTex写博士论文的事。想试一试知乎的LaTex里mhchem宏包的效果,可能会有错误,当然,chemfig是不可能有的。
ce{}里面空格非常重要,各种表达有时之差一个空格会差很多,有点折磨,下面的例子很多来自mhchem的文档。
基本格式
ce{H2 quad H+quad H3O+ quad 2H2 +O2 quad 1/2H2O quad Ce^{IV}}
quad =空格;字母后面的+和-会自动上标,数字会自动下标,要正常的+前面要空格,2+上标需要用^,即^2+。
ce{Mg++quad Mg2+ quad Mg^2+ quad Mg+2 quad Mg^2+ +}
ce{I- quad S^2- quad CO3^2-quad CO32-quad CO^2- _3 quad Cl-}
ce{^235_92U + ^1_0n -> ^144_56Ba + ^89_36Kr +3 ^1_0n}
ce{^{A}_{Z}X ->^{A}_{Z + 1}Y + ^0_1e }
ce{^{A}_{Z}X ->^{A-4}_{Z -2}Y + ^4_2He }
->是箭头。
ce{Ba^2+ + SO4^2- =BaSO4 v}
ce{S2O3^2- +2H+ =S v +SO2 ^ +H2O}
^会把到空格之前的都上标,这样就不用写{}了,Ba^{2+}当然也可以。
空格+v+空格=↓,空格+^+空格=↑。
更多箭头:
ce{A -> B} quad ce{A <- B} quad ce{A <-> B}
ce{A <--> B} 、ce{A <=> B} 、ce{A <=>> B}、 ce{A <<=> B}
最后一个好丑啊。其他软件里的效果是

ce{A ->[{上方文字}][{下方文字}] B}
ce{2N2 + 3H2 <=>[高温、高压][铁触媒]2NH3}
ce{2H2 + O2->[点燃]H2O}
第二个好丑,其他软件中的效果参考下图:

不用ce{}可以这样写。
A xleftarrow{k_1} B xrightarrow[Delta]{k_2,副反应} C
ce{2K(s) + 2H2O(l)=2K+(aq) +2OH- (aq) +2H2(g)}quad
Delta_rG^ominus _{m,298ce{K}}=-404.82 ce{kJ/mol}
ce{Zn^2+ <=>[+ 2OH^-][+ 2H^+] $underset{text{amphoteres Hydroxid}}{ce{Zn(OH)2 v}}$ <=>[+
2OH^-][+ 2H^+] $underset{text{Hydroxozikat}}{ce{[Zn(OH)4]^2-}}$}
这里可逆符号上下的符号都不是ce{}的格式了,可能是套的格式太多导致的问题,需要重新加ce{},但其他软件里这个例子是正常的。

ce{Zn^2+ <=>[+ ce{2OH-}][+ ce{2H+}] $underset{text{amphoteres
Hydroxid}}{ce{Zn(OH)2 v}}$ <=>
[+ ce{ 2OH-}][+ ce{2H+}] $underset{text{Hydroxozikat}}{ce{[Zn(OH)4]^2-}}$}
果然这样就对了。
ce{Hg^2+ ->[ce{I-}] $overset{mathrm{red}}{ce{HgI2}}$ ->[ce{I-}]
$overset{mathrm{red}}{ce{[Hg^{II}I4]^2-}}$}
似乎不支持mhchemoptions之类的。
其他一些可能用到的符号
ce{明矾:KAlSO4*12H2Oquad 铬矾:KCrSO4.12H2O}
ce{HC#CHquad CH2=CH2}
ce{Asbond B dbond C tbond D}
ce{Abond{-} B bond{=} C bond{#} Dbond{->}Ebond{<-}F}
ce{Abond{~-} B bond{~=} C bond{-~-} Dbond{...}Ebond{-}F}
最后一个实在太丑了,和文档里的差好多,一些格式比如--~似乎用不了,而且经常崩,不崩长下面这样。

其他软件里的效果是:

ce{$0.2$g Fe2O3}quad ce{FeO_{3/2}}
空格++空格=空格。$$可以把'.'变成正常的。
ce{$x$NOx} quad ce{$x$NO_$x$}
cf{[Cd { S(NH2)2}].[Cr(SCN)4(NH3)2]2}
ce{RNO2^{-.}} quad ce{muhyphen Cl}
其他格式
bbox[red]{ce{H2O}}quad bbox[red,5pt]{ce{H2O}}%设置红色背景,并增加5pt额外距离
ce{Hg^2+ ->[I^-] $bbox[red,3pt]{ce{HgI2}}$ ->[I^-]
$bbox[red,3pt]{ce{[Hg^{II}I4]^2-}}$}
bbox[turquoise,3pt]{ce{CuSO4}} + ce{2NaOH + CH3CHO = CH3COOH} +
bbox[maroon,3pt]{ce{Cu2O}} ce{ v + Na2SO4}
知乎的颜色似乎不全啊,brickred,midnightblue之类的没有。知乎编辑器textcolor[RGB]{}不支持,感觉少了好多乐趣。

bbox[black,2pt]{color{white}{ce{CuSO4}}}rightarrowcolor{blue}{ce{CuSO4.5H2O}}
循环图:
amsCd扩展包是一款生成矩阵图的TeX宏包环境,基本环境命令为begin{CD}
end{CD}
,基本用法如下:
@<<<
表示左箭头;@>>>
表示右箭头;@AAA
表示上箭头;@VVV
表示下箭头;
@=
表示水平等号;@|
表示竖直等号;@.
表示空箭头(占位)。
以@
表示箭头开始,以<、>、A、V
等表示箭头方向。
begin{CD}
A @>a>b> B
@VlVrV @AlArA
C @<a<b< D
end{CD}
这个图经常崩,正常情况长这样:

其他:
operatorname{hat A}=operatorname{hat A}^dagger
widehat{Abc}
left langle frac{a}{b} right rangle
left [ 0,1 right ) left langle psi right | frac{d}{dx}left | psi right rangle
混合括号用left XX right XX,似乎不支持bra 和 ket。