Pyramid国际化与HTML5

2 投票
1 回答
1119 浏览
提问于 2025-04-17 01:44

Pyramid的国际化(i18n)功能在处理.pt文件时,支持HTML5的标记吗?目前看起来,i18n标签提取器(可能是Babel)似乎只接受基于XHTML的输入,而不支持HTML5的标记。因此,如果你想在.pt文件中使用国际化功能,就必须以类似XML的方式来写这些文件吗?

1 个回答

3

Chameleon 1 版本包含了两个用于提取代码的插件,一个是针对 Python 代码的,另一个是针对 XML 文件的,这就是 Pyramid 文档提到的内容。而 Chameleon 2 版本不再包含这些插件,主要专注于它作为模板库的核心功能。这两个插件已经被整理过,现在包含在新的 lingua 包 中。Pyramid 的文档也已经更新,以反映这一变化,从 Pyramid 1.1 版本开始就有了这个更新(你可以在 Pyramid 1.1 的国际化章节 中看到)。

lingua 的 XML 插件使用 expat 来解析输入内容,所以如果你的 HTML 文件不符合 XML 的格式,它会出错。因为我个人认为 XML 格式是更好的选择,所以我不太可能去修改 lingua 的实现来支持非 XML 的语法。不过有一个例外:lingua 允许缺少命名空间声明。

撰写回答