Locale::Po4a::Sgml(3pm) Po4a 工具 Locale::Po4a::Sgml(3pm)

名称

Locale::Po4a::Sgml - 将 SGML 文档从/转换为 PO 文件

描述

Po4a (PO For Anything) 项目的目标是在文档等不需要翻译的领域使用 gettext 工具简化翻译(更有趣的是,简化翻译的维护)。

Locale::Po4a::Sgml 是一个帮助将 SGML 格式的文档翻译成其他 [人类] 语言的模块。

本模块使用 onsgmls(1) 解析 SGML 文件。确保它已安装。还要确保 SGML 文件的 DTD 已安装在系统中。

此模块接受的选项

空格分隔的关键字列表,指示要调试的部件。可能的值有:标记、类属、图元和参照。
给出更多关于正在发生的事情的信息。
空格分隔的额外标记列表 (除了 DTD 提供的标记之外),其内容应形成额外的 msgid。
空格分隔的包含其他标记的额外标记列表 (除了 DTD 提供的标记之外),其中一些标记属于 translate 类别。
增加缩进级别的以空格分隔的标记列表。
这些标签内的布局不应更改。段落不会换行,也不会添加额外的缩进空间或新行用于修饰。
标签不需要关闭。
标签被 po4a 忽略并视为纯字符数据。也就是说,它们可以是 msgid 的一部分。例如,<b> 是此类别的一个很好的候选者,因为将其放入翻译部分会创建不是完整句子的 msgid,这是不好的。
需要转换的属性的空格分隔列表。您可以按属性的名称指定属性(例如,"lang"(语言)),但也可以在其前面加上标记层次结构,以指定此属性仅在转换为指定的标记时才会被转换。例如:<bbb><aaa> lang 指定只有当 lang 属性在 <aaa> 标记中(该标记在 <bbb> 标记中)时,lang 属性才会被转换。标记名称实际上是正则表达式,因此您还可以编写类似 <aaa|bbbb> lang 这样的内容,以便仅转换 <aaa> 或 <bbb> 标记中的 lang 属性。
翻译必须由属性名称限定的属性的空格分隔列表。请注意,此设置会自动将给定属性添加到"属性"列表中。
即使 DTD 未知或 onsgmls 在输入文件中发现错误,也要继续。
默认情况下,仅包含一个实体(如 '&version;')的 msgid 会被跳过,以方便翻译人员使用。激活此选项可阻止此优化。如果文档包含像 "<title>&Aacute;</title>" 这样的结构,那么它可能会很有用,即使我怀疑这样的事情是否会发生……
不会内联的实体的空格分隔列表。请谨慎使用此选项:它可能会导致 onsgmls (内部使用) 添加标记并使输出文档无效。

此模块的状态

结果是完美的。即生成的文档完全相同。但是仍然存在一些问题:

作者

此模块是 sgmlspl (用于 ONSGMLS 解析器的 SGML 后处理器) 的改编版本,它是:

 版权所有 © 1995 David Megginson <dmeggins@aix1.uottawa.ca>

对 po4a 的改编是通过以下方式完成的:

 Denis Barbier <barbier@linuxfr.org>
 Martin Quinson (mquinson#debian.org)

版权和许可

 版权所有 © 1995 David Megginson <dmeggins@aix1.uottawa.ca>。
 版权所有 © 2002-2005 SPI, Inc.

此程序是自由软件;您可以根据 GPL 条款重新分发和/或修改它(请参阅复制文件)。

2023-01-03 Po4a 工具