Pod::Manual

Yanick on 2007-07-15T01:27:00

A while ago, I hacked together a way to gather many pod files into a single pdf file. Well, finally I got around cleaning up the code and released it as Pod::Manual.

It's still very muchly alpha quality, but the basics seem to work. For example, the following works (at least on my machine)[*]:

use Pod::Manual;

my $manual = Pod::Manual->new({ title => 'Catalyst' });

$manual->add_chapter( $_ ) for qw/
    Catalyst::Manual::About
    Catalyst::Manual::Actions
    Catalyst::Manual::Cookbook
    Catalyst::Manual::DevelopmentProcess
    Catalyst::Manual::Internals
    Catalyst::Manual::Intro
    Catalyst::Manual::Plugins
    Catalyst::Manual::Tutorial
    Catalyst::Manual::Tutorial::Intro
    Catalyst::Manual::Tutorial::CatalystBasics
    Catalyst::Manual::Tutorial::BasicCRUD
    Catalyst::Manual::Tutorial::Authentication
    Catalyst::Manual::Tutorial::Authorization
    Catalyst::Manual::Tutorial::Debugging
    Catalyst::Manual::Tutorial::Testing
    Catalyst::Manual::Tutorial::AdvancedCRUD
    Catalyst::Manual::Tutorial::Appendices
    Catalyst::Manual::WritingPlugins 
/;

$manual->save_as_pdf( 'catalyst_manual.pdf' );

At this stage of the game, bug reports and feature requests would be very welcome. As well as suggestions for other example manuals.

[*] caveat: for the moment you need TeTeX installed to generate pdf documents. One of the items on my todo list is to allow for other means to generate the pdf (jadetex, FOP, etc)


groff?

Dom2 on 2007-07-15T13:43:57

You can use groff for this sort of thing.

  % for pod in File::Basename File::Path
  > do
  >   perldoc -n groff $pod
  > done > pods.ps
That gets you a postscript file, pods.ps, which you can convert to PDF simply using ps2pdf (or pstopdf on a mac).

Re:groff?

Yanick on 2007-07-16T14:14:05

Oh, but it's not the PDF conversion per se that is the problem. Rather, it's the PDF conversion with all sort of printed media goodiness (table of content, numbered pages, headers, index, etc).