Transifex 广泛用于管理 Django 项目以及内部的翻译。它在 gettext (PO) 文件上做得很好。然而,Django 模板并不是其已知格式之一。你可以告诉 Transifex 它们是 HTML,在这种情况下它需要这样的东西:
{% extends "base.html" %}
{% block "banner" %}
<h1>Hi there</h1>
<p>Banner text</p>
{% endblock "banner" %}
并将其变成:
<div>
<p>
{% extends "base.html" %}
{% block "banner" %}</p>
<h1>Hi there</h1>
<p>Banner text</p>
{% endblock "banner" %}</div>
另一个问题是,Transifex 然后将模板标记视为要翻译的字符串,迫使您浏览文件并将每个标记为“锁定” - 即使这样,我认为标记也会影响您的字数。
在 Django 模板标签周围添加 HTML 注释也不起作用,因为它们成为模板的一部分并插入到最终文档中。注释掉模板标签,然后对文件进行后处理以删除它们可能会起作用,但不一定保证 Transifex 会不理会注释,即使他们这样做了,这似乎也很笨重且容易出错。
我希望有人有更好的策略,让您将模板交给 Transifex 而不会被咀嚼。