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 Poporefs, copyright-holder, msgid-bugs-address, package-name, package- version, wrap-po read($$$) "@{$self->{TT}{doc_in}}" 21 * * 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 4Perlshift/unshiftpush/pop * Perlshift * Perlunshift * Perlpop * Perlpush 12shiftpush shiftline() "@{$self->{TT}{doc_in}}"2"$filename:$linenum" unshiftline($$) shiftunshift"{$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 pushlinemap $self->pushline_all({ "Description[".$langcode."]=". $self->translate($line,$ref,$langcode) }); ;) Denis Barbier Martin Quinson (mquinson#debian.org) Jordi Vilalta Debian JP Documentation ML perl v5.38.2 2024-06-26 LOCALE::PO4A::TRANSTRACTOR.3PM(1)