Perldoc update

This commit is contained in:
acli 2004-03-01 18:16:30 +00:00
parent 19a05db1f5
commit 15ecec16d9

View file

@ -6,7 +6,7 @@
=head1 NAME =head1 NAME
tmpl_process3.pl - Experimental version of tmpl_process.pl tmpl_process3.pl - Alternative version of tmpl_process.pl
using gettext-compatible translation files using gettext-compatible translation files
=cut =cut
@ -348,27 +348,68 @@ exit 0;
=head1 DESCRIPTION =head1 DESCRIPTION
This is an experimental version of the tmpl_process.pl script, This is an alternative version of the tmpl_process.pl script,
using standard gettext-style PO files. Note that the behaviour using standard gettext-style PO files. While there still might
of this script should still be considered unstable. be changes made to the way it extracts strings, at this moment
it should be stable enough for general use; it is already being
used for the Chinese and Polish translations.
Currently, the create, update, and install actions have all been Currently, the create, update, and install actions have all been
reimplemented and seem to work. reimplemented and seem to work.
=head2 Features
=over
=item -
Translation files in standard Uniforum PO format.
All standard tools including all gettext tools,
plus PO file editors like kbabel(1) etc.
can be used.
=item -
Minor changes in whitespace in source templates
do not generally require new strings to be re-translated.
=item -
Able to handle <TMPL_VAR> variables in the templates;
<TMPL_VAR> variables are usually extracted in proper context.
=item -
Able to handle text input and radio button INPUT elements
in the templates; these INPUT elements are also usually
extracted in proper context.
=item -
Automatic comments in the generated PO files to provide
even more context (line numbers, and the names and types
of the variables).
=item -
Using the PO format also means translators can add their
own comments in the translation files, if necessary.
=item -
Create, update, and install actions are all based on the
same scanner module. This ensures that when installing the
translation file, nothing that should not be translated is
accidentally translated.
=back
=head1 NOTES
The create action calls xgettext.pl to do the actual work; The create action calls xgettext.pl to do the actual work;
the update action calls xgettext.pl and msgmerge(1) to do the the update action calls xgettext.pl and msgmerge(1) to do the
actual work. actual work.
The script can detect <TMPL_VAR> directives embedded inside what
appears to be a full sentence (this actual work being done by
TmplTokenizer(3)); these larger patterns appear in the translation
file as c-format strings with %s.
Whitespace in extracted strings are folded to single blanks, in
order to prevent new strings from appearing when minor changes in
the original templates occur, and to prevent overly difficult to
read strings in the PO file.
=head1 BUGS =head1 BUGS
xgettext.pl must be present in the current directory; the xgettext.pl must be present in the current directory; the
@ -381,12 +422,15 @@ generate GNU PO files properly; a couple of workarounds have
been written in TmplTokenizer and more is likely to be needed been written in TmplTokenizer and more is likely to be needed
(e.g., to get rid of the "Strange line" warning for #~). (e.g., to get rid of the "Strange line" warning for #~).
This script may not work in Windows.
There are probably some other bugs too, since this has not been There are probably some other bugs too, since this has not been
tested very much. tested very much.
=head1 SEE ALSO =head1 SEE ALSO
xgettext.pl, xgettext.pl,
TmplTokenizer.pm,
msgmerge(1), msgmerge(1),
Locale::PO(3), Locale::PO(3),
translator_doc.txt translator_doc.txt