Your IP : 216.73.216.213


Current Path : /proc/242857/root/opt/alt/python33/lib64/python3.3/Tools/i18n/__pycache__/
Upload File :
Current File : //proc/242857/root/opt/alt/python33/lib64/python3.3/Tools/i18n/__pycache__/msgfmt.cpython-33.pyc

�
��f�c@s�dZddlZddlZddlZddlZddlZddlZddlmZdZ	ia
ddd�Zdd	�Zd
d�Z
dd
�Zdd�Zedkr�e�ndS(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.
iN(uHeaderParseru1.1ucCs@ttdtj�|r/t|dtj�ntj|�dS(Nufile(uprintu__doc__usysustderruexit(ucodeumsg((u6/opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyuusage)suusagecCs|r|r|t|<ndS(u.Add a non-fuzzy translation to the dictionary.N(uMESSAGES(uidustrufuzzy((u6/opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyuadd1s
uaddc	Csyttj��}g}d}}xc|D][}|jt|�t|�t|�tt|�f�||d7}|t|d7}q)Wd}ddt|�}|t|�}g}g}	xB|D]:\}
}}}
|||
|g7}|	|
||g7}	q�W||	}tjddd	t|�d
dt|�d
d	d	�}|tjd|�j�7}||7}||7}|S(uReturn the generated output.ssuiiiuIiiiiiil�*iiuiiii(	usorteduMESSAGESukeysuappendulenustructupackuarrayutostring(ukeysuoffsetsuidsustrsuiduoutputukeystartu
valuestartukoffsetsuvoffsetsuo1ul1uo2ul2((u6/opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyugenerate9s6

5
		

ugeneratecCs|d}d}|jd�r$|}n
|d}|dkrWtjj|�dd}nyt|d�j�}WnEtk
r�}z%t|dt	j
�t	jd�WYdd}~XnXd}d}d}	d}
x(|D] }|j|	�}|
d7}
|dd	kr1||kr1t
||
|�d}d}n|dd�d
kr\d|kr\d}n|dd	krrq�n|jd�r|jd
�r||kr�t
||
|�|s�t�}|j|
j|	��j�}|r�|}	q�q�n|}|dd�}d}}
d}n4|jd
�r�||kr`td||
fdt	j
�t	jd�n|dd�}|d7}d}n�|jd�rL|}|jd�r|s�td||
fdt	j
�t	jd�n|jdd�d}|
rI|
d7}
qIqL|r9td||
fdt	j
�t	jd�n|dd�}n|j�}|sdq�ntj|�}||kr�||j|	�7}q�||kr�|
|j|	�7}
q�td||
fddt	j
�t|dt	j
�t	jd�q�W||krt
||
|�nt�}yt|d�j|�Wn8tk
rw}zt|dt	j
�WYdd}~XnXdS(Niiu.poiu.mourbufileulatin-1u#u#,ufuzzyumsgidumsgid_pluralisu+msgid_plural not preceded by msgid on %s:%disumsgstrumsgstr[u$plural without msgid_plural on %s:%du]u,indexed msgstr required for plural on  %s:%diuSyntax error on %s:%dubefore:uwbFT(uendswithuNoneuosupathusplitextuopenu	readlinesuIOErroruprintusysustderruexitudecodeuaddu
startswithuHeaderParseruparsestruget_content_charsetuFalseuTrueusplitustripuastuliteral_evaluencodeugenerateuwrite(ufilenameuoutfileuIDuSTRuinfileulinesumsgusectionufuzzyuencodingulnoulumsgidumsgstrupucharsetu	is_pluraluoutput((u6/opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyumakecs�	
 

	"		
	

	

	umakecCs<y5tjtjdd�ddddg�\}}Wn5tjk
rl}ztd|�WYdd}~XnXd}xt|D]l\}}|dkr�td�qz|dkr�tdtdtj�tj	d�qz|dkrz|}qzqzW|stddtj�tddtj�dSx|D]}t
||�q!WdS(NiuhVo:uhelpuversionuoutput-file=u-hu--helpiu-Vu	--versionu	msgfmt.pyufileu-ou
--output-fileuNo input file givenu)Try `msgfmt --help' for more information.(u-hu--help(u-Vu	--version(u-ou
--output-file(ugetoptusysuargvuerroruusageuNoneuprintu__version__ustderruexitumake(uoptsuargsumsguoutfileuoptuargufilename((u6/opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyumain�s( 


umainu__main__(u__doc__uosusysuastugetoptustructuarrayuemail.parseruHeaderParseru__version__uMESSAGESuusageuaddugenerateumakeumainu__name__(((u6/opt/alt/python33/lib64/python3.3/Tools/i18n/msgfmt.pyu<module>s *m