LOCALE::PO4A::TRANSTRACTOR.3PM(1) User Contributed Perl Documentation >> Locale::Po4a::TransTractor - >>>>>>>>> >> po4a (PO for anything) >>>>>>>>gettext >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (>>>>>>>>>>>>>>>>>>>>>>>>>>) >>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>PO >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> po4a >>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>: - >>>>>>> - >>>>>>>>>PO >>>>> >>>>>>>>: - >>>>>>>>>>>>>>>>>>>>>>>>>> PO >>>>> - >>>>>>>>>>>>>>>>> PO >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>: >>>>>>>>-\ /---> >>>>>>>> \ / (>>>) +-> parse() >> ---------+ / \ >> PO --------/ \---> >> PO (>>>) >>>>>>>>>>>>>>>>>>>> parse() >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >> >>>>>>>>>> >>>>>>>> process() >>>>>>>>>>>new() >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> docheader() >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>po4a(7) > >>>>>>>>>>>> >>>>>>>>>>> >> >>>>>>"
" >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> '
' >>>>>>>>>>>>>>>>>>>>>>>>> sub parse { my $self = shift; PARAGRAPH: while (1) { my ($paragraph,$pararef)=("",""); my $first=1; my ($line,$lref)=$self->shiftline(); while (defined($line)) { if ($line =~ m/
/ && !$first--; ) { # Not the first time we see
. # Reput the current line in input, # and put the built paragraph to output $self->unshiftline($line,$lref); # Now that the document is formed, translate it: # - Remove the leading tag $paragraph =~ s/^
//s; # - >>>>>>>>>>>>>>>> # >>>>>>>>>>>>>>>>>>>>>> $self->pushline( "
"
. $self->translate($paragraph,$pararef)
);
next PARAGRAPH;
} else {
# Append to the paragraph
$paragraph .= $line;
$pararef = $lref unless(length($pararef));
}
# Reinit the loop
($line,$lref)=$self->shiftline();
}
# Did not get a defined line? End of input file.
return;
}
}
parse
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
document >>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
process(%)
>>>>>>po4a
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:
a. po_in_name >>>>>>>>> PO
>>>>>>>>>
b. file_in_name
>>>>>>>>>>>>>>>>>>>>>>>>>
c. >>>>>>>>>>
d. >>>>>>>>>>>>>>>>>>>>
e. >>>>>>>>>>> file_out_name
>>>>>> (>>>>>>>)
f. >>>> PO >>>>> po_out_name >>>>>>
(>>>>>>>)
new() >>>>>>>>>>>>> (>>>>>>):
file_in_name (@)
>>>>>>>>>>>>>>>>>>>>>>>>>>>
file_in_charset ($)
>>>>>>>>>>>>>>>>>>>>>>>>UTF-8>>>>>
file_out_name ($)
>>>>>>>>>>>>>>>>>>>>>>>
file_out_charset ($)
>>>>>>>>>>>>>>>>>>>>>>>>UTF-8>>>>>
po_in_name (@)
>>>>>>>> PO >>>>
(>>>>>>>>>>>>>>>>)
>>>>>>>>>>>>>
po_out_name ($)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
PO >>>>>>>>>>>>>
addendum (@)
>>>>>>>>>>>>>>>>>>>>>>>
addendum_charset ($)
>>>>>>>>>>>
new(%)
>> po4a
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
verbose ($)
>>>>>>>>>>>>
debug ($)
>>>>>>>>>>>>
wrapcol ($)
>>>>>>>>>>>>>>>>>>>>>76>>
>>>>>>>>>>>>>>>>>>
>>>>Po>>>>>>>>>>>>>>>>>>>>>>>>porefs,
copyright-holder, msgid-bugs-address, package-name, package-
version, wrap-po>>>
>>>>>>>>>>>>>
read($$$)
>>>>> "@{$self->{TT}{doc_in}}"
>>>>>>>>>>>>>>>>>>>
>>>>>2>>>>>>>>>1>>>>>>>>>>>>>>>>
* >>>>>>>>>>>>>
*
PO>>>>>>>>>>>>>>>>>>>>>>>>>>>
*
>>>>>>>>>>>>>>>>>>>>>>UTF-8>
>>>> "@{$self->{TT}{doc_in}}"
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
* >>> $textline
>>>>>>>>>>>>>>>>>>>>>>>>>
* >>> "$filename:$linenum"
>>>>>>>>>>>>>>>>>>>>>>"linenum">1>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
parse() >>>>>>>>>>>>
write($)
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
* "$self->docheader()"
>>>>>>>>>>>>>>>>>>>>>>>>
* "@{$self->{TT}{doc_out}}"
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
PO >>>>>>>
readpo($)
>>>>> PO >>(>>>>>>>>>)
>>>>>>>>>>>>>>>>>>>>>>>>>>>
writepo($)
>>>> PO
>>>>>>>>>>>>>>>>>>>>>
stats()
>>>>>>>>>>>>>>>>>>>>>>>msgfmt
--statistic
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>PO
>>>>>>>>>>>>>>>>>>>>>>msgfmt
>>>>>>>>>>>>>>>>>>>>>>>>>>Locale::Po4a::Po::stats_get
>>>>>>> PO
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:
[po4a >>>>>>>>>>>>...]
($percent,$hit,$queries) = $document->stats();
print "$percent\%>$queries>$hit>>>>>>>>>>>>>>\n";
>>>>>>>
addendum($)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>po4a(7)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;)
>>>>>>>>>>> null
>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>4>>>>>>>>>>>>>>>>>>Perl>shift/unshift>push/pop>>>>>>>>>
* Perl>shift>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
* Perl>unshift>>>>>>>>>>>>>>>>>>>>>>>>>>
* Perl>pop>>>>>>>>>>>>>>>>>>>>>>>>>>>
* Perl>push>>>>>>>>>>>>>>>>>>>>>>>
1>>>>>>>>>>>>>>>>2>>>>>>>>>>>>>>>>>>>>>>>>>>>shift>>>>>>>>>>>>>>>>>>>>>>push>>>>>>>>>>>>>>>>>>>>>>>>>
shiftline()
>>>>>>>>>>>>>>>>>"@{$self->{TT}{doc_in}}">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>2>>>>>>>>>>>>>>>>>>>"$filename:$linenum">>>>>>>>>>>
unshiftline($$)
>>>>>>>>shift>>>>>unshift>>>>>>>>>"{$self->{TT}{doc_in}}">>>>>>>>>
pushline($)
"{$self->{{TT}{doc_out}}">>>>>>>>>>>>>>
popline()
"{$self->{TT}{doc_out}}">>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
translate($$$)
>>>>>:
- >>>>>>>
- >>>>>>>>
(>>>>>>>>>>>>>>>>)
- >>>>>
(>>>>>>>>>>>>>>>>>>>>>>Locale::Po4a::Po::gettextization()
>>>>>>> po4a(7) > gettext >:
>>>>>>>>>>>?
>>>>>>>>>>)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:
$self->translate("string","ref","type",
'wrap' => 1);
wrap
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
wrapcol
>>>>>>>>>>>>TransTractor>>>>>>>>>
wrapcol >>76>>
>>>>>>>>>>>>>>>
comment
>>>>>>>>>>>>>>>>>
>>:
- >>>>>>>>> po_out > push >>>>
- >>>> doc_out
>>>>>>>>>>>>>>>>> (po_in
>>>>>>>>) >>>>>>
- >>>> po_out
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>
verbose()
TransTractor >>>>> verbose
>>>>>>>>>>>>>>>>>>
debug()
TransTractor >>>>> debug
>>>>>>>>>>>>>>>>>>
get_in_charset()
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
get_out_charset()
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
PO >>>>>>>>>>>>>>>>>>> PO
>>>>>>>>>>> "CHARSET"
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>
>>> TransTractor >>>>>>>>(debconf
>>>>>>>>.desktop >>>>>>>>)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:
- po_in_name (>>>>>>>>)
>>>>>>>>>>>>
- >>>>>>>>>>>>>>>>>>>>>>
- pushline_all
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>pushline>>>>>>>>>>>>map>>>>>>>>>>>>>
$self->pushline_all({ "Description[".$langcode."]=".
$self->translate($line,$ref,$langcode)
});
>>>>>>>>>>>>> ;)
>>
Denis Barbier