Hi Ulrich > > (As a final comment, I thought briefly whether it made sense to split > > this object type into three: "heading", "contents-entry", and "running- > > header-entry", but I couldn't see a good argument for it.) > > > > -- Will > > I would like to see a better control for these three types. I often run in > 'difficulties' when I need to separate what goes to the toc, the running > head, and the section title (if present). I agree with you, we need better control from the document level as well as from the designer level for all three independently of each other. However, as far as Will's remark goes: I do also believe that there is no point in separating an object type "heading" into three object types. Why is that? simply because the mechanics for controlling the three parts is one thing, but on a design level a heading is just collecting these values and passing them (controlled) to a running header or to a toc. As a result, one can imagine all kind of heading layout templates, but all of them would all do the same thing in terms of passing the some of that data (or not) to a toc, where there would be independent templates to format the values. in other words: we would have one transformation from document level (that allows you to control whether or not you want a toc entry and or a running header, etc but from that point on a heading template will only be concerned with formatting the heading. So rather than \DeclareDocumentCommand \section { <arg syntax> } { \UseInstance{heading}{sectionheading} {<arg>} \UseInstance{headingtotoc}{std} {<arg>} \UseInstance{headingtorunninghead}{std} {<arg>} } we might as well put everything into the "heading" as for "headingtotoc" and "headingtorunninghead" there will be nothing to format/layout and each command will use the same mechanics. > Most of the time I have to use the titlesec/titletoc package to get what I > want but still have to adjust a lot. > > Here is a small (incomplete) list: it is really good to get this kind of use cases as that helps to pin down the boundaries that a heading object should support. > 1. When typesetting sectioning titles typesetting has to be manually > adjusted (e.g. telling where to break or special formatting). Which requires > adjustment of the running head and toc-entry. to reformulate that: it is necessary that a heading object accepts separate text for the sectioning title compared to the title for the toc and / or the title text for the running head, ie there should be three arguments to it: - title text - title text for toc - title text for running head (with an convenience default of some sort, ie that the first is used for the others if they aren't given) > 2. Sometimes the sectioning title is so long that one needs a short form for > the running head only. another reason for the above > 3. Sometimes the running head contains additional information that doesn't > come from a section title but doesn't go into the toc. This is also true for > dictionary-like headers. again that is talking about the same arguments to the object type. As to the additional formatting requirements: some of them could be supported by a template that offers formatting each of such texts. if the formatting is a function with one argument then you can added extra information and/or reformatting this way if it applies to all headings of a document (or rather to all headings of a certain instance). > 4. As already mentioned not always should a section number go into the toc > of header. good point, but unrelated to the heading object type: that would be a function of a template itself: it could for example support that via a flag, or it could support it by formatting the running header with a function with 2 arguments (text + number) or ... unless, that is, you say, that you think it is necessary to control this individually from the document level, ie you can see applications where for a particular heading you want to suppress just the number in the toc but not in the document while for others you want it (sort of a generalized * of 2e) i don't think that is what you are asking for though, or is it? > 5. Sometimes (I had an application in an omnibus volume) sectioning commands > in a big special chapter should not go into the tocą. again that asks for handling toc/runhead and main head text independently. > 6. Sectioning commands should not only thought of in hierarchical order. > Some should have the same level but with different 'behavior' concerning the > toc or running head (the simpliest form in LaTeX2e is \section & \section* > but with unwanted side-effects). that is a generalization of 5, ordo I miss something? in summary I think you are making a bunch of strong arguments for supporting (on document level) the data that goes into all three directions - or doesn't go there, and to be able to do so the object type for headings must be able to receive threee different texts (if necessary). So form me the the conclusion from this is a) - mandatory title text b) - title text for toc (or \NoValue in which case a) is being used) c) - title text for running head (or \NoValue in which case a) is being used) how that is offered on the document level is a different story (and I don't want to concern myself with it here ... once we have a defined document type we can certainly discuss xparse or other document level support for it) cheers frank