## LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

#### View:

 Message: [ First | Previous | Next | Last ] By Topic: [ First | Previous | Next | Last ] By Author: [ First | Previous | Next | Last ] Font: Proportional Font

Subject:

template interfaces and what they mean

From:

Date:

Tue, 25 Jan 2000 14:42:38 +0100

Content-Type:

text/plain

Parts/Attachments:

 text/plain (163 lines)
 `part of Achim's reply to "templates for galley" tempted me to think about this once more and offer some thoughts for discussion. main point is i would like you to think about is, what are the invariants of that interface, ie what can be assumed to be the same from one template to the next (within a type) and what can differ. Here is the extract from Achim's mail that triggered this:  > o pshape template. Perhaps it would be a good idea to add two arguments  > to the pshape template for the horizontal and vertical dimension  > (where the exact meaning depends on the template). Say, a template  > for a rectangular cutout could interpret the horizontal dimension  > as width of the cotout and the vertical dimension as number of lines  > to be indented.  >  > o justification template. I'm not quiet sure how the galley templates  > are intented to be used -- the package only defines the templates  > themselve no commands to use them. But I think that the justification  > templates shouldn't be able to choose whether they affect all  > paragraphs or only the next one. Instead the user should be able to  > tell the system which case is desired everywhere such a template is  > used. to formulate those a bit more abstractly:  1) how much freedom has a template to interpret its arguments (ie data passed     to it from the document)?  2) what is the scope a template instance apply itself? is it well-defined? let's tackle 1) first. Achim suggests that the pshape type should get two arguments those meaning should depend on the template. in my opinion this is likely to result in chaos. the main idea behind the template types is that logical structure of the document, i.e., the commands and environments therein, are transformed into instance calls of templates of certain types. this is defined via, say, an xpare interface and does define the document class (no formatting yet) structure. now the task of the designer is to declare such instances (whose names are fixed by the structural part above). He/she does that by declaring instances using \DeclareInstance{}{}{