BabelとはBabelはedgewallによって開発されているI18N, L10Nのためのライブラリです。Babel http://babel.edgewall.org/ Pythonでは標準ライブラリとしてGNU gettextが組み込まれており、カタログをビルドするためのスクリプト(msgfmt.pyとか)も標準でありますが、これだけでは不便です。例えば、Webアプリケーションを開発していると、テンプレート内の文字列を国際化したいというようなニーズがどうしても出てくるでしょう。Babelはこうした局面で使用することを目的として開発されているライブラリ・ツールのようです。 Djangoを使っていると、make-messages.py, compile-messages.pyで上記のような要求が満たされてしまうので、Babelのようなライブラリは全く必要がないと思います。しかし、「俺フレ
allowcom msgqの統合パーミッションが変。修正。 gettextという仕組みを使えるようになってる。gettextはC言語などでも利用可。 日本語化の例を追って見ていく*1 日本語化対象アプリ test.py import sys import gettext gettext.install("test","/usr/share/locale") i=1 sys.stdout.write(_("test %d") % i)実行結果: test 1 と表示されるだけ。 国際化対象にしたい文字列を_(...)で囲む。 今回は_("test %d")となってる。 gettext.installで、国際化メッセージファイル(moファイル)の位置を指定 /usr/share/locale/|言語名|/LC_MESSAGES/test.mo からmoファイルを読むようになる。 pygette
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く