literate 的替换选项无法处理方括号?

literate 的替换选项无法处理方括号?

我正在使用matlab-pretifier将一些 Matlab 代码添加到附录中,我想用 替换 matlab 代码中的单位 [g/cm^3] $\mathrm{\left[g \cdot {cm}^{-3}\right]}$。为此,我使用 下的 literate 选项\lstinputlisting。但是,literate 似乎无法读取方括号。我希望得到一些帮助来解决这个问题..............

这里是 MWE:

\documentclass{article}

\usepackage[cp1252]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[framed,numbered]{matlab-prettifier}

\begin{document}

\lstset{
  language=Matlab,
  style=Matlab-editor,
  basicstyle=\mlttfamily\footnotesize,
  literate=
    {°}{\textdegree{}}1
    {ö}{{\"o}}1
    {é}{{\'e}}1
    {[g/cm^3]}{{$\mathrm{\left[g \cdot {cm}^{-3}\right]}$}}7
}

\lstinputlisting[]{matlab_code.m}

\end{document}

...这里是 .m 代码:

% ----------------------------
% Rö and Mé (T = 23°C); Mass density [g/cm^3]
var_1 = 10;

相关内容