LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
"Michael J. Downes" <[log in to unmask]>
Thu, 28 Jan 1999 13:26:02 -0500
text/plain (50 lines)
"William F. Hammond" <[log in to unmask]> writes:

> 1.  "\noblankpars": In using a program to translate another markup to
> LaTeX, if one wants to have a reasonable level of human readability in
...
> blank line as a new-paragraph command under LaTeX is a pass-through to
> "TeX", I do not know whether this could be done.

\catcode\endlinechar=10

> 2.  "\commandend{;}":  LaTeX practice such as
>
>                        "\LaTeX{} is great"
>
> does not always leave quite the right space after the first word.

You are mistaken. It leaves a normal interword space. Unless you are
talking about some macro that you have yourself defined without paying
sufficient attention to spacefactor or something. Try looking at the
LaTeX definition of \TeX (not the plain TeX definition, which is
inferior).

Or unless you are talking about math mode. In math mode the "{}"
should certainly be omitted or it will tend to screw up the standard
inter-symbol spacing. But your converter probably had better be aware
of whether it is in math mode or not anyway, since (for example) you
should be translating &ohat; to \^{o} in text but \hat{o} in math.

If you really want a 100% consistent command terminator that you can use
in all contexts I suggest \+:

\def\+{}

... \LaTeX\+ is great ...

That is only for commands that take no arguments. For commands whose
first argument is a mandatory argument the { is a sufficient
terminator; for commands whose first argument is optional (like
\pagebreak or \\) you cannot put anything in there without screwing up
the lookahead. For that I suggest defining your own variants that use
mandatory arguments.

> 3.  "\strictargoptsyntax":  In auto-generating lists, a programmer
> either needs to check that the first character of item content is not
> '[' or else routinely generate "\item[{}]", filling in the braces when
> appropriate.

\item{} will give you the automatic number and ignore any
following "[" character.

ATOM RSS1 RSS2