荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: zzt (好好学习,天天向上), 信区: Linux
标  题: [CPOP]L10N实作简介(fwd)
发信站: BBS 荔园晨风站 (Tue Jan 25 11:46:54 2000), 转信

【 以下文字转载自 zzt 的信箱 】
【 原文由 zzt.bbs@bbs.zd.dhs.org 所发表 】
发信人: brianhsu.bbs@bbs.ntu.edu.tw (古墓剑仙), 看板: TW-Linux
标  题: [CPOP]L10N实作简介(fwd)
发信站: 台大计中椰林风情站 (Sat Oct  9 15:43:10 1999)
转信站: E1!news.clinux.cz.js.cn!hammer.uoregon.edu!newsfeed.axxsys.net!newsfeed

二、L10N的简介

  现在我们要来看看如何把po档中文化了,本例的po档如下:
----------------------
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#: HelloWorld.c:25
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 1999-10-09 19:55+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"

#: HelloWorld.c:10
msgid "Hello World\n"
msgstr ""

#: HelloWorld.c:30
msgid "destroy"
msgstr ""

#: HelloWorld.c:35
msgid "Hello World!"
msgstr ""

#: HelloWorld.c:38 HelloWorld.c:41
msgid "clicked"
msgstr ""

------------------------------------

上面的标头我们就略过不提,我们要看的是下面那几行有msgid和
msgstr的那几行。

msgid是原来在程式码中原来的字串,下面的msgstr则是我们要置
换的字串,我们把他改成下面的样子:

----------------------
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#: HelloWorld.c:25
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 1999-10-09 19:55+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"

#: HelloWorld.c:10
msgid "Hello World\n"
msgstr "这是文字下的测试\n"

#: HelloWorld.c:30
msgid "destroy"
msgstr ""

#: HelloWorld.c:35
msgid "Hello World!"
msgstr "TEST~~~~~~~"

#: HelloWorld.c:38 HelloWorld.c:41
msgid "clicked"
msgstr ""

------------------------------------

或许你会问,那两行没翻的是为什麽?这两行是程式中的东西,
不用去改他,如果看到这种的文字就不用翻了,翻了也没用。因
为我们在作I18N的东西时,没有把他给用_("")来定义。

现在一切就绪後,就可以用下面的指令来做成电脑看的懂的机器
语言的档案了:

msgfmt HelloWorld.po -o HelloWorld.mo

现在看看目录下有没有一个HelloWorld.mo,如果有的话,就差不
多完成了,现在我们来安装,请把这个HelloWorld.mo复制到
/usr/share/locale/zh_TW.Big5/LC_MESSAGES/下,这样就可以了
,我们再来试试看./hello_world,看,改成你所写的讯息了吧!

PS.如果你想要把你所翻译的的讯息档给我们,最好是给我们
   po档,这样即使一个人没错完,也能合大众之力来完成
   。
--
   ~     Brian Hsu (古墓剑仙)
  'v'    E-Mail       : brianhsu@heloo.com.tw
 // \\   CLDP Project : http://www.linux.org.tw/CLDP/
/(   )\  CLE  Project : http://cle.linux.org.tw/CLE/
 ^`~'^   站 在 巨 人 的 肩 膀 向 前 眺 望
--
☆ [Origin:椰林风情] [From: 202.39.153.240] [Login: **] [Post: 63]
--
※ 转载:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.11]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店