» L10N (製品日本語化)

ターゲットリファレンス

主なターゲットの一覧と用途の簡単な説明をします。

このページの情報が古い場合、ant -p コマンドで最新のターゲット一覧を確認してください。

fortrunk (forcentral) などと括弧付けで書かれているターゲット名は Alias であり、どちらを実行しても結果は同じです。

apply-filters

フィルタの定義に従い src ファイルの @@name@@ トークンを置換し、l10n ディレクトリに出力します

auto

以降のターゲットではファイル削除などの確認をしないようにする

build

src ファイルにフィルタを適用して l10n ファイルを生成、それを元に xpi パッケージを生成します

charcheck

l10n ファイル中の使用禁止文字列のエラーチェックを行います
${nocharcheck} プロパティを設定するとスキップされます

check

l10n ファイルの各種エラーチェック (errorcheck) と en-US ファイルとの比較 (compare) を行います

clean

temp ディレクトリの一時ファイルを削除します

clone-all

各ブランチの comm, mozilla, mobile, l10n すべての hg リポジトリを clone します

clone-comm

hg.mozilla.org から comm hg リポジトリを clone します
${targetbranch} プロパティで指定したブランチのリポジトリが対象になります

clone-locale

hg.mozilla.org から l10n hg リポジトリを clone します
${targetbranch} で指定したブランチの ${locale} で指定したロケールが対象になります

clone-mobile

hg.mozilla.org から mobile-browser hg リポジトリを clone します
${targetbranch} プロパティで指定したブランチのリポジトリが対象になります
Firefox 5.0 以降は mobile のレポジトリは mozilla レポジトリに取り込まれたので不要です

clone-mozilla

hg.mozilla.org から mozilla hg リポジトリを clone します
${targetbranch} プロパティで指定したブランチのリポジトリが対象になります

clone-src

google code から mozja レポジトリを clone します。
${targetbranch} プロパティで指定したブランチに hg up もされます。

comm-to-l10n

comm リポジトリの clone から英語の言語リソースファイルを抜き出して l10n/${targetbranch}/en-US にコピーします

commoncheck

syntax/placeholder/plural エラーチェックを行います

commoncheck-eachapp

commoncheck をアプリケーション毎に分けて行います

compare

l10n/${targetbranch}/en-US ファイルと l10n/${targetbranch}/${locale} ファイルのエンティティ過不足を確認します

compare-eachapp

compare をアプリケーション毎に分けて行います

convert

src ファイルにフィルタの適用 (apply-filter) や書き換え (modify) をして l10n ファイルを生成します

diff

make patch file to send it as a feedback

diff-download-revisions

ftp サーバから ${diff.download.rev1} と ${diff.download.rev2} で指定した 2 つの英語言語リソース zip ファイルを取得し、その差分を出力します。

指定できるリビジョン番号はサーバにあるものだけになりますので、サーバにあるファイル名の en-US-rev[…].zip を確認して指定してください。hg コマンドが使える環境では、自由に changeset を指定できる diff-revisions ターゲットを使ってください。

diff-revisions

hg レポジトリから ${diff.mozilla.rev1}, ${diff.comm.rev1} と ${diff.mozilla.rev2}, ${diff.comm.rev2}  で指定した 2 つの changeset の英語リソースファイルを取得し、その差分を出力します。

hg.mozilla.org のリビジョン番号とローカルに clone 済みのリビジョン番号は異なる可能性があるため、原則として番号ではなく changeset id で指定してください。

download-en-US

ftp サーバから最新の英語リソースファイルをダウンロードして、l10n/${targetbranch}/en-US ディレクトリに展開します。

errorcheck

syntax/placeholder/plural/word/suspectedword/char エラーチェックを行います
特定アプリケーションのファイルだけを対象に行いたい場合は先に onlyfirefox などのターゲットを指定すること

escape

escape *.properties files and copy other files

for191 (for1.9.1)

以降のターゲットでは targetbranch=1.9.1 とする

for192 (for1.9.2)

以降のターゲットでは targetbranch=1.9.2 とする

for20 (for2.0)

以降のターゲットでは targetbranch=2.0 とする

foraurora

以降のターゲットでは targetbranch=aurora とする

fortbeta

以降のターゲットでは targetbranch=beta とする

fortrunk (forcentral)

以降のターゲットでは targetbranch=trunk とする

genconf

generate use/locale specific user config file

help

show usage help (古すぎます)

imedic

generate IME dictionary for filters (未実装)

includeall

以降のターゲットでは全てのファイルを対象とする

insertnew

l10n/${targetbranch}/en-US ファイルと l10n/${targetbranch}/${locale} ファイルを比較し、前者に存在するが後者に存在しないファイルおよびエンティティをマージします

merge ターゲットと異なり、後者に存在するが前者に存在しない Obsolate なファイルおよびエンティティの削除は行いません

比較するファイルのディレクトリは ${merge.dir1} と ${merge.dir2} プロパティで指定できます

jar

src ファイルを元に xpi ファイルに含める jar ファイルを生成する

merge

l10n/${targetbranch}/en-US ファイルと l10n/${targetbranch}/${locale} ファイルを比較し、前者に合わせて新しいファイルやエンティティを追加、古いものは削除します

比較するファイルのディレクトリは ${merge.dir1} と ${merge.dir2} プロパティで指定できます

merge-onlyaccesskey

l10n/${targetbranch}/en-US ファイルと l10n/${targetbranch}/${locale} ファイルをのアクセスキー定義を比較し、前者に合わせて新しいアクセスキー定義を追加、古いものは削除します

merge-onlyfile

l10n/${targetbranch}/en-US ファイルと l10n/${targetbranch}/${locale} ファイルを比較し、前者に合わせて新しいファイル追加、古いものは削除します

比較するファイルのディレクトリは ${merge.dir1} と ${merge.dir2} プロパティで指定できます

mobile-to-l10n

mobile-browser リポジトリの clone から英語の言語リソースファイルを抜き出して l10n/${targetbranch}/en-US にコピーします

modify

フィルタ適用後の l10n ファイルの書き換え処理を行う

mozilla-to-l10n

mozilla リポジトリの clone から英語の言語リソースファイルを抜き出して l10n/${targetbranch}/en-US にコピーします

newlocale

l10n/${targetbranch}/en-US ファイルを l10n/${targetbranch}/${locale} にコピーします

nocompare

以降のターゲットでは言語リソース比較 (compare) を行わない

noerrorcheck

以降のターゲットではエラーチェックを行わない

onlycommon

以降のターゲットではアプリ共通の Toolkit ファイルだけを対象とする

onlyfennec (onlyfe)

以降のターゲットでは Fennec 用ファイルだけを対象とする

onlyfirefox (onlyfx)

以降のターゲットでは Firefox 用ファイルだけを対象とする

onlyseamonkey (onlysm)

以降のターゲットでは Seamonkey 用ファイルだけを対象とする

onlysunbird (onlysb)

以降のターゲットでは Sunbird 用ファイルだけを対象とする

onlythunderbird (onlytb)

以降のターゲットでは Thunderbird 用ファイルだけを対象とする

other-to-l10n

copy en-US locale files from other cvs/svn repository to l10n directory

pack

l10n ファイルを元に jar ファイルを生成し(jar)、dest/${targetbranch}/langpack ディレクトリに言語パックを作成 (xpi) します。

make xpi package from converted src files

patch

apply patch file to src locale files

patch-dry

test patch file without any actual changes

placeholdercheck

l10n ファイル中のプレースホルダ変数チェックを行います
${noplaceholdercheck} プロパティを設定するとスキップされます

pluralcheck

l10n ファイル中の Plural Form (複数形書式)チェックを行います
${nopluralcheck} プロパティを設定するとスキップされます

pre-commit-hg

hg status check before commit

pull-all

各ブランチの comm, mozilla, mobile, l10n すべての hg リポジトリから pull します

pull-comm

hg.mozilla.org の comm hg リポジトリから pull します
${targetbranch} プロパティで指定したブランチのリポジトリが対象になります

pull-locale

hg.mozilla.org の l10n hg リポジトリから pull します
${targetbranch} で指定したブランチの ${locale} で指定したロケールが対象になります

pull-mobile

hg.mozilla.org の mobile-browser hg リポジトリから pull します
${targetbranch} プロパティで指定したブランチのリポジトリが対象になります

pull-mozilla

hg.mozilla.org の mozilla hg リポジトリから pull します
${targetbranch} プロパティで指定したブランチのリポジトリが対象になります

pull-src

google code の mozja レポジトリから pull します
${targetbranch} プロパティで指定したブランチリのポジトリが対象になります

repo-to-l10n (get-en-US)

各 hg リポジトリの clone から英語の言語リソースファイルを抜き出して l10n/${targetbranch}/en-US にコピーします

resetaccesskey

l10n/${targetbranch}/en-US ファイルと l10n/${targetbranch}/${locale} ファイルをのアクセスキー定義を比較し、前者に合わせて後者のアクセスキーを書き換えます

比較するファイルのディレクトリは ${merge.dir1} と ${merge.dir2} プロパティで指定できます

setupl10n

基本的な設定を書き込んだ config/user.conf ファイルを生成し (genconf)、l10n/${targetbranch}/en-US ファイルの取得 (download-en-US)、hg.mozilla.org から l10n/${targetbranch}/ja および l10n/${targetbranch}/ja-JP-mac に l10n リポジトリを clone (clone-locale)、l10n svn から src/${targetbranch} にリポジトリを checkout します (checkout-src)。

setupnewl10n

generate config file and get en-US files for your new locale

syntaxcheck

l10n ファイルの構文チェックを行います
${nosyntaxcheck} プロパティを設定するとスキップされます

unescape

unescape *.properties files and copy other files

update

l10n svn から最新の src ファイルを取得し (update-src)、lot 環境の更新 (update-lot) も行います

update-src

l10n svn から最新の src ファイルを取得します。
${targetbranch} プロパティで指定したブランチのリポジトリが対象になります

wordcheck

l10n ファイル中の用語(使用禁止文字列)チェックを行います
${nowordcheck} プロパティを設定するとスキップされます

xpi

jar ファイルおよび src/langpack ディレクトリのファイルから xpi パッケージを生成します

日本語 L10N 関連ツール

日本語 L10N で使用する各種のツールの使い方や注意点などを解説します。

Localization Tools (lot)

日本語 L10N に関する作業の殆どはテキストエディタと Localization Tools (lot) というスクリプトで行います。フィードバックやレビューをするだけでなく日本語版の更新や同期などを行っていただく際には lot をご利用ください。

Mercurial (hg)

Mozilla で採用している分散リポジトリ型のバージョン管理システム Mercurial (HG) について。

取りあえず MDC のドキュメントをご覧ください。

より詳しくは hgbook をご覧ください。

その他のドキュメントやバイナリビルドのダウンロードは Mercurial のサイトから。

読んでも分からないことは誰かに聞きましょう。なお、Mercurial は単体でインストールするより Cygwin, Macports などでのインストールを推奨します。

その他の関連ツール

Localization Tools 以外に使用するツールについて。

ドキュメント

日本語版の作り方

Mozilla のアプリケーションがどのように多言語対応しているか、そしてその日本語版の作成、更新を行う手順などを解説しています。

日本語化の作業環境について

実際に日本語化作業を行う上で必要となる環境や、使用するツールを説明しています。

ガイドライン

L10N する上でのガイドラインや用語集などを用意しています。

その他のドキュメント

アカウントを取得するには

このページでは Mozilla 日本語 L10N に関するアカウントについて説明します。

Google Code アカウント

Mozilla アプリケーションの日本語リソースは Google Code の mozja プロジェクトで管理されています。

Google Code 上で Issue の登録やコメントなどを行うには Google アカウントでログインしてください。

日本語版を一緒に作成していってくださる方には書き込み権限を付与しますので、何らかの方法で dynamis, mar, hATrayflood のいずれかにコンタクトしてご相談ください。

L10N HG アカウント

TODO: US の hg.mozilla.org アカウントについてここに書く。

当面は必要な方についてそれぞれ個別にご案内します。
必要なときは既存のアカウント所有者にお問い合わせください。

その他

ここで以前説明していた L10N SVN および Trac については Google Code への移行に伴い廃止されたため、アカウントも不要になりました。

Localization Tools

Mozilla アプリケーションの L10N (日本語化) 作業のために必要な、スクリプトなどをひとまとめにしたものを Localization Tools (通称 lot) と呼んでいます。

日本語版の共通言語リソースから Windows/Linux 用の ja ロケールと Mac 用の ja-JP-mac ロケールのリソースを自動生成したり、言語リソースファイルの構文チェック、用語チェック、文字チェック、英語リソースとの比較、マージ、テスト用言語パック作成などのために、この lot を使用します。

ダウンロード

言語リソースと一緒に Google Code で管理しており、次のコマンドで取得できます。

hg clone https://code.google.com/p/mozja.lot/ lot

あるいは、FTP サイト にも zip したものがあります(ファイル名の revXXX は対応する SVN リビジョン)。

動作環境

lot は主に Apache Ant のスクリプトと、Groovy スクリプトで書かれています。Groovy の実行に必要なライブラリなどは lot に同梱されているため、Ant の動作要件さえ満たす環境であれば利用できます。

但し、一部処理では diff, hg, python などの外部コマンドを呼び出すため、作業内容に応じて必要なコマンドを揃えてください。

  • JDK 1.5 以降 + Apache Ant 1.8 以降 (必須)
  • Mercurial (hg)
  • Python
  • diff

Windows では MozillaBuild 環境を推奨します。MozillaBuild 環境をインストールすると JDK + Ant 以外すべて揃います。Cygwin や MinGW などで用意しても構いません。Ant を使うにはシステム環境変数に JAVA_HOME, ANT_HOME, PATH の設定が必要になります。JAVA_HOME は “C:¥Program Files¥Java¥jdk1.7.0″ など、ANT_HOME は Ant の zip を展開したディレクトリ、PATH の末尾には “;%ANT_HOME¥bin” を追加してください。

ディレクトリ構成

  • antlib
    • Ant の機能を拡張するための jar ファイルを同梱しています
  • config
    • lot の動作を制御するプロパティ設定ファイルを収めるディレクトリ
    • langpack.conf
      • 言語パック関連の設定を制御するファイル
    • lot.conf
      • lot 全体の設定を制御する設定ファイル
    • user.conf (optional)
      • デフォルト設定を上書きするユーザ設定ファイル
  • dest
    • 言語パックなど生成したものが出力されるディレクトリ
  • hg (optional)
    • Mozilla の Mercurial リポジトリを clone するディレクトリ
    • 別ディレクトリのものを参照したい場合は user.conf で lot.hg.dir に mozilla-aurora, comm-aurora の親ディレクトリを設定してください。
  • l10n
    • 各ブランチの en-US および ja/ja-JP-mac 切り分け後の言語リソースを収めるディレクトリ
    • note: ant setupl10n または個別に ant clone-locale を実行するとそうなるように、この下のディレクトリを l10n hg の clone にしておくと作業しやすくなります
  • log
    • エラーチェックで見つかったエラーや言語リソース比較結果をログファイルに出力します
  • res
    • lot で出力するメッセージの定義ファイルや user.conf のテンプレートなど
    • const.conf
      • 通常カスタマイズされることのない、定数値を定義するファイル
  • src
    • ja/ja-JP-mac 切り分け (ant convert) 前の言語リソースファイルなど
    • langpack
      • 言語リソース以外に、言語パック生成に必要なファイル
    • trunk, beta, 1.9.1, 1.9.2, 2.0
      • mozja レポジトリの言語リソースファイルを配置するディレクトリ
      • Nightly 対応はしておらず trunk が Aurora 対応ブランチになるので注意

lot のターゲットとディレクトリの関係図 (odg ファイル)

基本的な使い方

一般的な Ant ビルドスクリプト同様に、以下の構文で実行します。

ant target1 target2 -Dproperty1=value1 -Dproperty2=value2

  • target — ターゲットと呼ばれる、ビルドスクリプトで定義した処理名。複数書けば書いた順番に処理される。
  • -Dproperty=value — プロパティと呼ばれる、ビルドスクリプトで使用する変数の名前と値を -D オプションで指定できます。

コマンド実行例:

ant convert

src/trunk/ja ディレクトリの日本語共通ファイルを元に l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリに Windows/Unix 用と Mac 用のファイルを生成する。

ant auto convert

上書き確認などをせず全自動で l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリのファイルを生成する。

ant auto noerrorcheck nocompare convert

上書き確認も構文などのエラーチェックも英語との比較もせずに l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリのファイルを生成する。

ant compare

l10n/aurora/en-US ディレクトリの英語ファイルと l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリの日本語ファイルを比較してエンティティの過不足や重複、アクセスキーの違いなどを確認する。

ant merge

l10n/aurora/en-US ディレクトリの英語ファイルと l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリの日本語ファイルを比較してファイルとエンティティの過不足を自動マージする。

ant insertnew

l10n/aurora/en-US ディレクトリの英語ファイルと l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリの日本語ファイルを比較して足りないファイルとエンティティを自動マージする。日本語ファイルだけにあるエンティティは残されるため、Nightly ビルド用の言語パック生成時にはこちらが便利。

ant auto pack

l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリのファイルを元に Firefox の言語パックを dest/aurora/langpack ディレクトリに作成する。

ant auto pack -Dtargetapp=fennec

Fennec (Mobile Firefox) の言語パックを生成する。

ant auto convert insertnew pack

足りないファイルとエンティティを英語ファイルからを日本語ファイルにマージした言語パックを生成する。

ant auto buildfx

src/l10n/trunk/ja ディレクトリのファイルを元に l10n/aurora/ja, l10n/aurora/ja-JP-mac ディレクトリに Windows/Unix 用と Mac 用のファイルを生成し、更に Firefox の言語パックを dest/aurora/langpack ディレクトリに作成する。

このコマンドは ant auto clean convert pack と(ほぼ)同じ。

ant auto buildfe

同様に Fennec の言語パックを作成する。

ant update-lot

Localization Tools を最新版に更新する。但し、事前に src/l10n/trunk/ に mozja リポジトリを clone しておく必要があります。

実際の L10N 作業手順については作業ごとの手順解説ページを参照してください:

その他の利用方法については ant help コマンドで出力されるヘルプ、ant -p コマンドで出力されるターゲット一覧、ant examples コマンドで出力されるコマンド例などを参照して、色々試してみてください。

毎回 -D オプションでプロパティを指定するのが面倒な場合は config/lot.conf や config/langpack.conf ファイルに書かれている初期設定値を書き換えてください。これらのファイルは update-lot 実行時には上書きされてしまうので、それを避けたい場合は config/user.conf を作成してそのファイル中で指定してください。

リファレンス

主要なターゲットやプロパティについては、リファレンスページで説明しています

困ったときは

よくある質問については Localization Tools – FAQ ページ にまとめています。

フィードバックするには

日本語版を使っていてお気づきの点があれば、L10N フォーラム (ユーザ登録不要) にお知らせください。

Firefox, Thunderbird などアプリケーション毎のフォーラムがあるので、お使いのアプリケーションに応じたフォーラムに書き込んでください。バージョンや OS などのご利用環境なども併記していただけると助かりますが、何についてのことか分かれば十分なので、書式に拘らず気軽にコメントしてください

基本的にはフォーラムでのフィードバックを推奨していますが、Github などでもフィードバックできます。

もっと積極的に参加していただける方は、以下のページを参照してください: