メインコンテンツまでスキップ

言語を足す

OpenCLI には十の翻訳が同梱されています:English、简体中文、繁體中文、日本語、한국어、 Español、Português (Brasil)、Français、Deutsch、Русский。

それ以外の言語はファイル一つです —— そして、上のどれかの一句を直すのも同じくファイル一つです。

画面から​

Customize → Language → Add a language file… が .json ファイルを受け取って保管します。 すぐに選択リストに現れます。

手で​

同じファイルを ~/.opencli/locales に、言語の名前で置きます:

~/.opencli/locales/nl.json

どちらの道も書き込む先は同じなので、画面から足したものはあとから手で直せますし、 別のマシンにコピーもできます。

中身​

各項目の左は、画面に現れるとおりの英文、右は代わりに表示するものです:

{
"name": "Nederlands",
"strings": {
"Dispatch": "Verzenden",
"Scheduled tasks": "Geplande taken",
"Runs ({count})": "Uitvoeringen ({count})"
}
}

name は言語の選択リストに出す名前です。省くとファイル名が使われます。 外側の包みなしで、素の対応表だけでも動きます:

{ "Dispatch": "Verzenden" }

同梱の一つから始める​

同梱の翻訳は同じ種類のファイルで、 web/src/locales/ にあります。一つコピーして各行の右側を置き換えれば、 探して回る文のリストではなく完成した出発点が手に入ります。

画面が使うすべての文を見るには:

python3 scripts/i18n-check.py

プレースホルダー​

文中の {name} は埋められます。同じプレースホルダーを、あなたの言語が望む順で残してください —— その並べ替えこそ、それらが存在する理由の大半です:

{ "Allowed {count} of {total}": "{total} 件のうち {count} 件を許可" }

複数形​

plural() は二つの形のあいだで選びます。英語、ドイツ語、スペイン語、フランス語、 ポルトガル語にはそれで足ります。ロシア語が 2〜4 に求める三つ目の形はありません。 二つより多くの形が必要な言語では、数字自身に意味を担わせる書き方にしてください —— それに一致しなければならない名詞ではなく、запусков: {count} のように。

中国語・日本語・韓国語は単数形を取り、数字に仕事をさせます。 これは処理済みです。

同梱の翻訳を直す​

すでに同梱されている言語の名前をつけたファイルは、置き換えではなくそこに合流します。 一句だけ変えたいなら、一項目だけ書きます:

{ "Dispatch": "派遣" }

残りは同梱の言い回しのままです。

いつ効くか​

画面から足したファイルはすぐに効きます。手でディレクトリに置いたものは、 窓が接続してきたときに読まれるので、窓を開き直してください。 解析できないファイルは飛ばされ、ゲートウェイのログに一行残ります —— 他の言語には影響しません。

訳していない文​

対応する項目のない文は英語で表示されます。ですから訳しかけの翻訳は、 真っ白な画面ではなく混ざった状態として読めます。役に立つのに、訳し終える必要はありません。

右から左へ​

アラビア語、ヘブライ語、ペルシア語は同梱されておらず、それらをファイルとして足しても、 ページは左から右に並んだままです。画面にはまだ dir="rtl" の処理がありません。 それは翻訳ファイルではなくスタイルシートの変更です。