LOCALE::PO4A::TRANSTRACTOR.3PM(1) User Contributed Perl Documentation >> Locale::Po4a::TransTractor - >>>>>>>> >> Po4a (PO For Anything) >>>>>>>>>>>>>>>>>>>> gettext >>>>>>(>>>>>>>>>>>>>)> >>>>>> po4a >>>>>>>>>>>>>>>>>>>>>>>>>>>> PO >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> - >>>>>>; - >>>>>>>>> PO >>> >>>>>>>>> - >>> PO >>>>>>>>>>>>>>>>>>>>; - >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> PO >>>>>>> >>>>>>>>>>>> >>>> --\ /---> >>>> \ / (>>>) +-> >>() >> -----+ / \ >> PO --------/ \---> >> PO (>>>) >>>>>>>>>> parse() >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> INTERNAL FUNCTIONS >>>>>>>>>>>>>>>>>>>>>>>>> SYNOPSIS>>>>>>>>>> >>>>>>> process() >>>>>>>>>>>>> new() >>>>>>>>>>>>>>>>>>>>>>>>>>> docheader() >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> po4a(7) >> Educating developers about translations >>> >> >>>>>>>> "
" >>>>>>>>>>>>>>>>>>>>>>>>>> "
" >>>>>>>>>>>>>>>>>>>>>>>>>>> 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--; ) { # >>>>>>>>>>
> # >>>>>>>>>>> # >>>>>>>>> $self->unshiftline($line,$lref); # >>>>>>>>>>>>> # - >>>>>> $paragraph =~ s/^
//s; # - >>>>>>>>(>>>)> # >>>>>>>(>>>) $self->pushline( "
"
. $self->translate($paragraph,$pararef)
);
next PARAGRAPH;
} else {
# >>>>>>>
$paragraph .= $line;
$pararef = $lref unless(length($pararef));
}
# >>>>>>>
($line,$lref)=$self->shiftline();
}
# >>>>>>>>>>>>>>>>>>
return;
}
}
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
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 ($)
Charset used in the input document (if it isn't specified, use
UTF-8).
file_out_name ($)
>>>>>>>>>>>>>>>>>
file_out_charset ($)
Charset used in the output document (if it isn't specified, use
UTF-8).
po_in_name (@)
>>>>>>>>>> PO
>>>>>>>>>>>>>>>>>>>>>>>
po_out_name ($)
>>>>>>>>>>> PO
>>>>>>>>>>>>>>>>>>>>>
addendum (@)
>>>>>>>>>>>>>>>>
addendum_charset ($)
>>>>>>>
new(%)
>>>> po4a >>>>>>>>
(>>>>>>>>>>>)>
verbose ($)
>>>>>>>
debug ($)
>>>>>
wrapcol ($)
The column at which we should wrap text in output document
(default: 76).
The negative value means not to wrap lines at all.
Also it accepts next options for underlying Po-files: porefs,
copyright-holder, msgid-bugs-address, package-name, package-
version, wrap-po.
>>>>>>
read($$$)
Add another input document data at the end of the existing array
"@{$self->{TT}{doc_in}}".
This function takes two mandatory arguments and an optional one.
* The filename to read on disk;
* The name to use as filename when building the reference in the
PO file;
* The charset to use to read that file (UTF-8 by default)
>>> "@{$self->{TT}{doc_in}}"
>>>>>>>>>>>>
>>>>>>>>>>>> *>> $textline
>>>>>>>>>>>>> *>>
"$filename:$linenum" >>>>>>>>>>
"reference" ("linenum" > 1 >>)>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
parse() >>>
write($)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
* "$self->docheader()" >>>>>>>>>>>>>
* "@{$self->{TT}{doc_out}}"
>>>>>>>>>>>>>>>
>> PO >>
readpo($)
>>>>>>>>>>>>>>>>>>>>>>>>
PO>>>>>>>>>
writepo($)
>>>> PO >>>>>>>>>>
stats()
>>>>>>>>>>>>>>>>>>>>>>>>>>
msgfmt --statistic
>>>>>>>>>>>>>>>>>> PO
>>>>>>>>>>>>>>> msgfmt
>>>>>>>>>>>>>>>>> PO >>>
Locale::Po4a::Po::stats_get >>>>>>>>>>>
[>>>> po4a >>...]
($percent,$hit,$queries) = $document->stats();
print ">>>>> $percent\% ($hit from $queries) >>>>>\n";
>>>>
addendum($)
>>>
po4a(7)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Perl
> shift/unshift > push/pop >>>>>
* Perl shift >>>>>>>>>>>>>>>>>>
* Perl unshift >>>>>>>>>>>>>>>>>
* Perl pop >>>>>>>>>>>>>>>>>>>
* Perl push >>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
input >>>>>>>>>>>>shift >>>>>>>
output >>>>>>>>>>>>>>>> push >>>
shiftline()
>>>>>> "@{$self->{TT}{doc_in}}"
>>>>>>>>>>>>>>>>
(>>>>>)>>>>>>>>>>>>>>>>>>>
"$filename:$linenum" >>>
unshiftline($$)
>>>>>>>>>>>>>>>>>>>>>>
"{$self->{TT}{doc_in}}" >>>>
pushline($)
>>>>> "{$self->{TT}{doc_out}}" >>>>
popline()
> "{$self->{TT}{doc_out}}" >>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>>>
translate($$$)
>>>>>
- >>>>>>
- >>>>>> (>>>>>>>>>)
- >>>>>>(>>>>>>>>>>>>>>
Locale::Po4a::Po::gettextization() >>>>>>>>
po4a(7)>Gettextization: how does it work? >>)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$self->translate("string","ref","type",
'wrap' => 1);
wrap
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
wrapcol
the column at which we should wrap (default: the value of
wrapcol specified during creation of the TransTractor or 76).
The negative value will be substracted from the default.
comment
>>>>>>>>>>>>
>>>
- >>>>>>>>>>>> po_out>
- >>>>>>>(> po_in
>>>)>>>>>>>>>> doc_out>
- >>>>>>> po_out
>>>>>>>>>>>>>>>>>>>>>
>>>>
verbose()
>>>>>>>>>>>>>>>>> verbose
>>>
debug()
>>>>>>>>>>>>>>>>>>>>>>
get_in_charset()
This function return the charset that was provided as master
charset
get_out_charset()
>>>>>>>>>>>>>>>>>>>>(>>>>>>>>>>>>>>>>>>>>>>)>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
PO >>>>>>>>> PO >>>>>
"CHARSET">>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
debconf >>> .desktop >>>
>>>>>>>>>>>>>>
- >>>>> po_in_name (>>>>>>>)
- >>>>>>>>>>>>>>>
- >>>>>>>>>>>>> pushline_all
>>>>>>>>>>>>>>>>>> pushline>
$self->pushline_all({ "Description[".$langcode."]=".
$self->translate($line,$ref,$langcode)
});
>>>>>> ;)
>>
Denis Barbier