没有项目描述
muffin-babel的Python项目详细描述
muffin babel–对Muffin的扩展,它在babel的帮助下添加了本地化支持。
内容
Requirements
- python>;=3.5.3
Usage
将muffin_babel添加到plugins中的Muffin应用程序配置:
import muffin app = muffin.Application( 'example', PLUGINS=( 'muffin_jinja2', 'muffin_babel', ) )
设置区域设置选择器函数:
@app.ps.babel.locale_selector def set_locale(request): """ Return locale from GET lang-param or automatically. """ return request.GET.get( 'lang', # Get locale based on user settings app.ps.babel.select_locale_by_request(request) )
在您的 代码:
@app.register('/') def index(request): return app.ps.babel.gettext('Hello!')
Jinja2
松饼巴别塔已经与松饼金贾2相结合,所以如果你有 muffin_jinja2插件已启用,插件提供gettext和ngettext Jinja2模板上下文中的函数。
注意
muffin_jinja2应该在应用程序配置中的muffin_babel之前启用。
Options
BABEL_CONFIGURE_JINJA2 | Install i18n support to Muffin-Jinja2 (^{tt1}$) |
BABEL_DEFAULT_LOCALE | Set default locale (^{tt2}$) |
BABEL_DOMAIN | Set default domain (^{tt3}$) |
BABEL_LOCALES_DIRS | List of directories where locales are leaving |
BABEL_SOURCES_MAP | Babel sources map |
BABEL_OPTIONS_MAP | Babel options map |
Commands
插件向Muffin应用程序添加两个命令。
Extract messages
将应用程序中的字符串提取到区域设置:
$ muffin app_module extract_messages [OPTIONS] appdir
翻译.po文件并编译翻译:
$ muffin app_module compile_messages [OPTIONS]
Bug tracker
如果您有任何建议、错误报告或 烦恼请向问题追踪者报告 在https://github.com/klen/muffin-babel/issues
Contributing
松饼巴别塔的发展发生在:https://github.com/klen/muffin-babel
Contributors
- klen(基里尔·克莱诺夫)
License
根据MIT license授权。