購買注文書類サポート¶
POファイルは、POおよびPOTファイルを読み書きすることができます。それを読んで Catalog
オブジェクトは,ディレクトリを書く.
-
babel.messages.pofile.
read_po
(fileobj, locale=None, domain=None, ignore_obsolete=False, charset=None, abort_invalid=False)¶ 読書は
gettext
PO(携帯オブジェクト)ファイルを1つ返します Catalog それがそうです。>>> from datetime import datetime >>> from babel._compat import StringIO >>> buf = StringIO(''' ... #: main.py:1 ... #, fuzzy, python-format ... msgid "foo %(name)s" ... msgstr "quux %(name)s" ... ... # A user comment ... #. An auto comment ... #: main.py:3 ... msgid "bar" ... msgid_plural "baz" ... msgstr[0] "bar" ... msgstr[1] "baaz" ... ''') >>> catalog = read_po(buf) >>> catalog.revision_date = datetime(2007, 4, 1)
>>> for message in catalog: ... if message.id: ... print((message.id, message.string)) ... print(' ', (message.locations, sorted(list(message.flags)))) ... print(' ', (message.user_comments, message.auto_comments)) (u'foo %(name)s', u'quux %(name)s') ([(u'main.py', 1)], [u'fuzzy', u'python-format']) ([], []) ((u'bar', u'baz'), (u'bar', u'baaz')) ([(u'main.py', 3)], []) ([u'A user comment'], [u'An auto comment'])
バージョン 1.0 で追加: 明示的な文字セットパラメータのサポートが追加されました。
- パラメータ
fileobj -- POファイルの類似ファイルを読み込むオブジェクト
locale -- エリア設定識別子または Locale 対象、または None ディレクトリが領域設定にバインドされていない場合(これは基本的にテンプレートであることを意味する)
domain -- 情報域.
ignore_obsolete -- 入力された時代遅れの情報を無視しているかどうか
charset -- 目次の文字集。
abort_invalid -- Poファイルが無効であれば読み出しを中止する.
-
babel.messages.pofile.
write_po
(fileobj, catalog, width=76, no_location=False, omit_header=False, sort_output=False, sort_by_file=False, ignore_obsolete=False, include_previous=False, include_lineno=True)¶ 1つ書く
gettext
提供された類似ファイルのオブジェクトに、メッセージディレクトリが与えられたPO(携帯オブジェクト)テンプレートファイルを追加する。>>> catalog = Catalog() >>> catalog.add(u'foo %(name)s', locations=[('main.py', 1)], ... flags=('fuzzy',)) <Message...> >>> catalog.add((u'bar', u'baz'), locations=[('main.py', 3)]) <Message...> >>> from babel._compat import BytesIO >>> buf = BytesIO() >>> write_po(buf, catalog, omit_header=True) >>> print(buf.getvalue().decode("utf8")) #: main.py:1 #, fuzzy, python-format msgid "foo %(name)s" msgstr "" #: main.py:3 msgid "bar" msgid_plural "baz" msgstr[0] "" msgstr[1] ""
- パラメータ
fileobj -- 記入する類似ファイルのオブジェクト
catalog -- ♪the Catalog 実例.
width -- 生成された出力の最大行幅 None 改行を完全に無効にするために、0またはマイナス
no_location -- すべてのメッセージに位置コメントを送ってはいけません
omit_header -- 含まれていない
msgid ""
トップのエントリを出力するsort_output -- 出力中のメッセージをmsgidでソートするかどうか
sort_by_file -- 出力中のメッセージを位置ごとにソートするかどうか
ignore_obsolete -- 無視されたか否かの場合、メッセージは出力に含まれず、デフォルトの場合、注釈として出力に含まれる。
include_previous -- ディレクトリを更新する際にはアノテーションとして古いmsgidを含む.
include_lineno -- 位置注釈に行番号が含まれている