首页 > 代码库 > 如何在Ubuntu上本地化一个Scope
如何在Ubuntu上本地化一个Scope
在这篇文章中,我们将介绍如何本地化一个Scope。本地化对有些Scope是非常重要的。正确地使用本地化,可以使得我们的Scop很方便地支持多个国家的语言。
1)创建一个基本的Scope
打开我们的Ubuntu SDK,并按如下的步骤生成:
等我们已经创建好我们的一个最基本的Scope后,我们可以可以在如下的目录中发现:
这里有一个叫做“localizedscope.pot”文件,我们可以尝试打开该文件。它是一个空文件。我们选择desktop先运行一次我们的Scope,然后再重新打开该文件。
我们可以看到在该文件中有一些字符串,在它们的下面有一些空的串。这些字符串都是从我们的项目中源文件中提取出来的。比如在文件“com.ubuntu.developer.liu-xiao-guo.localizedscope_localizedscope.ini.in”中我们可以找到“Localizedscope Scope”。它实际上是我们的Scope的标题。在query.cpp文件中,我们可以找到如下的定义:
// Register a category for the forecast auto forecast_cat = reply->register_category("forecast", _("7 day forecast"), "", sc::CategoryRenderer(WEATHER_TEMPLATE));
通过这个例子,我们可以看出,如果我们想要本地化自己的字符串,我们使用“_("string")”的形式来让我们的工具来提取相应的需要本地化的字符串。这里的“string”应该写成英文。
在localizedscope.pot文件中,我们可以看到:
#: ../data/com.ubuntu.developer.liu-xiao-guo.localizedscope_localizedscope.ini.in.h:2 msgid "This is a Localizedscope scope" msgstr ""
上面的地一行字显示了字符串出自哪个文件及在该文件中的行数。
2)本地化字符串
我们为了达到本地化该Scope,我们首先把.pot文件拷贝到该目录下的另外一个文件“zh_CN.po”,并做相应的翻译的工作。同时要记得把里面的
charset=CHARSET
修改为
charset=UTF-8
整个zh_CN.po文件的内容如下:
# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-12-22 12:13+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" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/scope/query.cpp:144 msgid "7 day forecast" msgstr "7天天气预测" #: ../data/com.ubuntu.developer.liu-xiao-guo.localizedscope_localizedscope.ini.in.h:1 msgid "Localizedscope Scope" msgstr "本地化Scope" #: ../data/com.ubuntu.developer.liu-xiao-guo.localizedscope_localizedscope.ini.in.h:2 msgid "This is a Localizedscope scope" msgstr "这是一个本地化Scope"
我们可以选择在手机上安装并运行我们的Scope。最终显示如下:
我们也可以查看具体的操作步骤在项目中的"readme.txt"文件中。通过这样的方法,我们完成了对中文简体语言的本地化。整个项目的源码在如下地址找到:
bzr branch lp:~liu-xiao-guo/debiantrial/localizedscope
如何在Ubuntu上本地化一个Scope
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。