一个用于使使用Python编写的Toolforge工具可翻译的库。
项目描述
toolforge_i18n
toolforge_i18n 是一个用于使使用Python编写的维基媒体Toolforge工具可翻译的库。它特别针对基于Flask的工具,但也应适用于其他框架。
功能
-
使您的工具可翻译成数十种,甚至可能数百种语言!
-
通过重用MediaWiki消息文件语法,轻松集成translatewiki.net。
-
完全支持魔法词
{{GENDER:}}
和{{PLURAL:}}
,以及超链接语法([url text]
)和列表格式。 -
默认支持类似于MediaWiki的
?uselang=
URL参数,包括?uselang=qqx
以查看消息键。 -
MediaWiki语言代码与HTML语言代码/ IETF BCP 47语言标签之间的正确转换;例如,
?uselang=simple
产生<html lang="en-simple">
。 -
在语言回退的情况下正确设置
lang=
和dir=
:由于语言回退而与周围标记不匹配的消息将自动包裹在一个具有正确属性的<span>
中。 (即使 MediaWiki 也不这样做!诚然,MediaWiki 没有将每个消息包裹在<span>
中的奢侈——许多 MediaWiki 消息是块元素,更可能需要<div>
。) -
包括检查以确保所有翻译都是安全的,没有意外的元素(例如
<script>
)或属性(例如onclick=
),以防止来自翻译的 XSS 攻击。测试将通过 pytest 插件自动注册,并在工具初始化时运行。
如何使用它
请参阅文档,特别是 Flask 工具的文档 或 非 Flask 工具,具体取决于您使用的框架。
请注意,该库仍然相对较新,尚未被许多工具使用。如果有任何不清楚或问题,请随时联系维护者,并在 Phabricator 上提交任务。
许可证
BSD-3-Clause。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。