msime-engine 0.2.0

Input method engine for Chinese and other languages: quanpin, shuangpin, nine-key, wubi, zhuyin, Cantonese, Japanese, Korean and more, ranked over a word lattice with typo correction and learning from what the user picks. The engine of 水杉输入法 (Metasequoia IME).
Documentation
# LaTeX 命令名到 Unicode 码位,msime 的 plugins/phrase_table/tools/gen_latex_symbols.py 由它生成官方短语表「LaTeX 符号」的 pack/plugin.toml,符号模式(Shift+S)也按它查命令名。MIT 许可,Copyright (c) 2026 Metasequoia IME contributors,全文见 msime 的 plugins/phrase_table/LICENSE。
# 唯一的编辑入口是 msime-dictionary 的 sources/symbols/latex-symbols.tsv。msime 的 plugins/phrase_table/latex-symbols/symbols.tsv 和 crates/engine/src/local/latex_symbols.tsv 是 scripts/sync_symbol_tables.py 按 resources/symbol-tables.lock.json 同步的逐字节副本,后者由引擎用 include_str! 编进去;不要在 msime 里手改。
# 每行「命令名<TAB>U+码位」,按分组排列,生成的短语表照这个顺序;同一个编码下小写的命令排在前面。
# 命令名取自 LaTeX 内核、amssymb、amsmath、latexsym、stmaryrd、mathtools、gensymb 和 textcomp,码位按它们排出的字形(\phi 是 ϕ,\varphi 是 φ;\epsilon 是 ϵ,\varepsilon 是 ε)。
# 只收单个非 ASCII 字符:\vert、\backslash 这类直接能打的不收。

# 希腊字母
\alpha	U+03B1
\beta	U+03B2
\gamma	U+03B3
\Gamma	U+0393
\delta	U+03B4
\Delta	U+0394
\epsilon	U+03F5
\varepsilon	U+03B5
\zeta	U+03B6
\eta	U+03B7
\theta	U+03B8
\Theta	U+0398
\vartheta	U+03D1
\iota	U+03B9
\kappa	U+03BA
\varkappa	U+03F0
\lambda	U+03BB
\Lambda	U+039B
\mu	U+03BC
\nu	U+03BD
\xi	U+03BE
\Xi	U+039E
\pi	U+03C0
\Pi	U+03A0
\varpi	U+03D6
\rho	U+03C1
\varrho	U+03F1
\sigma	U+03C3
\Sigma	U+03A3
\varsigma	U+03C2
\tau	U+03C4
\upsilon	U+03C5
\Upsilon	U+03A5
\phi	U+03D5
\Phi	U+03A6
\varphi	U+03C6
\chi	U+03C7
\psi	U+03C8
\Psi	U+03A8
\omega	U+03C9
\Omega	U+03A9

# 希伯来字母和字母样符号
\aleph	U+2135
\beth	U+2136
\gimel	U+2137
\daleth	U+2138
\hbar	U+210F
\ell	U+2113
\wp	U+2118
\Re	U+211C
\Im	U+2111
\eth	U+00F0
\mho	U+2127
\Bbbk	U+1D55C
\imath	U+0131
\jmath	U+0237
\partial	U+2202
\nabla	U+2207
\infty	U+221E

# 逻辑和集合
\forall	U+2200
\exists	U+2203
\nexists	U+2204
\neg	U+00AC
\land	U+2227
\lor	U+2228
\top	U+22A4
\bot	U+22A5
\emptyset	U+2205
\varnothing	U+2205
\complement	U+2201
\in	U+2208
\notin	U+2209
\ni	U+220B
\subset	U+2282
\Subset	U+22D0
\supset	U+2283
\Supset	U+22D1
\subseteq	U+2286
\supseteq	U+2287
\subsetneq	U+228A
\supsetneq	U+228B
\nsubseteq	U+2288
\nsupseteq	U+2289
\sqsubset	U+228F
\sqsupset	U+2290
\sqsubseteq	U+2291
\sqsupseteq	U+2292
\therefore	U+2234
\because	U+2235

# 二元运算
\pm	U+00B1
\mp	U+2213
\times	U+00D7
\div	U+00F7
\cdot	U+22C5
\ast	U+2217
\star	U+22C6
\circ	U+2218
\bullet	U+2219
\cap	U+2229
\Cap	U+22D2
\cup	U+222A
\Cup	U+22D3
\uplus	U+228E
\sqcap	U+2293
\sqcup	U+2294
\wedge	U+2227
\vee	U+2228
\setminus	U+2216
\wr	U+2240
\diamond	U+22C4
\Diamond	U+25C7
\oplus	U+2295
\ominus	U+2296
\otimes	U+2297
\oslash	U+2298
\odot	U+2299
\circledcirc	U+229A
\circledast	U+229B
\boxplus	U+229E
\boxminus	U+229F
\boxtimes	U+22A0
\boxdot	U+22A1
\amalg	U+2A3F
\dotplus	U+2214
\intercal	U+22BA
\veebar	U+22BB
\barwedge	U+22BC
\curlyvee	U+22CE
\curlywedge	U+22CF
\ltimes	U+22C9
\rtimes	U+22CA
\lhd	U+22B2
\rhd	U+22B3
\unlhd	U+22B4
\unrhd	U+22B5
\dagger	U+2020
\ddagger	U+2021

# 关系
\leq	U+2264
\le	U+2264
\geq	U+2265
\ge	U+2265
\neq	U+2260
\ne	U+2260
\equiv	U+2261
\approx	U+2248
\approxeq	U+224A
\sim	U+223C
\nsim	U+2241
\simeq	U+2243
\cong	U+2245
\ncong	U+2247
\backsim	U+223D
\propto	U+221D
\asymp	U+224D
\doteq	U+2250
\fallingdotseq	U+2252
\risingdotseq	U+2253
\coloneqq	U+2254
\eqcirc	U+2256
\circeq	U+2257
\triangleq	U+225C
\ll	U+226A
\gg	U+226B
\lll	U+22D8
\ggg	U+22D9
\leqq	U+2266
\geqq	U+2267
\leqslant	U+2A7D
\geqslant	U+2A7E
\lneq	U+2A87
\gneq	U+2A88
\lneqq	U+2268
\gneqq	U+2269
\nless	U+226E
\ngtr	U+226F
\nleq	U+2270
\ngeq	U+2271
\lesssim	U+2272
\gtrsim	U+2273
\lessgtr	U+2276
\gtrless	U+2277
\between	U+226C
\prec	U+227A
\succ	U+227B
\preceq	U+2AAF
\succeq	U+2AB0
\preccurlyeq	U+227C
\succcurlyeq	U+227D
\mid	U+2223
\nmid	U+2224
\parallel	U+2225
\nparallel	U+2226
\perp	U+22A5
\vdash	U+22A2
\dashv	U+22A3
\models	U+22A8
\smile	U+2323
\frown	U+2322
\bowtie	U+22C8
\pitchfork	U+22D4

# 箭头
\leftarrow	U+2190
\Leftarrow	U+21D0
\gets	U+2190
\rightarrow	U+2192
\Rightarrow	U+21D2
\to	U+2192
\uparrow	U+2191
\Uparrow	U+21D1
\downarrow	U+2193
\Downarrow	U+21D3
\leftrightarrow	U+2194
\Leftrightarrow	U+21D4
\updownarrow	U+2195
\Updownarrow	U+21D5
\longleftarrow	U+27F5
\Longleftarrow	U+27F8
\longrightarrow	U+27F6
\Longrightarrow	U+27F9
\longleftrightarrow	U+27F7
\Longleftrightarrow	U+27FA
\implies	U+27F9
\iff	U+27FA
\mapsto	U+21A6
\longmapsto	U+27FC
\hookleftarrow	U+21A9
\hookrightarrow	U+21AA
\nearrow	U+2197
\searrow	U+2198
\swarrow	U+2199
\nwarrow	U+2196
\nleftarrow	U+219A
\nLeftarrow	U+21CD
\nrightarrow	U+219B
\nRightarrow	U+21CF
\nleftrightarrow	U+21AE
\nLeftrightarrow	U+21CE
\leftharpoonup	U+21BC
\leftharpoondown	U+21BD
\rightharpoonup	U+21C0
\rightharpoondown	U+21C1
\upharpoonleft	U+21BF
\upharpoonright	U+21BE
\downharpoonleft	U+21C3
\downharpoonright	U+21C2
\rightleftharpoons	U+21CC
\leftrightharpoons	U+21CB
\leftrightarrows	U+21C6
\rightleftarrows	U+21C4
\Lleftarrow	U+21DA
\Rrightarrow	U+21DB
\twoheadrightarrow	U+21A0
\curvearrowleft	U+21B6
\curvearrowright	U+21B7
\circlearrowleft	U+21BA
\circlearrowright	U+21BB
\leadsto	U+21DD
\rightsquigarrow	U+21DD
\dashrightarrow	U+21E2
\multimap	U+22B8

# 大型运算符
\sum	U+2211
\prod	U+220F
\coprod	U+2210
\int	U+222B
\iint	U+222C
\iiint	U+222D
\oint	U+222E
\oiint	U+222F
\bigcap	U+22C2
\bigcup	U+22C3
\bigwedge	U+22C0
\bigvee	U+22C1
\bigodot	U+2A00
\bigoplus	U+2A01
\bigotimes	U+2A02
\biguplus	U+2A04
\bigsqcup	U+2A06

# 定界符和省略号
\langle	U+27E8
\rangle	U+27E9
\lceil	U+2308
\rceil	U+2309
\lfloor	U+230A
\rfloor	U+230B
\llbracket	U+27E6
\rrbracket	U+27E7
\ulcorner	U+231C
\urcorner	U+231D
\llcorner	U+231E
\lrcorner	U+231F
\Vert	U+2016
\ldots	U+2026
\cdots	U+22EF
\vdots	U+22EE
\ddots	U+22F1

# 几何和杂项
\angle	U+2220
\measuredangle	U+2221
\triangle	U+25B3
\triangledown	U+25BD
\triangleleft	U+25C1
\triangleright	U+25B7
\bigtriangleup	U+25B3
\bigtriangledown	U+25BD
\blacktriangle	U+25B2
\blacktriangledown	U+25BC
\blacktriangleleft	U+25C0
\blacktriangleright	U+25B6
\square	U+25A1
\Box	U+25A1
\blacksquare	U+25A0
\lozenge	U+25CA
\blacklozenge	U+29EB
\bigcirc	U+25EF
\bigstar	U+2605
\surd	U+221A
\prime	U+2032
\backprime	U+2035
\clubsuit	U+2663
\diamondsuit	U+2662
\heartsuit	U+2661
\spadesuit	U+2660
\flat	U+266D
\natural	U+266E
\sharp	U+266F
\checkmark	U+2713
\maltese	U+2720
\circledR	U+00AE

# 黑板粗体
\mathbb{A}	U+1D538
\mathbb{B}	U+1D539
\mathbb{C}	U+2102
\mathbb{D}	U+1D53B
\mathbb{E}	U+1D53C
\mathbb{F}	U+1D53D
\mathbb{G}	U+1D53E
\mathbb{H}	U+210D
\mathbb{I}	U+1D540
\mathbb{J}	U+1D541
\mathbb{K}	U+1D542
\mathbb{L}	U+1D543
\mathbb{M}	U+1D544
\mathbb{N}	U+2115
\mathbb{O}	U+1D546
\mathbb{P}	U+2119
\mathbb{Q}	U+211A
\mathbb{R}	U+211D
\mathbb{S}	U+1D54A
\mathbb{T}	U+1D54B
\mathbb{U}	U+1D54C
\mathbb{V}	U+1D54D
\mathbb{W}	U+1D54E
\mathbb{X}	U+1D54F
\mathbb{Y}	U+1D550
\mathbb{Z}	U+2124

# 单位和文本符号(gensymb、textcomp)
\degree	U+00B0
\celsius	U+2103
\ohm	U+2126
\micro	U+00B5
\perthousand	U+2030
\S	U+00A7
\P	U+00B6
\copyright	U+00A9
\pounds	U+00A3
\textcent	U+00A2
\textyen	U+00A5
\texteuro	U+20AC
\textregistered	U+00AE
\texttrademark	U+2122
\textnumero	U+2116
\textbullet	U+2022
\textonequarter	U+00BC
\textonehalf	U+00BD
\textthreequarters	U+00BE