What about trying this:  yelp man:firewall-cmd

. . . and then using yelp to find and print the appropriate page? I am
pretty sure that yelp can be used to print (and I know that you can use
it to at least view man pages).

Of course, this is all moot if you are working from a server or don't
have yelp installed.

Jim

On Fri, Jun 24, 2016, at 04:28 PM, Mark Stodola wrote:
> On 06/24/2016 03:30 PM, Ken Teh wrote:
> > Does anyone know enough groff to help me print this man page?
> >
> >
> > # man -t firewall-cmd > /tmp/firewall-cmd.ps
> > <standard input>:397: warning [p 4, 4.4i]: can't break line
> > <standard input>:434: warning [p 4, 6.8i]: can't break line
> > <standard input>:446: warning [p 4, 7.9i]: can't break line
> > error: page 11: table will not fit on one page; use .TS H/.TH with a
> > supporting macro package
> 
> I haven't tried generating a postscript in a while, but there is a 
> man2html that does a pretty decent job.  Unfortunately it doesn't like 
> gzipped man pages it seems, so it might be easiest to copy the 
> firewall-cmd.1.gz (or whatever section it is) to /tmp, gunzip it, then 
> run man2html on it.  You could also get fancy with 'man' options and 
> piping things together if you want.
> 
> Digging in an old conversion script I have, I have done:
> groff -mandoc source_file > dest_file.ps
> 
> The default is ps output, so it looks like the same command as your 'man 
> -t'.
> 
> Experience from compiling docbook/xml contents, the warnings/errors you 
> are seeing are familiar.  Rewriting an entire table structure just to 
> get a postscript seems a waste of time.