Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Free Software Localization
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
趙惟倫
August 03, 2006
How-to & DIY
130
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Free Software Localization
自由軟體本地化
https://github.com/bluebat/.presentations/raw/master/free-software-localization.odp
趙惟倫
August 03, 2006
More Decks by 趙惟倫
See All by 趙惟倫
BASH Basics
bluebat
0
120
VDI Historical Overview
bluebat
1
210
RPM Sphere Repository
bluebat
0
1.5k
Multiplication Table in Various Programming Languages
bluebat
0
670
Gamelets Arena for AI Players
bluebat
0
750
Alternative Web Services
bluebat
0
290
Look at Yue Desktop
bluebat
0
550
msgchi L10n Tool
bluebat
0
760
Making P-Font with FontForge
bluebat
0
210
Other Decks in How-to & DIY
See All in How-to & DIY
大量のiOSシミュレータにアプリをインストールする
gurrium
0
180
Rails 8.1.1 × Claude Code
miyakawa2449
1
120
What $10 Fake AirPods and a $30 Chip Decap Reveal About China's Semiconductors
takasumasakazu
0
130
251011「ひとりより、みんなで!」 九州の支部で始めた、新しい連携のかたち
east_takumi
2
180
2026.6.27 お誕生日会で配布された透明シェルを交換する際の注意点について
mongonta0716
0
240
フィールドエンジニア at 多摩川 / Field Engineer at Tamagawa
aokiplayer
0
410
OSSコミュニティがくれた「人との繋がり」
tanahiro2010
2
440
地方カンファレンスのスタッフしてて思うこと
yumechi
0
280
JAWS-UG鹿児島2.0 reboot - JAWS-UG/AWS Communitiesのご紹介
awsjcpm
0
130
多摩.dev で草を食べる話をしたら カンファレンスに登壇していた / from-eating-weeds-to-a-conference
aokiplayer
1
600
スタックチャンはカワイイの夢を見るか?
syumme01
0
190
お前も同人作家にならないか? 技術系同人誌制作入門
arkw
3
130
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
410
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
340
Design in an AI World
tapps
1
310
Designing for humans not robots
tammielis
254
26k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
930
Google's AI Overviews - The New Search
badams
0
1.6k
How STYLIGHT went responsive
nonsquared
100
6.3k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
510
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
趙惟倫 <
[email protected]
> 2006 年 8 月 3 日、 2008 年
1 月 26 日 2012 年 9 月 20 日、 2016 年 6 月 7 日 自由軟體本地化 自由軟體本地化 TOSSUG
軟體使用者 軟體使用者 傳統字漢語 簡化字漢語 英語 法語 日語 德語 西班牙語 傳統字漢語
简化字汉语 English Français 日本語 Deutsch Español
軟體開發者 軟體開發者 C/C++/C# Pascal/Fortran BASIC/PHP Python/Perl Java/JavaScript 傳統字漢語 简化字汉语 English
Français 日本語 Deutsch Español
如果你曾經… 如果你曾經…
語區 語區 en de fr zh ...... zh_CN zh_HK zh_TW
zh_TW.Big5 zh_TW.UTF-8 Locale
名詞解釋 名詞解釋 NLS : 多國語言支援 (National Language Support) g11n :
全球化 (Globalization) i18n : 國際化 (Internationalization) L10n : 本地化 (Localization) m17n : 多語化 (Multilingualization) 廠商 廠商 作者 翻譯者 使用者
系統選單 系統選單 範例: /usr/share/applications/mplayer.desktop [Desktop Entry] Type=Application Encoding=UTF-8 Name=MPlayer Name[zh_TW]=MPlayer
播放器 GenericName=Multimedia player Comment=Multimedia player Comment[zh_TW]= 多媒體播放器 Icon=mplayer.xpm TryExec=gmplayer Exec=gmplayer Terminal=false Categories=Application;AudioVideo;Player; [Desktop Entry] Type=Application Encoding=UTF-8 Name=MPlayer Name[zh_TW]=MPlayer 播放器 GenericName=Multimedia player Comment=Multimedia player Comment[zh_TW]= 多媒體播放器 Icon=mplayer.xpm TryExec=gmplayer Exec=gmplayer Terminal=false Categories=Application;AudioVideo;Player;
國際化方案 國際化方案 *.c *.h *.msg *.catin(makemsg gencat) *.ts *.qm(Qt) *.properties(Java)
*.xml *.json *.po *.mo(gettext) 從前 現在
翻譯內容 翻譯內容
翻譯工具 翻譯工具 專用編輯器 (poEdit, Lokalize, Gtranslator) 文字編輯器 (vi, nano, joe)
通用編輯器 (gEdit, kWrite)
注意事項 注意事項 首項訊息記錄翻譯資訊 "Last-Translator: Wei-Lun Chao <
[email protected]
>\n" "Language-Team: Chinese (traditional)
<zh-
[email protected]
>\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" 不隨意更改 msgstr 內容以外的文字 msgctxt "Software" msgid "%s: Fille shrank by %s byte" msgid_plural "%s: Fille shrank by %s bytes" msgstr[0] "%s :檔案縮減了 %s 位元組 " 快速鍵記號 (& 或 _) msgid "_Preferences..." msgstr " 偏好設定 (_P)..." msgid "Show Time&zone" msgstr " 顯示時區 (&Z)" 第二人稱單數通常翻譯為「您」 msgid "You must specify a file.\n" msgstr " 您必須指定檔案。 \n" 標點符號轉為全形 msgid "The strokes follow a \"flowing\" pattern..." msgstr " 筆劃會以「流動」的方式來鋪排… " 格式化輸出注意中文與英文的螢幕寬度比例 msgid "Idx Name Size" msgstr " 索引名稱 大小 " 必須依原型使用的名稱不需要翻譯 msgid "CLOSE, Closes the current tab" msgstr "CLOSE ,關閉目前分頁 " \ 表示跳脫字元, % 表示變數 msgid "<span weight=\"bold\">Miscellaneous\t</span>" msgstr "<span weight=\"bold\"> 其 他 \t</span>" msgid "Searching in page %d of %d...\n" msgstr " 正在搜尋 %2$d 頁中的第 %1$d 頁… \n" 訊息原文的意思是「鳴謝歷來翻譯者」 msgid "translator-credits" msgstr " 趙惟倫 <
[email protected]
>, 2006"
轉換流程 轉換流程 msginit -i name.pot -o zh_TW.po $EDITOR zh_TW.po msgfmt
zh_TW.po -cvo /dev/null msgfmt zh_TW.po -cvo zh_TW.gmo install zh_TW.gmo /usr/share/locale/zh_TW/LC_MESSAGES/name.mo gettext -e -s --domain=name "OK"
msg* msg* 命令群 命令群 msgattrib msgcmp msgen msgfmt msginit msguniq
msgcat msgcomm msgexec msggrep msgmerge msgconv msgfilter msghack msgunfmt
謝謝各位 敬請指教 簡報模板:資訊未來大自由 ( 孫賜萍 )