matlab-prettifier:如何插入绿色点作为预断参数?

matlab-prettifier:如何插入绿色点作为预断参数?

在这个 MWE 中,我怎样才能将 \ldots参数prebreak涂成绿色而不产生错误?

\RequirePackage{luatex85}
\documentclass{article}
\usepackage[tuenc]{fontspec}
\usepackage[numbered]{matlab-prettifier}
\usepackage{amsmath,amssymb,mathdots,xcolor}


\lstset{
    language = Matlab,
    style = Matlab-editor,
    breakatwhitespace = false,
    prebreak=\ldots
}

\usepackage{filecontents}
\begin{filecontents*}{sample.m}
theta2= atan( abs( BP{nxBP}(1,3)-BP{nxBP-1}(size(BP{nxBP-1},1),3) ) / ( abs( BP{nxBP}(1,2)-BP{nxBP-1}(size(BP{nxBP-1},1),2) ) ) ); % some comment
\end{filecontents*}

\begin{document}
    \lstinputlisting{sample.m}
\end{document}

答案1

我试了一下prebreak={\color{green}\ldots},结果出错了。我先把绿点塞进保存框里,这样就成功了:

\newsavebox{\dotbox}
\sbox{\dotbox}{{\color{green}\ldots}}   

\lstset{
    language = Matlab,
    style = Matlab-editor,
    breakatwhitespace = false,
    prebreak={\usebox{\dotbox}}
}

请注意,当我测试时,我从您的代码中删除了一些软件包(luatex85、fontspec),以便在我的电脑上进行编译。不过,我并不认为这会影响您的问题。

相关内容