next up previous contents
Next: Writing Class Files: First Up: Tuesday August 17, 1999 Previous: The vulcan Package: a LATEX

  
New Interfaces for LATEX Class Design
Parts I and II


DAVID CARLISLE
LATEX3 Project
david.carlisle@latex-project.org

and

FRANK MITTELBACH
LATEX3 Project
frank.mittelbach@latex-project.org

and

CHRIS ROWLEY
LATEX3 Project and Open University, UK
chris.rowley@latex-project.org



Abstract:  Traditional LATEX class files typically implement one fixed design via ad hoc, and often low-level, (La)TEX code. This style of implementation makes it much harder than is either desirable or necessary to produce classes that implement a specific visual design. Moreover, the construction of such classes typically involves a lot of work that is essentially programming and thus does not live easily with the declarative kind of design specification for a document (or range of documents) that would be produced by a professional typographic designer.

This work introduces some extensions to LATEX that will help to provide a new, more declarative interface that can be used in class files. It is based on the idea of a template, which describes how to carry out some action but which provides some flexibility since its code uses the values of a set of named (keyword) parameters. The specific design for this action, as required for a particular class, is then selected by choosing values for the template's named parameters.

The plan is to provide standard templates for a wide range of typographic objects but, of course, new templates for new ideas can be created, possibly by adapting an existing one or by a little LATEX programming. It is our firm belief that there will soon be a large range of templates avaliable and that it will thus be possible for the majority of class files to be implemented in a declarative way, by simply choosing suitable templates and supplying values for their named parameters.

We have working examples of the application of these ideas in most of the major areas of document design, including page layout, section headings, lists, captions.

The two talks will explain these concepts and show examples of their use covering both the current standard LATEX designs and some more exciting new possibilities.


next up previous contents
Next: Writing Class Files: First Up: Tuesday August 17, 1999 Previous: The vulcan Package: a LATEX
Page last modified on 1999-09-14