ConTeXt:有没有办法创建多页代码列表?

ConTeXt:有没有办法创建多页代码列表?

我正在使用 t-vim 模块,我想将我的列表格式化为类似于带标题的图形,但能够将它们分布在多个页面上。我可以看到三种方法:

  • 将 \typeCfile{mycode.c} 命令放在浮动对象内。问题是浮动对象不能拆分到多个页面。
  • 将列表输入为文本并在其后添加标题。但是,我的列表有时会被数字分割,而且我没有找到阻止浮动对象进入列表的方法。
  • 将每行代码放在一个不可见的表格的一行中,并使表格可拆分。不幸的是,我没有找到一种方法来自动从我的源文件中创建这样的表格。

还有其他解决方案吗?或者我的某个解决方案可以修复吗?

答案1

默认情况下,只有将表格放入浮动块中时,表格才可以跨页拆分。在 ConTeXt 版本中,添加了2018.10.18 00:07一个名称为 的新环境splittext,可用于为其他基于文本的内容(例如代码列表)创建多页浮动块。

要创建这样的多页浮动,您必须将文本放在环境中splittext

\setuppapersize [A6] [A5,landscape]

\setuparranging [2SIDE]

\showframe [page]

\definefloat [listing]

\starttext

\startplacefloat [listing] [location={split},title={Dummy listing}]
  \startsplittext
  \dorecurse{35}{Line \recurselevel\endgraf}
  \stopsplittext
\stopplacefloat

\stoptext

在此处输入图片描述

相关内容