The official iPython Notebook documentation states that to convert a notebook to PDF, you should use your browser's "Print to PDF" capability. The problem is that that chops charts and graphs in half due to PDF pagination (unless you are able to configure a custom PDF paper size e.g. 60 inches long).

A command-line utility, nbconvert, which will eventually be merged into IPython but is not yet, nicely converts Notebooks to PDF. It even includes nice instructions on installing on a Mac, but the instructions are only 98% complete. Below are the missing steps:

Download the nbconvert package as a Zip and unzip to your home directory.

The export PYTHONPATH=~/nbconvert-master/nbconvert/utils is supposed to take care of lexers since lexers.py is in that directory. If the iPython 0.13 archival zip file expanded into a directory that is named differently than the non-unavailable 0.13 release zip file, you may need to adjust my suggested PYTHONPATH.

OK, glad you got it working. That's weird because I just now downloaded the archive I linked, and there is an nbconvert/utils/lexers.py in there. It's just that the parent directory has the SHA code instead of "master", making it

Actually, to be clear, the lexers.py module is in the converters directory. It is referenced by the utils.py module. That file was missing from what I downloaded and I checked Brad Reisfeld's repo and it's missing from there as well. I don't know where it broke which is why I went back a bit farther and used someone else's fork.

HiI have tried to download nbconvert but the github page says it is now part of ipython package and it does not contain any code to download anymore. The issue is, even though my ipython is up to date (just did that) I dont have any nbconvert in it. Could you shed some light on that?

Did you following the link from the July 15 update I posted at the top of this blog article? You can download the last version of nbconvert before it was deleted/moved from https://github.com/ipython/nbconvert/archive/173bb08dd86d02a7485801969c94d4816913cd09.zip

You can also try the latest `nbconvert` by cloning the latest IPython from Github (see below). You can then install just the `notebook` part to use the latest `notebook` (include `nbconvert`) without upgrading your entire IPython instance.

So, first clone to a working directory somewhere:

git clone https://github.com/ipython/ipython.git

Then, run the following to install just the new notebook:

pip install -e .[notebook]

The latest version of `nbconvert` includes some great features, including rendering Markdown notebook cells into Latex :D