数式入力 / 回帰テスト
LaTeXコマンド補完を5つの回帰条件で確かめる
正式名、dots派生、環境名、候補ゼロ、共有prefixを同じ入力で検査し、補完辞書の退行を再現可能な公開記録へ固定します。

数式入力の補完は、候補一覧が開くだけでは評価できない。 正式なコマンド名を最後まで入力しても候補が残るか、目的の候補が先頭にあるか、環境名が正しいテンプレートへ進むか。辞書や順位規則を変えるたびに、同じ入力で確かめる必要がある。
5分類を別々の回帰条件にする
| 検査 | 代表入力 | 守る挙動 |
|---|---|---|
| 正式名 | sin、frac、mathrm、operatorname | 入力した正式名自身を先頭候補にする |
| dots派生 | dotsc、dotsb | 描画可能な \ldots、\cdots へ解決する |
| 環境名 | pmatrix、bmatrix、cases | 対応する begin テンプレートへ進む |
| 候補ゼロ | 標準コマンド名51件 | 完全入力時にも候補を一件以上返す |
| 共有prefix | tex、dots、sin | 短い中核コマンドを長い派生より先に保つ |
一つの合格率へまとめないため、失敗した契約を出力から直接判断できる。dotscだけが落ちればdots派生の対応、texだけが落ちれば共有prefixの順位へ調査範囲を絞れる。
先頭候補とテンプレートを直接検査する
完全入力時の候補配列から先頭を取り出す。環境名は通常コマンドと同じ文字列比較にせず、対応するbeginテンプレートを含むことまで確認する。
const topLatex = (token) =>
buildRankedWordCandidates(token)[0]?.candidate.key.latex ?? "";
assert.equal(topLatex("sin"), "\\sin");
assert.equal(topLatex("mathrm"), "\\mathrm{#?}");
assert.ok(topLatex("pmatrix").includes("\\begin{pmatrix}"));実装commit、実行command、テストSHAを結ぶ
2026年8月31日に回帰テストを再実行し、5件中5件が成功した。公開回帰記録には、fixture ID、実装commit、実行command、テストファイルのSHA-256、現在のpass状態を保存している。 fixtureはmath-suggest-regression-v1、テストSHA-256は6c89f53efb16035d9eebe0d368914a578031285412d081962adfa0e357d6c8a2である。
node --test tests/math-suggest-command-names.test.mjs
shasum -a 256 tests/math-suggest-command-names.test.mjs失敗分類から調査箇所を決める
| 失敗 | 最初に調べる範囲 | 修正後の再検査 |
|---|---|---|
| 正式名 | 完全一致の順位と正式名trigger | 同じ正式名を最後まで入力する |
| dots派生 | 描画可能な記号への対応 | dotscとdotsbを個別に実行する |
| 環境名 | 環境templateの候補key | beginテンプレートまで比較する |
| 候補ゼロ | 完全入力した正式名の辞書登録 | 標準コマンド名51件を全件実行する |
| 共有prefix | 短い中核コマンドの優先規則 | 短い語と派生語を同時に確認する |
5件の成功が示す範囲
- 実際の利用者が各コマンドを入力する頻度は測っていない。
- 候補選択にかかる時間や打鍵数は測っていない。
- 著者定義macroの候補順位は対象外である。
- OCR、AI生成、数式の数学的な正しさは測っていない。
- 文書全体の組版成功率は測っていない。
TeX64の入力面は数式ブロックの説明で確認できる。 再現差がある場合は、入力token、先頭候補、実装commitを添えてサポート窓口へ知らせてほしい。
参照した一次情報
訂正窓口
TeX64 Support挙動の変更、再現できない結果、誤記はサポートで受け付けます。