我想编写一些 LaTeX 代码,并且不想重复,我希望它能用于按原样显示该特定代码片段及其排版版本,并将它们并排显示。
我脑海中的解决方案涉及创建一个命令,该命令将接受一个必需参数,即我的 LaTeX 代码;并且该命令将使用其参数在某些verbatim
类似环境内显示它,在该环境中它将保持原样,并在外部进行排版。
但是,如下所示的操作不起作用:
\newcommand{\codewithoutput}[1]
{
\begin{verbatim}
#1
\end{verbatim}
#1
}
就是这样,这是我能做到的最好的了。过去 2 个小时里,我完全被困在这里了。
由于我正尝试在此显示 LaTeX 代码,因此\texttt[1]
我认为使用或类似的东西都无济于事。
答案1
该tcolorbox
包可以在以高度可配置的方式调用时很好地显示文字 LaTeX 代码及其输出,具体取决于环境的参数tcblisting
。此环境默认显示LaTeX
文字代码,但编码/脚本等语言也可以更改为底层listings
包已知的任何语言(或minted
,如果需要)
此外,它还允许使用库来记录 LaTeX 代码documentation
(我也将它用作我个人软件包的文档工具)
请注意,当然,使用完整的文档来展示LaTeX
代码要不同得多(而且困难)。
\documentclass{article}
\usepackage[most]{tcolorbox}
\begin{document}
\begin{tcblisting}{% Some options here
}
\newcommand{\codewithoutput}[1]
{
This is a nice command and has the argument #1
}
\codewithoutput{\LaTeX}
\end{tcblisting}
% With some configuration of the tcblisting environment:
\begin{tcblisting}{enhanced jigsaw,colback=yellow!40!white,drop lifted shadow}
\newcommand{\codewithoutput}[1]
{
This is a nice command and has the argument #1
}
\codewithoutput{\LaTeX}
\end{tcblisting}
\end{document}