minted escapeinside 适用于除 LaTeX 之外的所有受支持的语言。

minted escapeinside 适用于除 LaTeX 之外的所有受支持的语言。

我想在转义的内容中添加一些数学符号,这minted对于 Python 等语言很有效,但对 LaTeX 则不行。示例代码:

\documentclass{article}
\usepackage{minted}

\begin{document}

\begin{minted}[escapeinside=||]{latex}
|$\theta$|
\end{minted}

\begin{minted}[escapeinside=||]{py}
|$\theta$|
\end{minted}

\end{document}

输出为:

escapeinside 不适用于 latex

有什么提示吗?

答案1

一个尴尬的解决方法:

\documentclass{article}
\usepackage{minted}

\begin{document}

\newcommand{\mytheta}{$\theta^2$}
\begin{minted}[escapeinside=||]{latex}
|this is \mytheta.|
\end{minted}

\begin{minted}[escapeinside=||]{py}
|$\theta$|
\end{minted}

\end{document}

输出为:

在此处输入图片描述

仍在尝试寻找更好的方法...

答案2

显然,问题在于切换到数学模式。

一个不太丑陋的解决方法:

\documentclass{article}
\usepackage{minted}

\newcommand{\mmath}[1]{$#1$}

\begin{document}

\begin{minted}[escapeinside=||]{latex}
|\mmath{\theta}|
\end{minted}

\begin{minted}[escapeinside=||]{py}
|$\theta$|
\end{minted}

\end{document}

在此处输入图片描述

相关内容