问题
以下代码用于防止分页应用于索引:
\setuphead[chapter,section][
number=no,
page=yes,
continue=no,
]
\definehead[StyleIndex][chapter]
\setuphead[StyleIndex][
page=no,
]
索引排版如下:
\startbackmatter
\chapter{Index}
\placeindex
\stopbackmatter
该代码导致章节标题显示在新页面上,我可以(根据需要)使用以下命令来避免这种情况:
\startbackmatter
\StyleIndex{Index}
\placeindex
\stopbackmatter
但是,这会导致索引从目录 (ToC) 中删除,这是不希望的。我原本以为它会继承章节的行为并纳入目录。
问题
如何创建一种不同于索引页标题样式的独特章节标题样式,同时将两者都包含在目录中?
答案1
默认情况下,新定义的结构元素不会添加到目录中。您必须将特定条目添加到列表中。可以使用以下键全局完成此list
操作\setuplist
:
\setuplist
[content]
[list={chapter, section, newSection}]
或者也可以直接将其指定为参数
\placecombinedlist
:
\starttitle [title=Contents]
\placecombinedlist
[content]
[list={chapter, section, newSection}]
\stoptitle
请注意,当未设置为 时title
, 像 这样的未编号结构元素subject
不会添加到目录中 ,这不是默认值。这是一个完整的示例:incrementnumber
list
\definehead
[newSection]
[section]
\definehead
[newTitle]
[title]
[incrementnumber=list]
\setuplist
[content]
[list={chapter, section, newSection, newTitle}]
\starttext
\completecontent
\startsection [title=Foo]
\input knuth
\stopsection
\startnewSection [title=Bar]
\input knuth
\stopnewSection
\startnewTitle [title=newTitle]
\input knuth
\stopnewTitle
\stoptext