我希望我的书的结构和目录如下:
Introduction chapter
Part the first
First chapter
Second chapter
Part the second
and so on
我还想要一个所谓的水平目录,一行中有多个部分。我在这里找到了实现此目的的代码:如何调整 ConTeXt 目录中条目的位置?。在我的 MWE 中,我删除了将多个部分放在一行上的代码。
如果我用它\completecontent
来放置目录,它可以起作用,但我不能将多个部分放在一行上。
我的 MWE 没有显示Introduction chapter
在目录中。我明白原因。
如果我从行中删除 %,%\part{I don't want this in the table of contents or in the book}
那么我Introduction chapter
在目录中会看到 ,但我还会看到I don't want this in the table of contents or in the book
。我再次明白了原因。
有什么方法可以得到我想要的吗?这样我就可以使用代码在一行上包含多个部分。
\setuplist [part] \setuplist [chapter]
\startsetups toc:chapter
\placelist[chapter]
\stopsetups
\starttext
\placelist [part] [criterium=text,after=\setups{toc:chapter}]
%\part{I don't want this in the table of contents or in the book}
\chapter{Introduction chapter}
\part{Part the first}
\chapter{First chapter}
\chapter{Second chapter}
\part{Part the second}
\stoptext
答案1
我不太清楚你在找什么。但为了避免目录中出现某个部分,你可以将新头部定义为该部分的副本,并确保它不会出现在那里。
关于一行中有多个标题,alternative=d
当你这样做时就会出现\setuplist
。
您可以使用以下示例进行操作。
\setuphead[part][
placehead=yes,
number=no,
]
\definehead[mypart][part][
number=no,
]
\setuphead[chapter][
sectionsegments={chapter:section},
]
\setuphead[section][
sectionsegments={chapter:section},
]
\setuplist[part][
style={\bfa},
]
\setuplist[chapter][
style={\bf},
]
\setuplist[chapter,section][
headnumber=no,
]
\setuplist[section][
alternative=d,
]
\setupcombinedlist[content][list={part,chapter,section}]
\starttext
\completecontent
\mypart[title={I don't want this in the table of contents or in the book}]
\chapter[title={Introduction chapter}]
\dorecurse{10}{
\section[title=Section name]
\samplefile{douglas}
}
\part[title={Part the first}]
\chapter[title={First chapter}]
\dorecurse{5}{
\section[title=Section name]
\samplefile{douglas}
}
\chapter[title={Second chapter}]
\dorecurse{8}{
\section[title=Section name]
\samplefile{douglas}
}
\part[title={Part the second}]
\stoptext