Module gettexter_mo_parser

Simple low-level gettext .mo file format parser for Erlang.

Copyright © (C) 2013, Sergey Prokhorov

Authors: Sergey Prokhorov (me@seriyps.ru).

Description

Simple low-level gettext .mo file format parser for Erlang.

To read a description of binary format, run info '(gettext) MO Files' or visit http://www.gnu.org/software/gettext/manual/gettext.html#MO-Files

Produce [{{Singular, Plurals, Context}, TransPluralsPhrases::[binary()]}] as output. Eg, for .po file (converted to .mo)
   msgid "Download"
   msgctx "some-ctx"
   msgstr "Скачать"
  
   msgid "Stone"
   msgid_plural "Stones"
   msgstr[0] "Камень"
   msgstr[1] "Камня"
   msgstr[2] "Камней"
   
it will produce
   [{ {<<"Download">>, undefined, <<"some-ctx">>}, [<<"Скачать">>] },
    { {<<"Stone">>, <<"Stones">>, undefined}, [<<"Камень">>, <<"Камня">>, <<"Камней">>] }]

Data Types

catalog()

catalog() = [{key(), value()}]

key()

key() = {Singular::binary(), Plural::binary() | undefined, Context::binary() | undefined}

value()

value() = [Phrase::binary()]

Function Index

parse/1
parse_file/1
to_dict/1

Function Details

parse/1

parse(Bin::binary()) -> #st{bin = binary(), obin = binary(), catalog = catalog(), bo = little | big | undefined, version = integer() | undefined, msg_cnt = integer() | undefined, orig_tab_offset = integer() | undefined, trans_tab_offset = integer() | undefined}

parse_file/1

parse_file(Name::file:filename()) -> #st{bin = binary(), obin = binary(), catalog = catalog(), bo = little | big | undefined, version = integer() | undefined, msg_cnt = integer() | undefined, orig_tab_offset = integer() | undefined, trans_tab_offset = integer() | undefined}

to_dict/1

to_dict(St::#st{bin = binary(), obin = binary(), catalog = catalog(), bo = little | big | undefined, version = integer() | undefined, msg_cnt = integer() | undefined, orig_tab_offset = integer() | undefined, trans_tab_offset = integer() | undefined}) -> catalog()


Generated by EDoc