Received: from mail.proteosys.com ([213.139.130.197]) by nummer-3.proteosys with Microsoft SMTPSVC(5.0.2195.6713); Wed, 30 Mar 2005 01:48:47 +0200 Received: by mail.proteosys.com (8.12.10/8.12.2) with ESMTP id j2TNmhNi011316 for ; Wed, 30 Mar 2005 01:48:46 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.119.176]) by relay.uni-heidelberg.de (8.12.10/8.12.10) with ESMTP id j2TNjMfK028319; Wed, 30 Mar 2005 01:45:22 +0200 (MET DST) MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01C534B9.D958D980" Received: from listserv (listserv.uni-heidelberg.de [129.206.119.176]) by listserv.uni-heidelberg.de (8.12.7/8.12.7/SuSE Linux 0.6) with ESMTP id j2TM0Kcb025093; Wed, 30 Mar 2005 01:43:00 +0200 Received: from LISTSERV.UNI-HEIDELBERG.DE by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 1.8e) with spool id 184978 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Wed, 30 Mar 2005 01:42:59 +0200 X-MimeOLE: Produced By Microsoft Exchange V6.5 Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.210.211]) by listserv.uni-heidelberg.de (8.12.7/8.12.7/SuSE Linux 0.6) with ESMTP id j2TNgwYd003268 for ; Wed, 30 Mar 2005 01:42:58 +0200 Received: from trmail.triumf.ca (trmail.triumf.ca [142.90.100.150]) by relay2.uni-heidelberg.de (8.12.10/8.12.10) with ESMTP id j2TNiftL025887 for ; Wed, 30 Mar 2005 01:44:42 +0200 (MET DST) Received: from mutant (mutant.triumf.ca [142.90.112.22]) by trmail.triumf.ca (8.11.6/8.11.6) with ESMTP id j2TNhdP25150 for ; Tue, 29 Mar 2005 15:43:39 -0800 In-Reply-To: <5.1.0.14.0.20050329212401.02478aa0@pop3.web.de> Lines: 48 Organization: TRIUMF: Canada's national meson facility References: <5.1.0.14.0.20050329212401.02478aa0@pop3.web.de> Return-Path: X-OriginalArrivalTime: 29 Mar 2005 23:48:50.0719 (UTC) FILETIME=[DB9052F0:01C534B9] User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 x-mime-autoconverted: from quoted-printable to 8bit by listserv.uni-heidelberg.de id j2TNgwYd003269 X-Scanned-By: MIMEDefang at proteosys.com X-ProteoSys-SPAM-Score: 0 () Content-class: urn:content-classes:message Subject: Re: \@reinserts Date: Wed, 30 Mar 2005 00:47:25 +0100 Message-ID: A X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: \@reinserts Thread-Index: AcU0udvSnqtTJJHOQ22zOeY12q8dSw== From: "Donald Arseneau" Sender: "Mailing list for the LaTeX3 project" To: Reply-To: "Mailing list for the LaTeX3 project" Status: R X-Status: X-Keywords: X-UID: 4848 This is a multi-part message in MIME format. ------_=_NextPart_001_01C534B9.D958D980 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Uwe L=FCck writes: > At 13:30 26.03.05, you [David Kastrup] wrote: > >Donald Arseneau writes: > > > > > The problem with \penalty\outputpenalty is that = \outputpenalty=3D10000 > > > and prevents the same page break instead of forcing the same = break. > > > >Well, when rebreaking, I find that using \pagediscards seems like the > >best thing to do. Then you get the same vertical list again, unless > >\outputpenalty is less than 10000, in which case you need to reinsert > >it in front of the discards (it will be replaced with \nobreak in the > >\pagediscards in this case). > > And where is \pagediscards available? (Not by a Google search on = CTAN.) \pagediscards is an etex primitive (built-in) command. David is probably right (since he has been looking at that stuff) but I don't see the benefit, since we want to get the same page break again. > And what about > \ifnum\outputpenalty=3D\@M \else > \penalty\outputpenalty > \fi I think that would work. The point is that if TeX breaks the page *not* at a penalty (effective penalty=3D0) it flags that by setting \outputpenalty=3D10000 (which = could never happen naturally). I see no reason to reproduce the exact output penalty, since you are looking to get the same page break, so I would probably put a negative penalty there. You do not want to hold inserts when performing "supereject" (-20000), so you do need to release the inserts then. There are references to \footins in \@specialoutput that have to be rewritten for the case when \holdinginserts is holding the inserts. (The whole point of holding them is that they do *not* come out when cycling through \@specialoutput.) I'm not sure that it is even possible to maintain the \@pageht methods when using \holdinginserts. -- Donald Arseneau asnd@triumf.ca ------_=_NextPart_001_01C534B9.D958D980 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Re: \@reinserts

Uwe L=FCck <uwe.lueck@WEB.DE> writes:

> At 13:30 26.03.05, you [David Kastrup] = wrote:
> >Donald Arseneau <asnd@TRIUMF.CA> = writes:
> >
> > > The problem with = \penalty\outputpenalty is that \outputpenalty=3D10000
> > > and prevents the same page break = instead of forcing the same break.
> >
> >Well, when rebreaking, I find that using = \pagediscards seems like the
> >best thing to do.  Then you get the = same vertical list again, unless
> >\outputpenalty is less than 10000, in which = case you need to reinsert
> >it in front of the discards (it will be = replaced with \nobreak in the
> >\pagediscards in this case).
>
> And where is \pagediscards available? (Not by a = Google search on CTAN.)

\pagediscards is an etex primitive (built-in) = command.  David is
probably right (since he has been looking at that = stuff) but I
don't see the benefit, since we want to get the same = page break
again.

> And what about
>      = \ifnum\outputpenalty=3D\@M \else
>        = \penalty\outputpenalty
>      \fi

I think that would work.
The point is that if TeX breaks the page *not* at a = penalty (effective
penalty=3D0) it flags that by setting = \outputpenalty=3D10000 (which could
never happen naturally).

I see no reason to reproduce the exact output penalty, = since you
are looking to get the same page break, so I would = probably put a
negative penalty there.

You do not want to hold inserts when performing = "supereject"
(-20000), so you do need to release the inserts = then.

There are references to \footins in \@specialoutput = that have
to be rewritten for the case when \holdinginserts is = holding
the inserts. (The whole point of holding them is that = they
do *not* come out when cycling through = \@specialoutput.)

I'm not sure that it is even possible to maintain = the
\@pageht methods when using \holdinginserts.

--
Donald = Arseneau           = ;            =    asnd@triumf.ca

------_=_NextPart_001_01C534B9.D958D980--