我利用 codehigh 宏包的 demohigh 环境输入了抄录代码,并且在一行内可以显示代码编译后的结果。
但我发现这个环境抄录普通的tex代码没问题,但抄录带有 "#" 符号的def 的自定义宏代码就报错。
于是我换了 codehigh 宏包的 codehigh 环境抄录含有自定义宏的代码,没有报错,但不能在一行内显示编译的结果。
请问如何用 codehigh 宏包既能抄录含有 "#" 的自定义宏 def 代码,又能在一行内显示编译结果?谢谢!
测试没有问, 请提供 mwe
\documentclass{article}
\usepackage{codehigh}
\usepackage[margin=1cm]{geometry}
\begin{document}
\makeatletter
\begin{demohigh}
%\makeatletter
\def\@cmd[#1]#2{\textcolor{red}{#1} and (#2)}
\def\cmd{
\@ifnextchar[{\@cmd}{\@cmd[default]}
}
\cmd{aaa}\par
\cmd[bbb]{aaa}\par
\def\@cmd[#1]#2{\c@md{} and \textcolor{red}{#1} and (#2)}
\def\cmd#1{
\def\c@md{#1}\@ifnextchar[{\@cmd}{\@cmd[default]}
}
\cmd{aaa}{ccc}\par
\cmd{aaa}[bbb]{ccc}
%\makeatother
\end{demohigh}
\makeatother
\end{document}
编译环境
win11 + texlive2022 + xelatex && pdflatex
谢谢大佬
大佬,我这还是报错啊,复制的上面的代码
@u19850 报错信息: