Python Babel映射配置文件应放置或命名在哪里?
我现在正在尝试使用Babel生成一组不同语言的静态HTML页面,使用的是Jinja2,并且是在一个简单的脚本中进行的(不是作为网页应用的一部分)。
我现在需要提取要翻译的消息,我知道我需要修改Babel的映射配置文件,以便它能理解Jinja2模板。因为我是在命令行工具中使用,所以我想我需要自己创建这个映射文件。
不过,我在文档中找不到这个映射配置文件应该叫什么名字,以及应该放在哪里。我只知道我需要根据Jinja2的文档,把以下内容:
[jinja2: **/templates/**.html]
encoding = utf-8
放入映射文件中。有没有人做过类似的事情,或者知道这个映射配置文件应该是什么样的?谢谢!
3 个回答
0
你可以通过 -F 来指定映射配置文件的路径,这个文件是用来给 extract_messages
使用的。比如,我的映射配置文件叫 babel.cfg
,它放在我项目的根目录下。在提取消息的时候,我会运行:
pybabel extract -F babel.cfg ...
2
映射文件的位置是从 setup.cfg 文件中读取的,这个文件是由 Distutils 生成的。在这个文件的 "extract_messages" 部分,你需要添加一个叫做 mapping_file
的设置,这个设置应该指向你的映射文件。
举个例子:
这段设置告诉 Babel 去包的目录里寻找名为 message-extraction.ini
的映射文件。
[extract_messages]
# some default options
# ..
mapping_file = message-extraction.ini
2
你可以用 -c <filename>
来指定配置文件的位置。