我的目标是并排显示源代码(awk、Python、R 和 SAS)和文本(它们的输出)。两者都是从外部文件加载的,有时可能很长(分页是不可避免的),源代码应该语法突出显示。即使有分页符,源代码也应该留在左侧,输出也应该留在右侧。
我正在使用 listing 包来突出显示它的语法。
我找不到在分页符时能够正确运行的环境。
我已经尝试过的一些方法:
- 多色:这个环境很好,直到出现分页符(左侧分页到右侧,把所有东西都弄乱了)
- 小页面:尚未分页
答案1
我最终使用环境解决了我的问题(正如我在评论中提到的那样)paracol
。
\documentclass{minimal}
\usepackage{paracol}
\begin{document}
\begin{paracol}{2}
Left
\switchcolumn
Right
\end{paracol}
\end{document}
不过,背景颜色需要一些修补。我已经使用该mdframed
包替换了列表背景。
所以最后平均能量损失已经到了这个地步:
\documentclass{minimal}
\usepackage{paracol}
\usepackage{listings}
\usepackage[framemethod=TikZ]{mdframed}
\lstnewenvironment{code}{
\mdframed[outerlinecolor=black, backgroundcolor=gray]{}
}{
\endmdframed
}
\begin{document}
\begin{paracol}{2}
\begin{code}
Left
\end{code}
\switchcolumn
\begin{code}
Right
\end{code}
\end{paracol}
\end{document}
然而,这也会产生一些警告(mdframed 中多次定义的标签),我已经为此做了一个补丁,并在这里询问是否有更好的解决方案。