[texhax] trying to modify book.cls to automatically add TOC entry for \chapter* gives errors

Barbara Beeton bnb at ams.org
Wed May 7 18:58:14 CEST 2008

On Wed, 7 May 2008, Niall Mansfield wrote:

    - Using book.cls
    - Want to change \chapter*{} in order to:
    	* add a TOC entry
    	* set the running heads
       so that we can use \chapter*{} for Preface, Foreword,
       Glossary, etc.

    The definition we took from book.cls is, after simplifying:


    If we change that to do either of the things we want, e.g.:


    we get error:

       ! TeX capacity exceeded, sorry [input stack size=300].
       \originalTeX ->\noextrasenglish
    				  \let \originalTeX \@empty \lefthyphenmin =2\...
       l.1 \select at language {english}

    or, if we clear out the existing .toc file first, we get:

       No file authdns.toc.
       ! Undefined control sequence.
       \\->\let \reserved at e
    		       \relax \let \reserved at f \relax \@ifstar {\let \reserved...
       l.60 \listoftables

    However, if we change the added line to:


    then it "works", i.e. runs without error, but it's useless
    of course.  The same pattern happens when we try to insert
    into \@schapter.

i'm not really conversant with how book.cls
does its toc insertions, but the amsbook.cls
does put the starred chapters into the t-of-c.
you might be able to crib some code from that.

    I assume I'm doing something stupid, but I'm so confused
    after trying this for hours that I can't think how to
    start tracking it down.  Help!

i've also seen your other message about adding
"Appendices" in the t-of-c.  i think your best
bet there is to use something like this:


alternatively, you could try entering all the
gory details:


with amsbook, this would give just the heading,
with no page number; i'm not sure how book.cls
will react to this.

good luck.
							-- bb

More information about the texhax mailing list