Try the new perldoc

I took over maintenance of Pod-Perldoc, and with the help of a lot of people, I'm ready to merge it into the perl sources. There aren't major new features or a change in structure. I applied a lot of patches. Pod-Perldoc-3.15_12 is on CPAN so you can play with it. This next release fixes 15 old RT tickets, some of them major problems but most of them quick fixes that I merely needed to apply. This week is a good time to test it as the perl sources have a contentious code freeze before Perl 5.16.

The biggest change gets rid of pod2man, which perldoc was using before it turned into the Pod::Man module. Now that it's a module, we can just call it directly. I think that mostly works now, but please test it. See if you can read all of perlfunc.

The work doesn't end here, though. The next interesting feature would get rid of groff. On the unix-like systems, perldoc wants to use groff. I, with encouragement from Mark Allen, think we can do better. Instead of making the default output type a man page, we can output something much simpler, perhaps using ANSI stuff. The manpage stuff would still be there, just as it is now, but it wouldn't be the default. That's not going to make it into Perl 5.16 though.

Besides that, there are still some wish list items in the RT queue.


There are already alternatives: Pod::Text::Overstrike and Pod::Text::Termcap in the podlators distribution. Together with Pod::Perldoc::ToTextOverstrike one can set the environment variable:


and get a different renderer when using perldoc.

My impressions from using Overstrike:

  • It's faster than the default pod2man.
  • There's a chance to get Unicode working (I think this is not possible with most or ven all nroff implementations).
  • Some formatting stuff known from nroff is missing here, e.g. hyphenation.

Thanks for the pointers! I have an experimetnal branch of Pod::Perldoc on github exploring the Pod::Text::* family

Leave a comment

About brian d foy

user-pic I'm the author of Mastering Perl, and the co-author of Learning Perl (6th Edition), Intermediate Perl, Programming Perl (4th Edition) and Effective Perl Programming (2nd Edition).