1.9 KiB
1.9 KiB
We provide a way to syntax-highlight Lean code in LaTeX documents.
It requires a Python package Pygments
and a LaTeX package minted
.
Python Package: Pygments
Checkout Pygments development repository and build Pygments:
hg clone https://bitbucket.org/birkenfeld/pygments-main/
cd pygmentsd-main
make mapfiles
sudo ./setup.py install
LaTeX package: minted
Save the latest version of minted.sty at the working directory.
How to use them (example)
Please save the following sample LaTeX file as test.tex
:
\documentclass{article}
\usepackage{minted}
\setminted{encoding=utf-8}
\usepackage{fontspec}
\setmainfont{FreeSerif}
\setmonofont{FreeMono}
\usepackage{fullpage}
\begin{document}
\begin{minted}[mathescape,
linenos,
numbersep=5pt,
frame=lines,
framesep=2mm]{Lean}
theorem mul_cancel_left_or {a b c : ℤ} (H : a * b = a * c) : a = 0 ∨ b = c :=
have H2 : a * (b - c) = 0, by simp,
have H3 : a = 0 ∨ b - c = 0, from mul_eq_zero H2,
or.imp_or_right H3 (assume H4 : b - c = 0, sub_eq_zero H4)
\end{minted}
\end{document}
You can compile test.tex
by executing the following command:
xelatex --shell-escape test
Some remarks:
xelatex
is required to handle unicode in LaTeX.--shell-escape
option is needed to allowxelatex
to executepygmentize
in a shell.
Contribute
Please fork Leonardo de Moura's Pygments repository, improve it, and make a pull-request.