Recent Changes
Recent Changes · Search:
Preface out-of-order in front matter - book template
Raised by
Date opened
Thursday, 18 June 2009

Currently the preface is printing before my Table of Contents & Foreword, although I have them ordered in my trail as Foreword - Preface - Acknowledgements, the order they should be in. Chicago Manual of Style order says the order is TOC - Foreward - Preface - Acknowledgements. See link above. I will manually correct this if necessary in LATEX.

Proposed solution
Fix the order. Works of fiction without a TOC will not be affected by the change. All Forewords should go before the Preface — at least in this manual of style.
This behaviour is by design and is a customisable feature. See Tip of the Week 00055.

As of Wikibook server version 1.0.15, there is an option to print the preface after the contents, but still part of the frontmatter, i.e. with Roman page numbering.

The Foreword nearly always comes after the Table of Contents but before the preface, introduction, acknowledgements, etc. — as it’s written by someone other than the author of the book. See the Tip of the Week 00037 which indicates the article Hey! What’s the Matter?:

Order of front-matter elements:

  • Half-title page
  • Title page
  • Copyright page
  • Dedication
  • Epigraph
  • Table of Contents
  • Foreword
  • Preface
  • Acknowledgements
  • Introduction

So right now we have to move all the elements in the $att array in wikibook.php if we want the Chicago Manual of Style order of chapters for a non-fiction book:

‘preface’,’introduction’,’acknowledgments’ are available for renumbering. If I get the instructions in Tip 00055 correctly, we can’t by default have a Foreword, Preface, Introduction AND Acknowledgments? And one of the elements would have to come before the Table of Contents?

This is incorrect and a mis-reading of the tip. There are 6 values of the chapter attribute “kind” which produce unnumbered chapters: preface, introduction, acknowledgements, colophon, prologue, epilogue. When kind=‘preface’ the chapter is printed before the table of contents. All the others are printed in the order specified. It is not necessary to change either Publish PDF or the wikibook PDF server to achieve what you want.
  1. Prevent the chapter called “Preface” from being kind=‘preface’ with $ChapterKindFmt['preface'] = 'Abstract';
  2. Make the chapter called “Foreword” unnumbered with $ChapterKindFmt['colophon'] = 'Foreword';
  3. Make the chapter called “Preface” unnumbered with $ChapterKindFmt['prologue'] = 'Preface';
    This should produce the desired behaviour. We can also make it easier to modify the list of unnumbered kind values if necessary, or just add ‘foreword’ to the list of unnumbered kinds. The root cause of this problem lies in the method for re-interpreting wiki list markup into Wikibook XML for book chapters, which may be numbered, unnumbered, or appendices, and may print before or after the table of contents. Maybe there is a better way…

I can go in and see about altering how my server deals with these elements, but it will be problematic to always remember to change it every time I upgrade.

Nevermind — I see that it’s hard-coded into the XML. Probably shouldn’t be, but that’s how it is right now and I don’t understand XML well enough to change it.

The only thing that is hard-coded is the XSLT’s treatment of chapters with kind=‘preface’. Any other kind values just produce an unnumbered chapter. If two or more chapters have a kind=‘preface’, they will all be printed before the table of contents. Of course, a different XSLT could produce a different result. To provide additional flexibility, there is an option to move the preface after the contents, while keeping the Roman page numbering.
Date closed
Saturday, 20 March 2010

« 00137 · Edit Form · 00139 »

Page last modified on 20 March 2010 at 12:27 PM