Download presentation
Presentation is loading. Please wait.
1
14:00 ~ OSS の翻訳をやらないか (Doc-ja Archive Project)
資料 (3種) を 一部ずつ お取りください
2
同じ時間に ちゃんおぷ! とか
3
翻訳 やろうず
4
翻訳にもいろいろ ドキュメント翻訳 man とか オンラインヘルプとか web ページとか リリースノートとか いろいろ
UI (ユーザーインターフェース) 翻訳
5
今日やるのは UI 翻訳
8
OSS つーか 自由ソフトウェアの いいところ
9
自由に いじれる
11
成果を 共有できる
12
引っかかったら バグ報告
13
超じゅーよー
14
i18n とか L10n とか m17n とか
15
[英]internationalisation [米]internationalization i と n の間に 18 文字
16
いまどきの アプリは だいたい i18n 対応
17
プログラム 本体と 翻訳が 分離されている
18
printf("MatsuyaNow\n");
分離されていないと…… printf("MatsuyaNow\n"); ↓コードを直接書き換え printf("松屋なう\n");
19
分離されていないと…… プログラミングできない人は翻訳しづらい 原文更新時の追従作業で死ねる 「○○語版」はオリジナルと別物になる
20
printf(_("MatsuyaNow\n"));
メッセージ分離 printf(_("MatsuyaNow\n"));
21
printf(gettext("MatsuyaNow\n"));
22
メッセージカタログ msgid "MatsuyaNow\n" msgstr "松屋なう\n" msgid "Aznyan prpr"
23
gettext という 枠組み
24
gettext 以外にもあり
25
メッセージ分離 という 基本は同じ
26
何を翻訳すればいい? 自分がよく使っているソフト 自分が関心があるソフト 自分が知っている分野の何か ……
27
知らないものを 訳すのは 危険
28
使っていない ソフトを 訳すのも 危険
29
GNOME Mahjongg
30
GNOME 上海
31
"Moves Left" の訳
32
msgid "Moves Left:" msgstr "取れる牌の組:"
メッセージカタログ msgid "Moves Left:" msgstr "取れる牌の組:"
33
msgid "Moves Left:" msgstr "左へ移動:"
字面だけ見て訳すと…… msgid "Moves Left:" msgstr "左へ移動:"
34
わけがわからないよ
35
文脈により 訳し分けが 必要
36
例: Open File(s)
37
gedit のタイトル「ファイルを開く」
38
Anjuta のヘルプ「ファイルを開きます」
39
GNOME システムモニター 「オープンしたファイル」
40
どこで翻訳すればいい? 翻訳プロジェクトは星の数ほどある Linux ディストロはいろんなソフトの寄せ集め 翻訳も寄せ集め 上流がある
上流への還元が超じゅーよー
41
実演
42
場所は Ubuntu と同じ Launchpad
43
Synaptic パッケージ マネージャー
44
よく考えたら Ubuntu に Synaptic #おらんかった
46
未訳: Education
49
誤訳というか誤字というか
50
#なごやこわい(名古屋関数型クラスタ) Ocamlって書いてしまうと、だいた い正座で72時間ぶっつづけで #なご やこわい の人達に型で殴られ続け られるという認識である。(ただ しくはOCaml [うさみみ*´×`*エ ンジニア]
51
直さねば!
52
修正前 #. TRANSLATORS: Alias for the Debian package section "education"
#: ../common/sections_trans.cc:126 msgid "Education" msgstr "" #. TRANSLATORS: Alias for the Debian package section "ocaml" #: ../common/sections_trans.cc:78 msgid "OCaml Programming Language" msgstr "Ocaml プログラミング言語"
53
修正後 #. TRANSLATORS: Alias for the Debian package section "education"
#: ../common/sections_trans.cc:126 msgid "Education" msgstr "教育" #. TRANSLATORS: Alias for the Debian package section "ocaml" #: ../common/sections_trans.cc:78 msgid "OCaml Programming Language" msgstr "OCaml プログラミング言語"
54
直ったことを確認 % msgfmt po_synaptic-ja.po \ -o synaptic.mo
# cp synaptic.mo \ /usr/share/locale/ja/LC_MESSAGES/
55
OK, 直った
56
取り込んでもらおう 上流へ還元は基本 まずは Launchpad へ Synaptic 本家は残念な状態なので、LP だけ?
57
プロジェクトにより様々 コードと似た感じで メーリングリストに投稿 バグ追跡システムに報告 作者個人に送りつける
分散型 VCS で pull request 翻訳用の web システムで pootle transifex launchpad …… などなど
58
Launchpad 翻訳以外にもいろいろできる開発プラット フォーム Ubuntu でも使ってる てゆーか Canonical が作った
59
Launchpad Translations
60
Ubuntu の翻訳は…… リリースごとにおこなわれる アニキが ubuntu-jp ML で呼びかけ 作業は Launchpad で
誰でも提案できる 採用権限持ちが約30人 セルフ採用は原則禁止 (他人に査読してもら う) wiki.ubuntulinux.jp にリリースごとのページ 翻訳状況、査読依頼、問題報告等
61
この顔にピンときたら…… うぶんつ翻訳組 最高幹部 マーボーブラック アニキ
62
この顔にピンときたら…… うぶんつ翻訳組 最高幹部 マーボーブラック アニキ おらんかった
63
この顔にピンときたら…… うぶんつ翻訳組 組員達 ジローさん ぽぽぽぽーん
64
顔じゃないし
65
今日頼むのは、これ うぶんつ翻訳組 組員 ミズノさん Emacs 派 たけのこ派
66
po を何で編集するか 単なるテキストファイル テキストエディターなら何でもいいはず Unix 標準のエディターは ed vi でもいい?
67
vi いいよね!
68
終了の仕方が わからない罠
69
vim ェ……
70
Emacs いいよね!
71
終了の仕方が わからない罠
72
GUI な po エディターも
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.