LOCALE::PO4A::TRANSTRACTOR.3PM(1) User Contributed Perl Documentation Locale::Po4a::TransTractor -- -. po4a (PO ) (, , ) gettext , , . - po4a, , , PO -. , : - ; - 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--; ) { #

. # , # $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; } } parse document (public) , . , process(%) , po4a . . : ) PO, po_in_name ) , file_in_name ) ) ) file_out_name ( ) ) 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 ($) 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" <<'>> ("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\% ($hit $queries) .\n"; addendum($) , po4a(7), , . , , . ;) , . , , . shift/unshift push/pop Perl. * shift Perl . * unshift Perl . * pop Perl . * push Perl . , -- . : , shift, , 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: ?) . . : $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() , , TransTractor . debug() , , TransTractor . get_in_charset() (), get_out_charset() , (, , ). , . , PO. , <>, , . TransTractor , , , , debconf .desktop. : - po_in_name ( ) - , - pushline_all, pushline map- : $self->pushline_all({ "Description[".$langcode."]=". $self->translate($line,$ref,$langcode) }); , ;) Denis Barbier Martin Quinson (mquinson#debian.org) Jordi Vilalta perl v5.38.2 2024-06-26 LOCALE::PO4A::TRANSTRACTOR.3PM(1)