ConTeXt:如何将标题和目录保留在同一页上

ConTeXt:如何将标题和目录保留在同一页上

我怎样才能告诉 ConTeXt 不要在 之前插入分页符\completecontent?我试图保持A title与目录在同一页上:

\starttext

  \startfrontmatter
    A title
    \completecontent
  \stopfrontmatter

  \startbodymatter

    \startchapter [title=Foo]
    \stopchapter

  \stopbodymatter

\stoptext

答案1

\completecontent命令用于\title放置目录的标题。要删除开头的分页符,您可以使用以下方法禁用分页符

\setuphead
  [title]
  [page=no]

但不建议这样做,因为该设置会影响所有\title命令。虽然可以将设置限制为frontmatter更好的解决方案是创建一个新的标题

\definehead
  [contenttitle]
  [title]

并仅针对此标题禁用分页符

\setuphead
  [contenttitle]
  [page=no]

下一步是从\completecontent文档中删除该命令,并用新标题和后面没有自动标题的目录的组合来替换它。

\contenttitle{\headtext{content}}
\placecontent

\headtext{content}可以访问目录的语言相关标题,但设置固定文本也没有错(\contenttitle{Contents})。

答案2

虽然没有完全明确地说明这一点,但 Wiki (https://wiki.contextgarden.net/Table_of_Contents) 建议如下:

\completecontent % with title
\placecontent % without title

您会发现,用 替换\completecontent即可\placecontent达到目的。

相关内容