LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Condense Mail Headers

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

Print Reply
Mailing list for the LaTeX3 project <[log in to unmask]>
Uwe Lück <[log in to unmask]>
Sun, 17 Apr 2005 17:26:56 +0200
text/plain; charset="us-ascii"; format=flowed
Mailing list for the LaTeX3 project <[log in to unmask]>
text/plain (38 lines)
At 13:31 17.04.05, David Kastrup wrote:
>Donald Arseneau <[log in to unmask]> writes:
> > Uwe Lueck <[log in to unmask]> writes:
> >
> >> This is due to a mistake in revtex's way of changing the output
> >> routine.
> >
> > I agree.
> >
> >> After a \newtoks\output,
> >
> > And, for the output routine, I think that itself is the mistake!  I
> > opine that for \output one should "bite the bullet" and do
> > \output=\expandafter{\expandafter\mymacro\the\output}
> >
> > Hoping to silently hook in, without knowledge of what else has
> > modified the output routine, and without making your own
> > modification obvious, is insane.

Well, even in general a package writer never can be sure that
some user won't find a package that is incompatible with the
own one :) -- though there are strategies to somewhat minimize
the danger, and it is sane to adopt them, isn't it?

>The problem is that you sometimes need to call the old behavior, and
>sometimes not.  In particular, if you have inserted a special penalty
>yourself, then you will deal with it yourself, not passing anything on
>and not actually calling the original output routine.

Indeed, e.g., this is the case both in revtex.cls and in the lineno.sty
from which today's discussion arose. The lineno output routine is
called at least once for each paragraph line, additionally there are
penalties to trigger processing items from queues, similarly as with
the \@freelist.

-- Uwe Lueck.