[comp.text.tex] Need help with endlinechar and delimited parameters.

ryanb@microsoft.UUCP (Ryan BEEGLE) (02/22/91)

Hello, I wonder if anyone could help me with this TeX question.

I'm trying both to learn some of the fine points of TeX macros, and to
perhaps create a set of macros that would be easy to insert/delete and
essentially allow an already nicely formatted text file to be nicely
typeset. (More specifically, TeX and ASCII versions of the rec.games.frp
Spellbooks to be virtually one and the same.)

A spell goes something like this:

  Ask TeX Help (Divination)

  Range: Net-wide
  Components: M
  Duration: 'til answered or flamed
  Casting Time: 15 mins
  Area of Effect: Special
  Saving Throw: Negates

  This spell allows you to...

There may also be "Reversible" on the first line after the () if the spell
is reversible, and in the case of a clerical spell, an additional "Sphere:"
line, taking it beyond 9 arguments if the mage and clerical macros are to
be similarly defined.

What I hope for is a single macro which will handle all of the "header"
information. (Getting the basic lines, then passing them through to other
macros to do whatever with their own set of information -- one for range,
another for components, etc.)

I have as follows:
\def\spella@#1@@#2@#3@#4@#5@#6@#7@{\endgroup}

Then on the two lines above the spell:
\begingroup\endlinechar=`\@
\spella

This works fine. However, if I try:
\def\spell{\begingroup\endlinechar=`\@\spella}
and then replace the two lines with \spell, I get an error indicating I'm
not using \spella as declared.

I understand that with the former I've got a "buffer" of this extra line of
input so that the \endlinechar gets time to "kick in" but I don't know how
to do that the second way.

Any suggestions?

  -- Danger Mouse