私はバベルとリングアに問題があります。ポット カタログを作成するために、babel/lingua にソース フォルダーをスキャンして特定の文字列を探してもらいたいです。
これは私のsetup.pyです
...
requires = [
...
'Babel',
'lingua',
]
extractors = { 'dbas': [
('**.py', 'python', None ),
('**.pt', 'chameleon', None ),
('static/**', 'ignore', None),
]}
setup(name='DBAS',
...
message_extractors=extractors,
...
)
そして私のsetup.cfg
[compile_catalog]
directory = dbas/locale
domain = mydbas
statistics = true
[extract_messages]
copyright_holder = Acme Inc.
output_file = dbas/locale/mydbas.pot
charset = UTF-8
[init_catalog]
domain = mydbas
input_file = dbas/locale/mydbas.pot
output_dir = dbas/locale
[update_catalog]
domain = mydbas
input_file = dbas/locale/mydbas.pot
output_dir = dbas/locale
previous = true
私のinit .py には、次のようなものがあります。
config.add_translation_dirs('dbas:locale')
たとえば、私の 404 テンプレートは次のとおりです。
<!DOCTYPE html>
<html lang="${request.locale_name}"
metal:use-macro="load: basetemplate.pt"
xmlns="http://www.w3.org/1999/xhtml"
xml:lang="en"
xmlns:i18n="http://xml.zope.org/namespaces/i18n"
i18n:domain="dbas">
<head>
<link type="text/css" href="${request.static_url('dbas:static/css/theme_center.css')}" rel="stylesheet">
</head>
<body>
<div class="center">
<div class="error">
<h1><span class="font-semi-bold" i18n:translate="404">404 Error</span></h1>
<p class="lead font-normal">The page "<span class="font-semi-bold">${page_notfound_viewname}</span>" for could not be found.</p>
<br>
<input class="button button-block btn-lg btn btn-primary" type="submit" onClick="self.location.href='/'" value="Let's go home!" />
</div>
</div>
</body>
<html>
今私は実行できます:
python3 setup.py develop
setup.py extract_messages
そして、私は受け取っています:
running extract_messages
extracting messages from dbas/__init__.py
extracting messages from dbas/helper.py
extracting messages from dbas/security.py
extracting messages from dbas/tests.py
extracting messages from dbas/views.py
extracting messages from dbas/database/__init__.py
extracting messages from dbas/database/initializedb.py
extracting messages from dbas/database/model.py
extracting messages from dbas/templates/404.pt
Traceback (most recent call last):
File "setup.py", line 60, in <module>
""",
File "/usr/lib/python3.4/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.4/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/local/lib/python3.4/dist-packages/babel/messages/frontend.py", line 305, in run
for filename, lineno, message, comments, context in extracted:
File "/usr/local/lib/python3.4/dist-packages/babel/messages/extract.py", line 163, in extract_from_dir
strip_comment_tags):
File "/usr/local/lib/python3.4/dist-packages/babel/messages/extract.py", line 190, in extract_from_file
strip_comment_tags))
File "/usr/local/lib/python3.4/dist-packages/babel/messages/extract.py", line 262, in extract
raise ValueError('Unknown extraction method %r' % method)
ValueError: Unknown extraction method 'chameleon'
誰かが知っていますか、何が悪いのですか?