QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5496|回复: 3

软件界面把英文翻译成中文的问题!

[复制链接]
发表于 2005-10-7 18:29:25 | 显示全部楼层 |阅读模式
在FC3上做了一个开源项目,界面是英文的,想把英文界面汉化成中文。在网上找到几篇汉化文章,在软件的main主函数处加了如下几句话:
setlocale(LC_ALL, "");
bindtextdomain("this_app", "/usr/share/locale");
textdomain("this_app");
在文件开头加了#define _(String)  gettext(String)
并把程序中出现的字符串都改成能利用上述宏定义的格式。

接下来重新编译全部源文件,一切正常。
然后用xgettext -a -o this_app.po this_app.c 提取翻译信息,并在this_app.po文件中将对应的英文字符串用vi编辑器翻译成中文;
然后在用 msgfmt -o this_app.mo this_app.po格式化成.mo文件,并拷贝到cp this_app.mo /usr/share/locale/zh_CN/LC_MESSAGES。

经过上述步骤,我将应用程序界面的一个菜单名翻译作为测试,结果什么也没显示出来,即菜单按钮处为空白,不知道是什么原因?请各位多多指教!
发表于 2005-10-7 19:04:14 | 显示全部楼层
你自己系统的locale有没有设置好?
回复

使用道具 举报

 楼主| 发表于 2005-10-7 20:34:02 | 显示全部楼层
主席你好,我的系统语言是选择FC3中的系统语言为简体中文,export查看环境变量,是zh_CN 18030,不知道这样设置有什么问题?
回复

使用道具 举报

发表于 2005-10-10 11:18:28 | 显示全部楼层
不知道你用的 gtk 还是 qt,

菜单定义是再数组中? 那么就该用 N_(...) 然后用 _(...) 来引用。

你可以看一下

http://www.gnome.org/~malcolm/i18n/index.html
Internationalising GNOME applications

另外, po 文件必须是 utf-8 的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-23 21:28 , Processed in 0.049324 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表