翻訳の仕事は、専用に作られた形式よりも、表として届くことのほうがはるかに多いものです。キーの列、原文の言語、対象言語ごとの列、そして翻訳ではまったくない列がいくつか。
これは理にかなった形式です。メールで送っても壊れず、どこでも開け、翻訳者はアカウントを作らずに使えます。できないのは、どの列が何を意味するのかを理解することであり、面倒はそこから始まります。
ファイルの形
列の種類は 5 つで、だいたいこの順に並びます。
- キー — ソフトウェアがその文字列を探すための識別子です。
checkout_button_labelのようなもの、あるいは数値。この列は人が読むための文章ではなく、無傷で生き延びなければなりません。 - 原文の言語 — 翻訳者が読み取る元です。たいていは英語で、翻訳者が編集するものではありません。ここに手が入ると、ほかのすべての列との対応が黙って崩れます。
- 対象言語 — ロケールごとに 1 列。いま埋められつつある列です。
- コメント — 開発側の注記、翻訳者からの質問、その回答。文字列そのものではなく、文字列についての文章です。
- メタデータ — 状態、画面名、文字数制限、その文字列がどのファイル由来か。
最後の 2 つと対象言語との区別こそ、表計算ソフトが自力ではできないことであり、そして最も重要なことです。
言語の列をどう見分けるか
見出しから見分けます。そして見出しは、予測できる形で不揃いです。素の ISO コードしか受け付けないツールは、現実のファイルのほとんどを取りこぼします。
扱うべき系統は 3 つあります。素のコード — en、es、ja — が簡単な場合です。地域つきの変種 — pt-BR、zh-Hans、es-419 — は区切り記号のあとに文字体系や地域を伴っており、この接尾辞を落とせば、ブラジルのポルトガル語とヨーロッパのポルトガル語が、そのどちらでもない 1 つの列に混ざります。綴られた言語名 — Spanish、日本語 — は、パーサーではなく人に向けて用意されたファイルには必ず現れます。
そのうえ、見出しは装飾をまとって届きます。[EN]、text_en、en (US)、EN_translation。どれも同じ言語が違う服を着ているだけであり、唯一うまくいくやり方は、判断する前に装飾を剝いでコードに戻すことです。
このサイトのエディタは、綴られた言語名について、アクセント記号のある形とない形も同一視します。Japonés と書かれた見出しと Japones と書かれた見出しは同じ列であって、丁寧に打たれたのはそのうち片方だけだからです。
翻訳ではない列
コメントの列が、編集できる翻訳セルとして表示されるのは、無益を通り越して有害です。読まれるために書かれた注記を翻訳するよう誘いますし、本来まったく関係のない進捗の数字にも数え上げられます。
コメントを示す見出しの語は、どの言語でも短い一覧に収まります。日本語ならコメント、備考、メモ、注記、補足、指示、返答。英語なら comment、note、remark、context、instruction、feedback、reply。英語の語しか見ないツールは、日本語のやりとりが入った 3 つの列を、未翻訳の文字列として扱ってしまいます。
もう 1 つの群がメタデータです。id、status、screen、file、maxlength、limit、そして画面や文字数。これらは見えている必要があります。文字数制限は、翻訳者がまさに見たいものだからです。ただし、これらは片づけるべき仕事ではありません。
ここを取り違えると、そのあとに計算する数字がすべて一緒に狂います。3 つの「言語」がコメント列であるファイルが「60% 翻訳済み」と出たところで、何も分かりません。
表計算ソフトが不利に働くところ
具体的な失敗が 4 つあり、どれもよくあります。
キーの列が壊される。 キーはデータに見えるだけの姿をしているので、Excel はそれを変換します。先頭のゼロが消え、MAR1 が日付になる。ソフトウェアはその文字列を見つけられなくなり、正しく行われた翻訳のほうが、もう一致しなくなったキーの陰で失われます。
進捗が見えない。 表計算ソフトは、ある列に空でないセルが 1,200 個あることは教えてくれます。そのうち 300 個がいまだに英語の原文のままであることは教えてくれません。それは翻訳済みとは違います。
安全なマージがない。 2 人の翻訳者が 2 つの複製で作業すれば、ファイルは 2 つになり、突き合わせは手作業です。プロジェクトが一定の規模を超えたら本物のローカライズ基盤へ移るべきだという、最も強い論拠がこれです。
文字コードが飛ぶ。 日本語と韓国語とアクセント付きのラテン文字が同居するファイルは、正しい文字コードなしに開いたときに文字化けする、まさにそのファイルです。しかもキーと違って、壊れた文章は、読めない言語の中では自分から名乗り出てくれません。
生き延びるための取り決め
手元にあるのが表だという前提でも、いくつかの判断で痛みのほとんどは取り除けます。
- キーを先頭に置き、それ以外で並べ替えないこと。 翻訳の表を対象言語で並べ替えると、下流のどこかが順序を前提にしていた場合、行とキーの対応が崩れます。
- 言語の列は、名前ではなくコードで名付けること。
pt-BRに疑いの余地はありません。ポルトガル語は問いです。 - コメントは、はっきりそれと分かる名前の列に置き、翻訳と同じ列には決して入れないこと。
- 文字コードと改行コードを一度合意して、以後は毎回同じ設定で書き出すこと。全体を UTF-8 にし、BOM は本当に誰かが Excel で開く場合にだけ付けます。
- 中身が文章なら、CSV ではなく TSV を送ること。 訳文はカンマだらけで、タブはめったに含みません。区切り文字が邪魔をしなくなります。この取引については TSV と CSV で扱っています。
ここでやる場合
このサイトのエディタは、開いた時点でこの形を認識します。見出しを見て、どの列が言語で、どれが原文で、どれがコメントやメタデータなのかを割り出します。キーと、少なくとも 2 つの言語列が見つかると、その構成を前提にした翻訳モードに切り替わります。
原文の列は読み取り専用になります。翻訳者が読み取る元を編集することは、まず意図されていないからです。コメントの列は、埋めるべきセルではなく、行に添えられたメモとして表示されます。進捗は言語ごとに報告され、何をもって翻訳済みとするかは、答えが 1 つではない問いです。
アップロードはありません。ファイルを読み書きしているのはあなたのブラウザで、内容の置き場所について取り決めのある翻訳の受け渡しにおいて、それは小さな違いではありません。この翻訳モードでできることの残りは、TSV・CSV の翻訳ファイル編集エディタのページにあります。