Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
PO ファイルで翻           訳管理               倉澤 望 (鍋太郎)                  @nabetaroPO ファイルで翻訳管理           Powered by Rabbit 0.9.2
自己紹介    ✓ プログラマー    ✓ Debian JP    ✓ 長野ソフトウェアエンジニアグ      ループ (NSEG)                                   1/26PO ファイルで翻訳管理    ...
自己紹介    ✓ Debian JP で文書翻訳        ✓ インストールマニュアル        ✓ po4a, apt, etc    ✓ TortoiseSVN のヘルプ翻訳      (休止)                  ...
ドキュメントの翻訳    ✓ 訳すのは時間がかかる    ✓ でも保守が要らなければ、そん      なにつらくない    ✓ 保守しなければならない      と……?                                    3...
ドキュメントの翻訳保守    ✓ 保守し続けるのは大変    ✓ 終わらない    ✓ 追いつかないと、悲しいことに                                4/26PO ファイルで翻訳管理       Powered b...
悲しいことの例    ✓ 某 Linux ディストリビュー      ションの最新開発版のSSを例      示    ✓ 特定のプロダクトをdisる意図      はありません                                 ...
悲しいことの例 (日本語)                             6/26PO ファイルで翻訳管理    Powered by Rabbit 0.9.2
悲しいことの例 (原文)                               7/26PO ファイルで翻訳管理      Powered by Rabbit 0.9.2
追いつかないと    ✓ 古いままになる    ✓ 最新のプログラムの挙動を説明      していない    ✓ 結果的に「嘘」になる                                      8/26PO ファイルで翻訳管理 ...
翻訳が追いつかないなら    ✓ 原文の方が「嘘」の翻訳より      は、ましじゃないか?    ✓ そんな仕組みはないかな?    ✓ ...                                  9/26PO ファイルで翻訳管...
翻訳が追いつかないなら    ✓ 原文の方が「嘘」の翻訳より      は、ましじゃないか?    ✓ そんな仕組みはないかな?    ✓ ...ある                                10/26PO ファイルで翻訳...
GetText の PO ファイル    ✓ GNU GetText では、未訳の部      分は自動で原文 (msgid) にな      る    ✓ これをドキュメントに応用    ✓ 既存の PO ファイル翻訳支援      ツールが...
ドキュメントの翻訳にPOを      使用するツール    ✓ xml2po (gnome由来)    ✓ po2xml (kde由来)     対象はDocBook(XML)のみ?                               ...
Po4a (Po for anything)    ✓ 各種ドキュメントで po ファ      イルを使用するツール群     http://po4a.alioth.debian.org/                           ...
Po4a (Po for anything)    ✓ ドキュメントから文字列抽出      → po ファイル生成    ✓ poファイルから、ドキュメン      トに翻訳文字列挿入    ✓ 翻訳時に追加内容テキスト挿入    ✓ 上記の...
対応フォーマット       -   dia: 非圧縮 Dia ダイアグラム。       -   docbook: DocBook XML。       -   guide: Gentoo Linux の XML ドキュメントフォーマット。 ...
翻訳のフロー(po化)                                16/26PO ファイルで翻訳管理         Powered by Rabbit 0.9.2
翻訳のフロー(更新)                                   17/26PO ファイルで翻訳管理            Powered by Rabbit 0.9.2
翻訳のフロー(翻訳生成)                            18/26PO ファイルで翻訳管理     Powered by Rabbit 0.9.2
翻訳のフロー    ✓ 以上を、ファイルごとに行う    ✓ めんどくさい    ✓ Makefile 書く?                                   19/26PO ファイルで翻訳管理            Pow...
一括でやる方法    ✓ po4a コマンド    ✓ 設定ファイルで一括処理                                    20/26PO ファイルで翻訳管理             Powered by Rabbit...
po4a コマンドのフロー                            21/26PO ファイルで翻訳管理     Powered by Rabbit 0.9.2
設定ファイルの例        # location of pot and po        [po_directory] po        # Entities need to be present, even if not transl...
設定の基本        [po4a_alias:エイリアス] 形式 オプションなど        [type: 形式] 原文ファイル 生成する翻訳ファイル 追加内容ファイル        ...  ✓ $lang は 各言語コードに展開  ✓...
翻訳の位置    ✓ po_directory で POTファイ      ル、POファイルの位置指定    ✓ 言語コード.po が翻訳対象    ✓ 新言語の追加は POファイルを      置くだけ                    ...
おわりに    ✓ xmlだけじゃない    ✓ 特に manpage には便利    ✓ 問題はなくはないが、今のとこ      ろ使いやすい                                   25/26PO ファイルで翻訳...
おまけ  ✓ xml の階層はプレースホルダと    しておける        #. type: Content of: <refentry><refsect1><para>        #: apt-ftparchive.1.xml:612...
Upcoming SlideShare
Loading in …5
×

PO ファイルで翻訳管理

4,607 views

Published on

変わり続けるドキュメントの翻訳を保守し続けるのは大変です。それをサポートしてくれるツールを紹介します。

Published in: Technology, News & Politics
  • Login to see the comments

PO ファイルで翻訳管理

  1. 1. PO ファイルで翻 訳管理 倉澤 望 (鍋太郎) @nabetaroPO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  2. 2. 自己紹介 ✓ プログラマー ✓ Debian JP ✓ 長野ソフトウェアエンジニアグ ループ (NSEG) 1/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  3. 3. 自己紹介 ✓ Debian JP で文書翻訳 ✓ インストールマニュアル ✓ po4a, apt, etc ✓ TortoiseSVN のヘルプ翻訳 (休止) 2/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  4. 4. ドキュメントの翻訳 ✓ 訳すのは時間がかかる ✓ でも保守が要らなければ、そん なにつらくない ✓ 保守しなければならない と……? 3/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  5. 5. ドキュメントの翻訳保守 ✓ 保守し続けるのは大変 ✓ 終わらない ✓ 追いつかないと、悲しいことに 4/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  6. 6. 悲しいことの例 ✓ 某 Linux ディストリビュー ションの最新開発版のSSを例 示 ✓ 特定のプロダクトをdisる意図 はありません 5/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  7. 7. 悲しいことの例 (日本語) 6/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  8. 8. 悲しいことの例 (原文) 7/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  9. 9. 追いつかないと ✓ 古いままになる ✓ 最新のプログラムの挙動を説明 していない ✓ 結果的に「嘘」になる 8/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  10. 10. 翻訳が追いつかないなら ✓ 原文の方が「嘘」の翻訳より は、ましじゃないか? ✓ そんな仕組みはないかな? ✓ ... 9/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  11. 11. 翻訳が追いつかないなら ✓ 原文の方が「嘘」の翻訳より は、ましじゃないか? ✓ そんな仕組みはないかな? ✓ ...ある 10/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  12. 12. GetText の PO ファイル ✓ GNU GetText では、未訳の部 分は自動で原文 (msgid) にな る ✓ これをドキュメントに応用 ✓ 既存の PO ファイル翻訳支援 ツールが使える 11/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  13. 13. ドキュメントの翻訳にPOを 使用するツール ✓ xml2po (gnome由来) ✓ po2xml (kde由来) 対象はDocBook(XML)のみ? 12/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  14. 14. Po4a (Po for anything) ✓ 各種ドキュメントで po ファ イルを使用するツール群 http://po4a.alioth.debian.org/ 13/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  15. 15. Po4a (Po for anything) ✓ ドキュメントから文字列抽出 → po ファイル生成 ✓ poファイルから、ドキュメン トに翻訳文字列挿入 ✓ 翻訳時に追加内容テキスト挿入 ✓ 上記の複数ファイル一括処理 ✓ etc.PO ファイルで翻訳管理 14/26 Powered by Rabbit 0.9.2
  16. 16. 対応フォーマット - dia: 非圧縮 Dia ダイアグラム。 - docbook: DocBook XML。 - guide: Gentoo Linux の XML ドキュメントフォーマット。 - ini: .INI フォーマット。 - kernelhelp: 各カーネルのコンパイルオプションのヘルプメッセージ。 - latex: LaTeX フォーマット。 - man: 古き良きマニュアルページフォーマット。 - pod: Perl オンラインドキュメントフォーマット。 - sgml: DebianDoc DTD と DocBook DTD。 - texinfo: info ページフォーマット。 - tex: 汎用 TeX ドキュメント (latex が参照)。 - text: シンプルなテキストフォーマット。(fortunes, markdown, asciidoc) - wml: WML ドキュメント。 - xhtml: XHTML ドキュメント。 - xml: 汎用 XML ドキュメント (docbook が参照)。 15/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  17. 17. 翻訳のフロー(po化) 16/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  18. 18. 翻訳のフロー(更新) 17/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  19. 19. 翻訳のフロー(翻訳生成) 18/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  20. 20. 翻訳のフロー ✓ 以上を、ファイルごとに行う ✓ めんどくさい ✓ Makefile 書く? 19/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  21. 21. 一括でやる方法 ✓ po4a コマンド ✓ 設定ファイルで一括処理 20/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  22. 22. po4a コマンドのフロー 21/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  23. 23. 設定ファイルの例 # location of pot and po [po_directory] po # Entities need to be present, even if not translated [po4a_alias:entity] text opt:"-k 0" # define source file and translated file (one file per line) [type: man] apt.8 $lang:$lang/apt.$lang.8 [type: entity] apt.ent $lang:$lang/apt.ent [type: docbook] apt-cache.8.xml $lang:$lang/apt-cache.$lang.8.xml add_$lang:xml.add [type: docbook] apt-cdrom.8.xml $lang:$lang/apt-cdrom.$lang.8.xml add_$lang:xml.add [type: docbook] apt-config.8.xml $lang:$lang/apt-config.$lang.8.xml add_$lang:xml.add 22/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  24. 24. 設定の基本 [po4a_alias:エイリアス] 形式 オプションなど [type: 形式] 原文ファイル 生成する翻訳ファイル 追加内容ファイル ... ✓ $lang は 各言語コードに展開 ✓ エイリアスを設定して、それを 形式として扱う 23/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  25. 25. 翻訳の位置 ✓ po_directory で POTファイ ル、POファイルの位置指定 ✓ 言語コード.po が翻訳対象 ✓ 新言語の追加は POファイルを 置くだけ 24/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  26. 26. おわりに ✓ xmlだけじゃない ✓ 特に manpage には便利 ✓ 問題はなくはないが、今のとこ ろ使いやすい 25/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2
  27. 27. おまけ ✓ xml の階層はプレースホルダと しておける #. type: Content of: <refentry><refsect1><para> #: apt-ftparchive.1.xml:612 msgid "" "To create a compressed Packages file for a directory containing binary " "packages (.deb): <placeholder type="programlisting" id="0"/>" msgstr "" "バイナリパッケージ (.deb) があるディレクトリの Packages ファイルを生成するに" "は、以下のようにします。<placeholder type="programlisting" id="0"/>" 26/26PO ファイルで翻訳管理 Powered by Rabbit 0.9.2

×