More Related Content Similar to CUPS 1.6 translation secrets (17) More from Naruhiko Ogasawara (20) CUPS 1.6 translation secrets2. CUPS について
知らん奴おらんよね?
Unix 系 OS の標準印刷システム
Common Unix Printing System
バージョン 1.5 から単なる CUPS に改名
開発 Michael Sweet
Owned by Apple Inc
OS X にて標準に採用 1/19
3. CUPS 1.5 のとき
アントニオ(仮名)
やあマイク、1.5 の RC リリースおめでと
う。ところで翻訳はいつものようにやれば
いいのかい?
マイケル
サンキュー、アントニオ(仮名)、でも翻訳は
俺達(= Apple)でやるから大丈夫さ(キリッ
2/19
5. さて 1.6 のβリリース
あれ、翻訳ばっさり捨てられてな
い??
バグレポ「ねえねえ、翻訳がないの
はどうして?」
Mike 曰く「ああ、1.5 で大きく変更
したから一旦捨てたんだ。いつもの
ようにコミュニティベースでやるから
よろしく!」
4/19
7. それはともかく
CUPS は Apple の持ち物
コードのコミットには Apple
Contributers Agreement へのサインが
必要
翻訳にもサインいるの?
ストリングフリーズはいつ?
6/19
8. 確認してみた
翻訳は OS X には同梱しないから、
ACA のサインは要らないよ
β1の時点でストリングはフリーズし
てるよ
んじゃ、やりますか!
7/19
10. CUPS の翻訳対象
Web UI のテンプレ
HTML ほぼそのもの
コマンドラインツールの po
gettext が独自実装なのでプレースホル
ダーとかありません
man とドキュメントは対象になって
ません
man は JM 側で頑張ってますよ!
9/19
11. まずはマージしてみた
1.4 系の最新 1.4.8 をいただき
あれ、この po バグってるじゃん……(引用
符閉じ忘れ)
見なかったことにしてさくさく直す
さてとどんなもんかな?
$ msgfmt --statistics -c -v -o /dev/null cups_ja.po
cups_ja.po: 519 個の翻訳メッセージ, 769 個の翻訳があいまいです, 199 個の未訳のメッセージ.
…… fuzzy 多くね? 10/19
13. もう一つ罠が
1.4 のコード:
_cupsLangPuts(stderr,
_("NOTICE: Print file accepted - job ID unknown.n"));
~~~~~~ 翻訳不能文字列
1.6 のコード:
_cupsLangPrintFilter(stderr, "INFO", // <- 翻訳対象外になった
_("Print file accepted - job ID unknown."));
12/19
15. 簡単じゃない…… orz
fuzzy 膨大すぎて、間違ってマージ
された奴をスルーしちゃったり
だいたい紛らわしいメッセージ多す
ぎなんですよ CUPS たん……
@okano_t さんの超絶レビューに
非常に助けられました
感謝感謝!
14/19
16. あれれ?
テストしてたら変なの発見
$ cupstestppd
Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]
program | cupstestppd [options] -
Project-Id-Version: CUPS 1.4 ---------------------------------+----- なにこれ?
Report-Msgid-Bugs-To: http://www.cups.org/str.php |
POT-Creation-Date: 2012-03-07 13:38-0800 |
PO-Revision-Date: 2009-02-20 16:43+0900 |
Last-Translator: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp> |
Language-Team: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp> |
MIME-Version: 1.0 |
Content-Type: text/plain; charset=UTF-8 |
Content-Transfer-Encoding: 8bit |
Language: -----------------------------------------------------+
15/19
17. まてまて?
$ LANG=C cupstestppd
Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]
program | cupstestppd [options] -
Options:
これってもしかして、"" のときも po
引いてない?
なんでだれも気づかなかったんだ
ろう……orz
レポートして直してもらいました 16/19
20. まとめ
「1.4 から取り込むだけだろ?」と舐
めてたらすげー辛かった
実働1週間ぐらいかなー
実は現時点で翻訳が入ってるのは
二言語だけ! なんか嬉しい!
1.7 以降はもっと楽なはず(といいな)
次はできればオンラインドキュメント
を翻訳したいですなー 19/19