A function to output a man page as a pdf file

function man2pdf(){ man -t ${1:?Specify man as arg} | ps2pdf -dCompatibility=1.3 - - > ${1}.pdf; }
Tested on Fedora 12. This function will take a man page and convert it to pdf, saving the output to the current working directory. In Gnome, you can then view the output with "gnome-open file.pdf", or your favorite pdf viewer.

By: SuperFly
2009-11-27 12:49:49

What Others Think

frigging awesome =) when i ran it: man2pdf wget it created the pdf, but i also got this in the console: /usr/share/groff/1.20.1/tmac/ps.tmac:689: can't find macro file `europs.tmac' any significance?
nickleus · 627 weeks and 2 days ago
Take the entire text of that message and Google it. You will see some links to bug reports on Debian and other things: http://osdir.com/ml/debian-bugs-closed/2009-09/msg02551.html Subject: /usr/share/groff/1.20.1/tmac/ps.tmac:689: can't find macro file `europs.tmac' Package: groff-base Version: 1.20.1-5 Severity: minor When I do "man -t resize2fs > /dev/null" I get the error message in the Subject line. "Thre is, indeed no file by that name in the /usr filesystem. Nor can it be found with "dpkg-query --search eruops"." Not sure what the fix would be. Good Luck!
SuperFly · 627 weeks and 1 day ago
I prefer this one. if [ $# -eq 1 ] ; then to_pdf=$(which ps2pdf) if [ -z "$to_pdf" ] ; then to_pdf=$(which pstopdf) fi name="$1" case "$to_pdf" in *pstopdf) man -t "$name" | "$to_pdf" -i -o "$fname.pdf" ;; *ps2pdf) man -t "$name" | "$to_pdf" - "$name.pdf" ;; *) man -t "$name" > "$fname.ps" esac exit $? fi echo "Wrong number of parameters" exit 1
thebillywayne · 627 weeks ago
This is cool, but would it be possible to get the colors into the pdf as well?
Phlogiston · 626 weeks and 2 days ago

What do you think?

Any thoughts on this command? Does it work on your machine? Can you do the same thing with only 14 characters?

You must be signed in to comment.

What's this?

commandlinefu.com is the place to record those command-line gems that you return to again and again. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.

Share Your Commands

Stay in the loop…

Follow the Tweets.

Every new command is wrapped in a tweet and posted to Twitter. Following the stream is a great way of staying abreast of the latest commands. For the more discerning, there are Twitter accounts for commands that get a minimum of 3 and 10 votes - that way only the great commands get tweeted.

» http://twitter.com/commandlinefu
» http://twitter.com/commandlinefu3
» http://twitter.com/commandlinefu10

Subscribe to the feeds.

Use your favourite RSS aggregator to stay in touch with the latest commands. There are feeds mirroring the 3 Twitter streams as well as for virtually every other subset (users, tags, functions,…):

Subscribe to the feed for: