[NTG-context] styling individual parts of ToC entry
jbf
roma83537 at gmail.com
Sun Sep 6 02:03:42 CEST 2020
Thanks Wolfgang, while I don't pretend to fully understand the setup you
have provided (but am working on doing so!), of course it provides the
correct result for a chapter that has a title, an author, and a year.
My ever-so-complicated book (and its authors!) however, throws one small
further complication into the mix.
Where a chapter does not have a year-range, and I either omit that
declaration, or I leave the curly brackets empty (e.g. year={}), then I
find that the author name also does not appear in the ToC. What
adjustment to the \ChapterListCommand do I need to make to accommodate
the following? Possibly an \else statement, but not sure how to include
that:
\startchapter [title={Chapter title}] [author={Author Name}]
Julian
On 5/9/20 7:16 pm, Wolfgang Schuster wrote:
> jbf schrieb am 05.09.2020 um 03:35:
>> Now that with Hraban's invaluable assistance I am able to include
>> title, subtitle, author as and when necessary in the ToC and put them
>> on the same line if I need to, I have two questions that I have not
>> found a satisfactory solution to after playing around with various
>> possibilities.
>>
>> I need:
>>
>> (1) the author's names lined up vertically throughout the ToC, and
>>
>> (2) the first part of the entry (e.g. Foreword) to be bold, but the
>> author name to be regular text.
>>
>> An adjusted version of Hraban's setup can show what I have tried by
>> way of example:
>>
>> %----------------
>>
>> \define[1]\TitleTocEntry{%
>> #1\hskip 1cm% title
>> \structurelistuservariable{author}%
>> }
>>
>> \setuplist[title][textstyle=bold,
>> textcommand=\TitleTocEntry,
>> ]
>>
>> %---------------
>>
>> /Question 1:/ /How to get the two author names to line up
>> vertically./ Given that I have both a Foreword and a Preface, I am
>> using \title for these. And both have separate authors. The titles
>> will be simply 'Foreword' and 'Preface', obviously.
>>
>> *Foreword Author name*
>>
>> *Preface Author name*
>>
>> I am using \hskip 1cm to separate the authors' names from either of
>> those two words. But this does not give me the kind of exact
>> positioning I need to get the two author names directly underneath
>> each other in the list. I have tried various alternatives to \hskip,
>> but none of them can give me the correct proportional distance. The
>> distance is obviously being controlled by the fact that 'Foreword' is
>> 8 characters and 'Preface' is 7. Is what I want only obtainable with
>> a table setup?
>>
>> The issue might or might not be more complicated when I get to main
>> chapters, where the author names need to line up with the Foreword
>> and Preface author names as well. There will be, e.g.
>>
>> Chapter One Title
>>
>> Author name
>> //
>>
>> /Question 2:/ /How to independently get Foreword and Preface to be
>> bold, but the authors' names to be regular./ \setuplist offers me
>> options like textstyle, pagestyle, numberstyle, but they apply to
>> everything (both Foreword/Preface and Authors' name are bold). I
>> thought perhaps I could control it from within the document, e.g.
>>
>> \starttitle[title={\ss\bf Foreword}][author={A. Uthor}]
>>
>> But that does the same - both Foreword and A. Uthor end up bold. And
>> besides, I also want to style the ToC independently of the heads if I
>> can.
>>
>> The wiki and various manuals do offer various tips on modifying the
>> ToC, but I cannot find anything regarding the two questions above -
>> not yet, anyway. If someone knows where, please point me to it.
>
> \define[3]\ChapterListCommand
> {\hbox\bgroup
> \hbox to 3cm{\currentlistsymbol\hss}% number + labeltext
> \vtop\bgroup
> \hsize\dimexpr\makeupwidth-3cm\relax
> \doifsomething{\rawstructurelistuservariable{year}}
> {{\it\structurelistuservariable{year}}\crlf}%
> \currentlistentrytitle % title
> \doifsomething{\rawstructurelistuservariable{year}}
> {\crlf{\bf\structurelistuservariable{author}}}%
> \hfill\currentlistentrypagenumber % pagenumber
> \egroup
> \egroup}
>
> \setuplist
> [chapter]
> [label=chapter,
> alternative=command,
> command=\ChapterListCommand]
>
> \setuplabeltext
> [en]
> [chapter=Chapter ]
>
> \starttext
>
> \completecontent
>
> \startchapter [title={Chapter title}] [author={Author
> Name},year={1980--2000}]
> \unknown
> \stopchapter
>
> \stoptext
>
> Wolfgang
More information about the ntg-context
mailing list