モールス信号変換ツール(MORSE CODE)など、赤猫座の一部の道具は日本語と英語のバイリンガル表示に対応しています。「今の時代、AIやDeepLがあるんだから翻訳なんて1秒で終わるでしょ!」と高を括っていた時期が私にもあったんですが、実際にやってみると「機械翻訳に丸投げしたせいで起きた大惨事」の山。今回はそんな多言語化(i18n)の泥臭い裏事情について書いてみます。
1. 短いUI文言ほど「珍訳」を生み出す罠
見出しやボタンのラベルみたいな、1〜2単語の短いUI文言ほど、実は機械翻訳が一番苦手とする魔境です。文脈(コンテキスト)がないため、AIや翻訳エンジンが勝手にとんでもない解釈をしてしまいます。
- 「保存」を英語にしようとして、なぜか食品の保存を意味する
Preserveが出てくる(そこはSaveでしょ!) - 「クリア」(入力を消す)を訳させたら、透明を意味する
Transparentになっていた - 「進む」がゲームの進行じゃなくて物理的に前進する
AdvanceやProceedの変なニュアンスになっていた
以前、ツール内のボタンを機械翻訳のまま本番に公開した際、海外の知人に画面を見せたら「……ねえ、このボタンを押すと部屋が綺麗に掃除されるの?」と真顔で突っ込まれて顔から火が出たことがあります。それ以来、「ボタンや見出しの単語だけは絶対に自分の目で確認して、一般的なUI作法に合わせる」と心に誓いました。
2. プレースホルダー破壊事件と複数形の壁
もう少しプログラミング寄りの込み入った話だと、「変数埋め込み(プレースホルダー)」と「複数形(Pluralization)」の処理で死にかけます。
例えば、プログラム内で "{count} items found"({count}件見つかりました)のように変数を埋め込むコードをまとめて機械翻訳に放り込むと、賢すぎるAIが気を利かせて……
// 翻訳前(プログラム)
"Please enter up to {max_length} characters."
// 機械翻訳後(大事故)
"最大 {最大文字数} 文字まで入力してください。" // ← 変数名まで親切に日本語化されてプログラムが爆死
変数名まで勝手に日本語に翻訳されてシステムが動かなくなるという「プレースホルダー破壊事件」が頻発します😅
さらに英語には「1件=1 item」「2件以上=2 items」という単数形・複数形の変化がありますが、ロシア語やアラビア語など言語によっては「数字の末尾が1のとき」「2〜4のとき」「それ以外」で単語の形が3〜4パターン変わる言語もあります。このあたりのローカライズ仕様を真面目に組み始めると、あっという間に夜が明けます。
3. 【小話】なぜ高機能なIDEやアプリは「あえて言語切り替え」を用意しているのか?
ところで、VS CodeやJetBrainsなどの高機能エディタ(IDE)や、一部のスマホアプリを使っていると、「OSの言語設定に従うだけでなく、アプリ単体で日本語/英語をあえて切り替えられる設定」が用意されているのを見かけませんか?
「OSが日本語なら日本語で統一すればいいじゃん」と思いがちですが、開発者やパワーユーザーにとって、これには死活問題レベルの超重要理由があります。
💡 開発者が「あえて英語UI」に戻す瞬間
難解なエラーが出たとき、日本語化されたエラーメッセージでGoogle検索しても国内の数件しかヒットしないのに、英語の原文エラーメッセージで検索すると、海外のStack OverflowやGitHub Issueで一瞬で解決策が見つかるからです。「普段の操作は日本語が楽だけど、トラブルシューティングの瞬間だけは英語に切り替えたい!」という切実な現場の叫びがあるんですね。
赤猫座の道具たちも、アクセス元のブラウザ設定(navigator.language)を見て初期表示を自動判定しつつ、ヘッダーには必ず手動で切り替えられる「言語ボタン」を常設しています。機械の自動判定を押し付けるのではなく、「今はこの言語で見たい」というユーザーの自由な意思を邪魔しない設計を意識しています。
| 対象・要素 | 機械翻訳(AI)の得意度 | 推奨される対応アプローチ |
|---|---|---|
| ボタン・UI文言 | ×(文脈不足で誤訳多発) | 一般的なUI英単語を手動で精査して採用 |
| 長文の説明・解説 | ◎(文脈があるため高精度) | 機械翻訳で全体の土台を一気に出力し、手直し |
| プログラム変数入り文章 | △(変数を壊しがち) | プレースホルダーを保護するi18nライブラリを利用 |
| 技術用語・固有名詞 | ○〜△(ブレやすい) | 用語集(辞書)を作って表記揺れを統一 |
結論:AIに下書きさせて、人間がツッコミを入れる
ゼロから全て手作業で多言語化するのは膨大な時間がかかりますが、機械翻訳に100%丸投げするのも地雷原を歩くようなものです。
現在のベストプラクティスは、「AIや機械翻訳に猛スピードでドラフト(下書き)を作ってもらい、人間が『いやそのボタンで掃除はせんやろ!』とツッコミを入れながら仕上げる」という二人三脚スタイル。変な翻訳に一人でクスッと笑いながら微調整するこの作業、結構地味ですが嫌いじゃありません。
