LaTeX. Греческие буквы в листингах
LaTeX. Греческие буквы в листингах.
Содержание
1 Общая информация
- В качестве пакета для листингов будем рассматривать
minted
.
2 Использование Unicode
- При использовании Unicode можно в листингах использовать настоящие греческие символы:
\begin{minted}{python} ε = … μ = … n = … \end{minted}
- При этом необходимо использовать компиляторы, понимающие Unicode:
xelatex
иlualatex
.
3 Не-unicode компиляторы
- При использовании не-unicode компиляторов (например,
pdflatex
), необходимо обозначать греческие буквы командными последовательностями. - Возможно использовать пакет
textgreek
:\usepackage{textgreek}
- При этом греческие символы в листингах набираются в ограничителях.
- Ограничители задаются опцией
escapeinside
для minted:\begin{minted}[escapeinside=||]{python} |\textepsilon| = … |\textmu| = … n = … \end{minted}
- Ограничители
escapeinside
не срабатывают в комментариях и строках. - Можно обойти проблему со строками, задав оператор, заключающий аргумент в кавычки, заданные с помощью внутренних команд minted.
- Зададим оператор:
\newcommand{\mintescapestring}[1]{\PYG{l+s}{\PYGZsq{}}\PYG{l+s}{#1}\PYG{l+s}{\PYGZsq{}}}
- Тогда его можно применять следующим образом:
\begin{minted}[escapeinside=||]{python} |\texttheta| = sp.Symbol(|\mintescapestring{\texttheta}|, real=True) (|\texttheta|*i).exp() \end{minted}
- В кодировке unicode это выглядит следующим образом:
\begin{minted}{python} θ = sp.Symbol('θ', real=True) (θ*i).exp() \end{minted}