Claude CodeのMAXプランを使い始めたので、慣れるため手始めに、日本語の漢字と、中国語の簡体字・繁体字を変換するためのツールを作った。
日中漢字変換
https://kanji.ob-scura.com/
日本語の漢字(新字体)、中国語の簡体字、繁体字の3種類を相互に変換するWebツールである。
テキストを入力語、言語を選択し変換ボタンを押すと、残り2種類の漢字に変換した結果が表示される。
変換方法
変換テーブルはOpenCCの辞書データをもとに生成した。
https://github.com/BYVoid/OpenCC
OpenCCは約4,000対の漢字に対応した、OSSプロジェクトである。
ライセンスはApache License 2.0。
これをもとにjsonでデータを持つようにしてもらった。
外部APIには依存せず、すべてクライアントサイドで動作する。
中国語側の基準について、とくに、中華人民共和国の通用规范汉字表(8,105字)を基準にした(個人的に、簡体字の変換を使うことがとても多いため)。
使用技術
Next.jsの静的エクスポートでCloudflare Pagesにデプロイ。
最初はVercelを使おうとしたが、欲が出て将来収益化したい気持ちが出たのでCloudflare Pagesにした。
Claude Codeに書かせた解説によると、変換ロジック自体は文字単位のテーブルルックアップで、コア部分は数行で済む内容とのこと。
UIは日本語・簡体字中国語・繁体字中国語・英語の4言語に対応している。
ブラウザの言語設定から自動判定され、日本語・中国語(簡体字・繁体字)以外の場合は英語になるようにした。
制約
文字単位の変換なので、一対多の対応(簡体字の「发」が繁体字では「發」や「髮」になるなど)は文脈判定できない。
ただ、これは既存の同じようなツールもそうなっているので、対応しなかった。
(台湾で使用されている字体に追加対応しようとしたところバグの原因となったので安全を取った)
以上です。
