Your IP : 216.73.216.213
�
��f� c @ s� d Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l m Z d Z i a
d d d � Z d d � Z d
d � Z
d d
� Z d d � Z e d k r� e � n d S( u� Generate binary message catalog from textual translation description.
This program converts a textual Uniforum-style message catalog (.po file) into
a binary GNU catalog (.mo file). This is essentially the same function as the
GNU msgfmt program, however, it is a simpler implementation.
Usage: msgfmt.py [OPTIONS] filename.po
Options:
-o file
--output-file=file
Specify the output file to write to. If omitted, output will go to a
file named filename.mo (based off the input file name).
-h
--help
Print this message and exit.
-V
--version
Display version information and exit.
i N( u HeaderParseru 1.1u c C s@ t t d t j �| r/ t | d t j �n t j | � d S( Nu file( u printu __doc__u sysu stderru exit( u codeu msg( ( u6 /opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyu usage) s u usagec C s | r | r | t | <n d S( u. Add a non-fuzzy translation to the dictionary.N( u MESSAGES( u idu stru fuzzy( ( u6 /opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyu add1 s
u addc C sy t t j � � } g } d } } xc | D][ } | j t | � t | � t | � t t | � f � | | d 7} | t | d 7} q) Wd } d d t | � } | t | � } g } g } xB | D]: \ }
} } }
| | |
| g 7} | |
| | g 7} q� W| | } t j d d d t | � d
d t | � d
d d � } | t j d | � j � 7} | | 7} | | 7} | S( u Return the generated output.s s u i i i u Iiiiiiil �* i i u ii i i ( u sortedu MESSAGESu keysu appendu lenu structu packu arrayu tostring( u keysu offsetsu idsu strsu idu outputu keystartu
valuestartu koffsetsu voffsetsu o1u l1u o2u l2( ( u6 /opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyu generate9 s6
5
u generatec C s| d } d } | j d � r$ | } n
| d } | d k rW t j j | � d d } n y t | d � j � } WnE t k
r� } z% t | d t j
�t j d � WYd d } ~ Xn Xd } d } d } d }
x(| D] } | j | � } |
d 7}
| d d k r1| | k r1t
| |
| � d } d } n | d d � d
k r\d | k r\d } n | d d k rrq� n | j d � r| j d
� r| | k r�t
| |
| � | s�t � } | j |
j | � � j � } | r�| } q�q�n | } | d d � } d } }
d } n4| j d
� r�| | k r`t d | |
f d t j
�t j d � n | d d � } | d 7} d } n� | j d � rL| } | j d � r| s�t d | |
f d t j
�t j d � n | j d d � d } |
rI|
d 7}
qIqL| r9t d | |
f d t j
�t j d � n | d d � } n | j � } | sdq� n t j | � } | | k r�| | j | � 7} q� | | k r�|
| j | � 7}
q� t d | |
f d d t j
�t | d t j
�t j d � q� W| | k rt
| |
| � n t � } y t | d � j | � Wn8 t k
rw} z t | d t j
�WYd d } ~ Xn Xd S( Ni i u .poi u .mou rbu fileu latin-1u #u #,u fuzzyu msgidu msgid_plurali s u+ msgid_plural not preceded by msgid on %s:%di s u msgstru msgstr[u$ plural without msgid_plural on %s:%du ]u, indexed msgstr required for plural on %s:%di u Syntax error on %s:%du before:u wbFT( u endswithu Noneu osu pathu splitextu openu readlinesu IOErroru printu sysu stderru exitu decodeu addu
startswithu HeaderParseru parsestru get_content_charsetu Falseu Trueu splitu stripu astu literal_evalu encodeu generateu write( u filenameu outfileu IDu STRu infileu linesu msgu sectionu fuzzyu encodingu lnou lu msgidu msgstru pu charsetu is_pluralu output( ( u6 /opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyu makec s�
"
u makec C s< y5 t j t j d d � d d d d g � \ } } Wn5 t j k
rl } z t d | � WYd d } ~ Xn Xd } xt | D]l \ } } | d k r� t d � qz | d k r� t d t d t j �t j d � qz | d k rz | } qz qz W| st d d t j �t d d t j �d Sx | D] } t
| | � q!Wd S( Ni u hVo:u helpu versionu output-file=u -hu --helpi u -Vu --versionu msgfmt.pyu fileu -ou
--output-fileu No input file givenu) Try `msgfmt --help' for more information.( u -hu --help( u -Vu --version( u -ou
--output-file( u getoptu sysu argvu erroru usageu Noneu printu __version__u stderru exitu make( u optsu argsu msgu outfileu optu argu filename( ( u6 /opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyu main� s(
u mainu __main__( u __doc__u osu sysu astu getoptu structu arrayu email.parseru HeaderParseru __version__u MESSAGESu usageu addu generateu makeu mainu __name__( ( ( u6 /opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyu <module> s *m