Actually, I find that when I reload the notebook I have to re-run all the markdown cells (after executing the code cell with the IPython.display.Latex object), otherwise any LaTeX code in the document using the macros doesn't display properly.
In the first cell of the notebook I have:
import IPython.display
IPython.display.display_latex(IPython.display.Latex(filename="LaTeXmacros"))
If I run this cell and then make markdown cells using my macros, it works. When I reload the notebook, none of my macros are rendered properly (even if I re-run the top cell) until I re-run each markdown cell.
Is there a way to avoid this?