めも

主にUnity

Wordの数式入力のオートコレクトの最適化(高校数学用)

f:id:mikomon:20201213001440j:plain

前提

筆者は諸般の事情により、自分用として、主に高校数学レベルの数式を活字化している。まず筆者はTeXに慣れていないため、自分用であるということもあり、Wordで数式入力を行っている。

Wordの数式入力の方法

Wordの「二次元形式」数式は、恐らく普通のUnicodeに対応したフォントを、Word側が用意したテンプレートのようなものに当てはめて表示しており、その入力の仕方はいくつかある。

  • 数式タブのギャラリーから入力
  • Unicodeで記述し二次元変換
  • LateXで記述し二次元変換
  • 数式オートコレクト

筆者は、どれも同じぐらいになれた場合、上から順に時間がかかると考えている。LateXはいろいろなことに使えるという点では便利だが、今回は数式オートコレクトの最適化について考えたい。
最適化をする上では、なるべくオートコレクトの、変換前に入力する文字列を少なくすることが好ましい。

数式オートコレクト

f:id:mikomon:20201213002252j:plain

オートコレクトのタイミング

「入力中に自動修正する(T)」にチェックを入れると、入力中にオートコレクトが行われ、脳に負担がかからくて便利である。

Unicodeの数学用記号

オートコレクトをカスタムする場合、変換後の文字を入力しなければならないが、そのときに以下のサイトからコピー&ペーストすれば便利である。
Unicode(数学記号) - CyberLibrarian

イタリック体記号

Unicode 数学用英数字記号 - CyberLibrarian
デフォルトでは、数式欄に入力した[a-z]の文字は、「テキスト」扱いになっているが、これがイタリック体[𝑎-𝑧]に変われば便利である。

[a-z]→[𝑎-𝑧]

イタリック体ギリシア文字記号

Unicode 数学用英数字記号 - CyberLibrarian
[\aa-\zz]→[𝛼-𝜔]などのようにする。このように文字を重複させている理由は、何故か筆者の環境では、\に続く文字が一文字であった場合にオートコレクトが機能しなかったからである。

ギリシャ文字と英字の対応表は、以下のようなものが一般的である。しかし、我々はγという文字をα,βの次に使うという観点からして、[cc]→[γ]とする方が直感的であるかもしれない。また[E]に対応する文字がいくつもあるのは困る。もはや[H]がHと同じという点や、[η]とnが似ているという点から、[nn]→[η]、[nn]→[η]などのように柔軟に対応して良いと思う。

しかも、実際高校数学で使うのは[αβγδεθπφ]ぐらいである。(高校物理となるとまた話は違うが。)無駄にオートコレクトを増やさなくてもいいかもしれない。

Α α A
Β β B
Γ γ G
Δ δ D
Ε ε E
Ζ ζ Z
Η η Ē
Θ θ T
Ι ι I
Κ κ C,K
Λ λ L
Μ μ M
Ν ν N
Ξ ξ X
Ο ο O
Π π P
Ρ ρ R,R
Σ σ/ς S
Τ τ T
Υ υ Y,U
Φ φ P
Χ χ C,K
Ψ ψ P
Ω ω Ō
[\a-\z]→[𝛼-𝜔]

二重線記号

Unicode 数学用英数字記号 - CyberLibrarian
高校数学では、各種の集合を表すときなどに使う。[ℂ𝕁ℕℙℚℝ𝕍ℤ]で十分。

[ℂ𝕁ℕℙℚℝ𝕍ℤ]
[\dN]→[ℕ]

sin x, mod p, deg f(x)など

これらはsinなどと打った後に、スペースを打つと、自動でいい感じに変換される。これに対応する文字列(すなわち、sin, cosなど)を定めるには、「認識済みの関数(E)…」で設定すれば良い。

高校数学で頻出の記号

記号の組み合わせである記号

まず記号の組み合わせである記号、すなわち±∓≪≫≤≥≅⊆は直感的に打てるようにしたい。例えば[+-]→[±]

[±∓≪≫≤≥≅⊆]
否定系の記号

否定系の記号は何かしらの命名規則で統一したほうが良いかもしれない。

これだけで大抵なんとかなる気がする。

[√∃∀⋅≠≡∩∪∈⊂∝∫∑∏∴∵⟸⟹⟺↦∠⊥∤∥∦∎]
数式タブのギャラリーにデフォルトで入っていないものに注意

これは「定義する」の記号≔しか思いつかなかった。でも≡と記述してもいいらしい。

[≔]

結局

それで、いろいろ考えた結果、このようにした。
f:id:mikomon:20201213060955j:plain
(以下コピー用)

α \aa
β \bb
γ \cc
δ \dd
ε \ee
θ \tt
λ \ll
μ \mm
ν \nn
ξ \xx
π \pp
ρ \rr
σ \ss
τ \tt
φ \ff
χ \kk
ω \oo
\dc
𝕁 \dj
\dp
\dq
\dr
\dn
𝕍 \dv
\dz
\sq
\ex
\E
\A
\all
*
\eq
\cap
\cup
\in
\ss
\pp
\int
\sum
\pd
\tf
\bc
<-
->
<->
\ang
\bot
\n|
\pr
\npr
\qed
:=
= ;
: