PoEdit教程:如何翻译自由软件项目

如果您正在阅读本文,则很可能您已经进入了奇妙的茄子 译文。 恭喜您,耐心等待。 一切都是随着时间和欲望而学习的。如果您想翻译,以将您的沙粒贡献给世界 免费软件 (或者您需要一个工具来向网站添加语言选项),而您期望的是将其转换为另一种语言的英文纯文本(例如),您将意识到(正如我告诉自己的那样)像那样简单。

但这也不复杂。 在这些简短的专栏中,我们尝试解释最常见的情况,即为您分配了一个 文件 格式 。锅 翻译。

这是Daniel Durante的贡献,因此成为我们每周比赛的获胜者之一:分享您对Linux的了解«。 恭喜丹尼尔!

什么是PoEdit?

Poedit是翻译工具,但请注意,不要将其与翻译器混淆。
还有其他具有相同功能的程序,但我认为PoEdit是使用最广泛的。 PoEdit不能像实现该目的的程序那样进行翻译,而是可以帮助我们完成将文本从一种语言翻译成另一种语言的任务。 也就是说,它将为我们提供一种语言中的字符串,而我们必须将其翻译成所需的语言。

原则上,您可能会想知道,为此,我需要一个程序?为什么不直接使用文本编辑器(例如gedit或Windows记事本)? 答案很简单:PoEdit产生转换后的字符串的输出,格式是准备直接包含在以html,php代码等存储页面的服务器目录中的格式。 因此当放置在翻译文件目录中时,它将被识别为立即可用的翻译文件。 显然,在这些目录中可以(通常)有多个文件,目的是将翻译存储为不同的语言,其中每个文件都包含有关什么以及如何表示给定语言的翻译字符的信息。

PoEdit处理的文件是模板文件,以.pot扩展名结尾,翻译文件以.po和file.mo扩展名结尾,这些文件是编译后的文件,可加快访问速度。 如果我们在PoEdit配置中指定后者,则会自动创建后者。

PoEdit存在于GNU / Linux,Windows和Mac OS X版本中。

模板文件和翻译文件

您还记得文字处理器如何处理模板吗? 好吧,PoEdit也会发生类似的情况。 模板文件包含要翻译的字符串和一些为某些数据保留的空间,这些空间稍后将在我们开始翻译过程时填充。 这些数据,除了原始的和翻译后的文字字符串外,例如,是最后一个翻译者的名字(因为任务可能是由翻译者开始的,而不是由翻译者完成的),翻译团队的名字,字符集等它们就像一种元数据,可提供有关翻译文件的信息。

但是要翻译成模板...?

只需将模板的副本复制到另一个文件中,即可使用相同的方式对其进行重命名,但扩展名为.po,但并非完全相同,因为这样您就可以知道它将使用哪种语言。
如果要翻译原件,则必须在扩展名之前的模板文件名的末尾添加两位数字代码。

例如:

假设一个英文网站。 它的主页称为index.html,要进行翻译,我们将必须有一个名为index.pot的模板文件(从index.html到index.pot的通道是另一个我们不输入的过程)。 当拥有该index.pot文件时,如果将西班牙语翻译为该语言,则只需将其重命名为index.es.po。

以这种方式命名文件后,我们就可以开始使用PoEdit对其进行处理了。

在下面的图像中,您有一个.po文件的片段,您可以在其中看到要翻译的字符串(它们是用引号引起来的文字msgid的字符串),以及我们用PoEdit翻译的字符串将被放置的位置(在文字后面的引号)msgid。

如果出现问题,并且我无法编辑.po文件并将翻译直接放在msgstr?后面的引号之间,则答案是“是”,尽管使用PoEdit这样做更方便和有序(更不用说了需要在正确的位置手动输入我们之前讨论过的元数据,最好将该任务留给PoEdit;而且我们也不能选择打开已编译的.mo文件)。

在下图中,您有一个.po文件的标题,其中出现了与该文件有关的元数据:

在.pot文件中,此元数据将不包含信息,而在.po文件中,将显示引用每个项目的信息。

安装与配置

PoEdit包含在Debian 6.0 stable / main的GNU / Linux应用程序存储库中。 我想对于其他基于.deb软件包的发行版,它的安装也是直接的,可以使用Synaptic或apt命令行管理器之类的应用程序,格式为:

apt-get install poedit

安装后,我们访问该程序并继续在“版本”→“首选项”中指定首选项,在其中放置我们的姓名和电子邮件地址。 原则上,我们可以将其余部分留给Poedit展示。

使用.po文件

首先,如下图所示,在目录->选项中配置文件:

用字符串nplurals = 2填充“复数形式”部分很重要; 复数= n!= 1; 您将以个性化的方式放置其余的内容。

在“文件夹”标签中,我们将在计算机上自由选择要获取翻译的目录,

完成此操作后,您将看到是否要使用纯文本编辑器打开.po文件,因为我们所引用的元数据已更改。

所有人都准备好开始翻译将出现在PoEdit主屏幕上的字符串,其格式类似于以下格式:

我们已经翻译过的地方,并且在下面的窗口中包括了上面显示的字符串的翻译。 仅保存更改。

那是什么模糊?

当我们不清楚字符串的翻译但知道如何近似其翻译时,必须将其标记为模糊。 在这种情况下,翻译不完整,.po文件可以发送给另一位翻译人员,后者将审核这些字符串(实际上,在数位翻译人员和审阅者的过程中,所有内容都将进行审查)

好了,作为本小教程的结尾,我将告诉您,完整的文本视图很有用,而不是像PoEdit所显示的那样按行排列。

要仅提取西班牙语文本,请使用po2txt命令:

po2txt -w 75 item-name.es.po item-name.es.txt

-w 75表示行宽为75个字符。

(您必须安装gettext和translation-toolkit软件包)


本文内容遵循我们的原则 编辑伦理。 要报告错误,请单击 信息.

13条评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   PehuénRaineri

    AL poedit我很好,它的解释很好,但是当我要提取文本时会出错。 我必须将路径放置到文件上吗?

    去我得到的:

    用户@ ubuntu:〜$ po2txt -w 75 English.po English.txt
    正在处理1个文件...

    po2txt:警告:错误处理:输入English.po,输出English.txt,模板无:[Errno 2]没有这样的文件或目录:'English.po'
    [########################################] 100%
    用户@ ubuntu:〜$ po2txt -w 75 ^ Cglish.po English.txt

  2.   做Xa

    如果您对查找Web软件,PC软件,移动软件或任何其他类型的软件感兴趣,我热烈推荐此快速直观的本地化工具: http://poeditor.com/.

  3.   Anymex

    我想我在文章的一部分中迷路了,但我不明白,这些文件将用于什么用途?

  4.   大卫·塞古拉M

    对于不同程序的翻译,当您想帮助将项目翻译成其他语言(例如Pidgin,Qcomicbook等)时,使用的标准就是这种类型的文件,因为出于本文中解释的原因,它可以完成任务比较容易。

  5.   大卫·塞古拉M

    非常感谢您的贡献,它澄清了我的许多疑问,因为尽管有些项目像Marlin一样可以直接在Internet或Launchpad上进行翻译,但大多数情况下使用.po格式,而其版本仍对我不清楚!

  6.   杰克

    如果有人可以使用:
    有一个页面可以同时与Google和Microsoft一起翻译:
    http://www.traductor–google.com

  7.   迭戈·布鲁切蒂(Diego Bruschetti)

    像OmegaT这样的程序? 这行不通吗?

  8.   埃里尼奥

    对不起,很抱歉,但是我试图用几种语言创建自己的网站,我不知道翻译是如何完成的,让我解释一下:

    我有一个默认的.po以西班牙语作为基本语言(西班牙),并且我正在创建另一个将其翻译为英语en_EN的.po。 我不知道如何检查翻译是否正确加载。 它会根据访问者浏览器的语言自动加载吗? 您应该创建一个中间文件吗? 我是否应该放置典型标志并根据按下哪个标志,加载一个翻译或另一个翻译?

    老实说,我对此并不陌生,只是开始使用poedit就像了解下面的所有内容:(。

    注意:我在Windows 7 64位和.po语言中使用poedit(创建新目录时),但没有下拉列表。 我只用西班牙语和英语。

  9.   塞莱娜

    你好! 如果您有兴趣查找任何类型的软件,我热烈推荐此快速直观的查找工具: http://poeditor.com/.

  10.   纳塔利

    我使用poedit来翻译文本,我想知道如何计算已翻译的字符,从而能够记账收集已翻译的字符,但找不到找到计数已翻译字符的方法…。能做到吗?

    1.    Xero

      才能使帐户收集翻译的内容?
      我想您还不太清楚这个主题的进展,对吧
      阅读gpl许可证

    2.    埃里尼奥

      您无法做到,唯一的办法就是将这些句子复制到文本编辑器(免费的办公室作家,单词等)中,然后看到句子中的字符数。

  11.   吉列尔莫

    如果要翻译成另一种语言,则可以在以下目录中找到“目录属性:复数形式”窗口中有关复数的信息。
    http://localization-guide.readthedocs.org/en/latest/l10n/pluralforms.html