注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

考拉&味道

P不走寻常路~e...ar

 
 
 

日志

 
 

如何汉化 po 文件及编译成 mo 文件  

2008-06-16 17:00:51|  分类: UI/UE/web |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

我们在使用 WordPress 及其插件时,经常可以找到汉化的版本,一般是通过一个汉化过(翻译过)的 mo 文件来实现( WordPress 仅可识别 mo 文件),实际上不单 WordPress ,包括很多桌面应用程序都是是依靠 po 文件或 mo 文件来实现多语言版本.如果原作者提供了一个 po 文件或 mo 文件,那么我们就可以通过相关工具来自行汉化,或者翻译成其他语言版本.因为 mo 文件不能直接编辑,所以我们得编辑 po 文件,若仅有 mo 文件,那么就应该先把它转换成 po 文件后再进行编辑翻译. www.444p.com版权所有

至于编辑工具,由于 po 文件本身就是一个文本文件,所以任何文本编辑器都可以使用.除了专门编辑 po 文件的 poEdit ,还推荐使用 poEdit 、EditPlus、UltraEdit或者你喜欢的 vi 或 vim.

www.444p.com

我们来看一个 po 文件,这是 yskin 制作的 WordPress 2.11 中文版 po 文件 中的一部分 php学习之家

msgid ""

msgstr ""

"Project-Id-Version: WordPress 2.1-1.0\n"

"PO-Revision-Date: 2007-02-22 12:35+0800\n"

"Last-Translator: yskin \n"

"MIME-Version: 1.0\n"

"Content-Type: text/plain; charset=utf-8\n"

"Content-Transfer-Encoding: 8bit\n"

"X-Poedit-Basepath: d:/wordpress\n"

"X-Poedit-Language: Simplified Chinese\n"

"X-Poedit-Country: China\n"

"X-Poedit-SourceCharset: utf-8\n"

"X-Poedit-KeywordsList: _e;__;__ngettext:1,2\n"

"Language-Team: \n"

"POT-Creation-Date: \n"

"Plural-Forms: nplurals=1; plural=0;\n"

"X-Poedit-SearchPath-0: .\n" php学习之家

# 第一条要翻译的字符串.

#: wp-comments-post.php:15

msgid "Sorry, comments are closed for this item."

msgstr "对不起,这篇文章禁止评论."

本文来自 www.444p.com

上面是这个 po 文件的最初部分,各行意思一目了然,注意编码尽可能采用UTF-8.

php学习之家

# 第一条要翻译的字符串.

#: wp-comments-post.php:15

msgid "Sorry, comments are closed for this item."

msgstr "对不起,这篇文章禁止评论."

www.444p.com php学习之家

这段就是po文件的主体结构了,每一个翻译项占一段.#: wp-comments-post.php:15 说明字符串相应的位置; msgid "Sorry, comments are closed for this item." 翻译前的原文; msgstr "对不起,这篇文章禁止评论." 翻译后的字符串.以此类推,即可完成所有资源的翻译.非常简单. www.444p.com php学习之家

那么如何将 po 文件编译成(转换) mo 文件呢? 本文来自 www.444p.com

如如果你使用的是 poEdit ,按 Ctrl + s 保存就会自动生成相应的 po 文件和 mo 文件;

或者在命令提示符界面,使用 msgfmt demo.po 命令将po文件编译为可用的 demo.mo 文件,用 msgunfmt demo.mo 命令转回 demo.po 文件,这些命令在 poEdit 的安裝目录下有,可以拷贝msgunfmt.exe 、msgfmt.exe 及相关链接库文件 gettextlib.dll 、gettextsrc.dll 、iconv.dll 、intl.dll 到 c:/windows/system32 目录下,或者安装 .Net 2.0环境。

另外推荐一款 GUI 界面的转化程序 po2mo.exe ,作者的说明:该程序是调用 msgfmt.exe 和 msgunfmt.exe 文件,从而进行po 、mo 文件互转。文件是用C#写的,需要.Net 2.0环境。

  评论这张
 
阅读(558)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017