LOCALE:...:POD.3PM(1)

πŸ’– NAME πŸ’–

Locale::Po4a::Pod β€” bestie, this is the module that converts POD data from/to PO files ✨ like it literally takes your Perl docs and makes them translatable, no cap 🫢


🌸 SYNOPSIS 🌸

use Locale::Po4a::Pod;
my $parser = Locale::Po4a::Pod->new();

# Read POD from STDIN and write to STDOUT.
$parser->parse_from_filehandle;

# Read POD from file.pod and write to file.txt.
$parser->parse_from_file ('file.pod', 'file.txt');

okay so that's the whole vibe check right there πŸ‘‘ create the parser, then either slurp from the handle or point it at two files and let it cook πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

So Locale::Po4a::Pod is a module whose whole personality is helping you translate documentation written in the POD format β€” which, iykyk, is the preferred language for documenting Perl β€” into other [human] languages 🌈 literally translating docs for actual humans, iconic behavior fr fr.

heads up bestie β€” a new SimplePod parser is now available. Please consider using it instead of the current Pod module. And if you encounter any bugs, your reports would be greatly appreciated πŸ’– like please tell us, we're begging πŸ™ˆ

That warning message up there will be displayed for a transitional period. To disable it, set the no-warn-simple option. periodt πŸ’…


πŸ”₯ STATUS OF THIS MODULE πŸ”₯

ngl, the author thinks this module is rock stable β€” and there is only one known bug with /usr/lib/perl5/Tk/MainWindow.pod (and some other pages, see below) which contains:

C<" #n">

Lack of luck 😭 in the po4a version, this was split on the space by the wrapping. As result, in the original version, the man page contains:

 " #n"

and mine contains:

 "" #n""

which is logic since C<foobar> is rewritten "foobar" β€” the way that actually makes sense when you think about it 🧚

Complete list of pages having this problem on the author's box (from 564 pages; note that it depends on the chosen wrapping column) πŸ‘‡

/usr/lib/perl5/Tk/MainWindow.pod
/usr/share/perl/5.8.0/overload.pod
/usr/share/perl/5.8.0/pod/perlapi.pod
/usr/share/perl/5.8.0/pod/perldelta.pod
/usr/share/perl/5.8.0/pod/perlfaq5.pod
/usr/share/perl/5.8.0/pod/perlpod.pod
/usr/share/perl/5.8.0/pod/perlre.pod
/usr/share/perl/5.8.0/pod/perlretut.pod

like that's eight whole files living rent-free in the bug list πŸ’€


πŸŽ€ INTERNALS πŸŽ€

As a derived class from Pod::Parser, Locale::Po4a::Pod supports the same methods and interfaces. See Pod::Parser for all the details β€” but briefly, one creates a new parser with Locale::Po4a::Pod->new() and then calls either parse_from_filehandle() or parse_from_file() 🫢 that's it, that's the whole flow, slay.


⭐ SEE ALSO ⭐

Pod::Parser, Locale::Po4a::Man(3pm), Locale::Po4a::TransTractor(3pm), po4a(7)

go read those too bestie, they're all part of the same friend group πŸ’œ


πŸ‘‘ AUTHORS πŸ‘‘

Denis Barbier <barbier@linuxfr.org>
Martin Quinson (mquinson#debian.org)

two icons, we stan πŸ˜­πŸ’–


Copyright Β© 2002 SPI, Inc.

This program is free software; you may redistribute it and/or modify it under the terms of GPL v2.0 or later (see the COPYING file).


and that's the page, bestie πŸŽ€ this little beauty is perl v5.42.0, dated 2025-07-13, and it lives at LOCALE:...:POD.3PM(1) β€” go forth and translate some POD, you've got this πŸ’…βœ¨
πŸ“¦ where this page comes from