モンゴル系文字(伝統モンゴル文字、パスパ文字、ソヨンボ文字)およびモンゴル語の借用語の語源としてチベット文字やディーバナーガリー文字(サンスクリット用)を入力するためのWebベースのキーボードツール、KhamagBichigを開発した。Google Apps Scriptで動作し、ブラウザから直接アクセスできる。

最大の技術的課題は、Shiftキーの状態管理だった。物理キーボードのShiftキー、画面上の仮想SHIFTボタン、そして「Unshifted/Shifted」表示ボタンの3つを完全に同期させる必要があったからだ。

当初の実装では、これらが独立して動作してしまい、Shiftキーを押しても仮想キーボードの表示が切り替わらない、または逆に仮想ボタンをクリックしても入力が変わらないという問題が発生した。

解決策は、すべてのShift状態を唯一の情報源(single source of truth)として管理することだった。shiftStateという変数を定義し、すべてのShift関連イベント(キーボード、ボタンクリック、表示切替)がこの変数を参照・更新するように実装した。

もう一つの課題は、各文字体系の文字マッピングデータの整備だった。scriptMappingsscriptLegendsという2つのオブジェクトに、すべての文字体系の完全なキーマップと凡例を格納する必要があった。データの欠損があると、一部のキーが機能しないという問題が起きる。

現在、KhamagBichigは安定稼働している。伝統モンゴル文字だけでなく、パスパ文字、ソヨンボ文字、チベット文字やディーバナーガリー文字の入力にも対応しており、モンゴル系文字研究者にとって便利なツールになった。