LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

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
Sender:
Mailing list for the LaTeX3 project <[log in to unmask]>
Date:
Fri, 7 Mar 2003 17:17:57 +0100
Reply-To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Subject:
MIME-Version:
1.0
Content-Transfer-Encoding:
7bit
In-Reply-To:
<l03102803ba8e4b369975@[130.235.3.161]>
Content-Type:
text/plain; charset=us-ascii
From:
Frank Mittelbach <[log in to unmask]>
Parts/Attachments:
text/plain (118 lines)
 > >yes, kind of, but this is really history and we can't change that name for 2e
 > >not even the semantics i would guess (unless put into fixltx2e).
 >
 > Yes (you wouldn't have had to tell _me_ that; I know it is much too late to
 > change such behaviour in the 2e core).

that was a general remark, i believe that i don't have to tell _you_ :-)

 > > >     \topsep-\parskip < \lastskip < \topsep
 > >
 > >yes again. but this is from around 1986 i fear. so you can claim it is not
 > >wrong but strange

you know: IBM ifyou can't fix it document it and call it a feature :-) but
yes, i agree with you.

 > I do claim that it is wrong, but cannot be fixed in the 2e core. It could
 > be another candidate for fixltx2e.sty.

indeed.

 > >the logic is still as strange as before in the case \lastskip is negative and
 > >skip positive.
 >
 > I presume you meant to say something different here. The \lastskip < 0 <
 > SKIP case was never questioned.

well but i question it. i find its behaviour even stranger than the (mis)use
of a negative value to back up.

my claim is that a negative skip in \lastskip is most likely there to correct
for some visual property. so as far as the visual space provided by the object
above it is likely equiv to 0pt and a following \addvspace should not remove
it and insert its SKIP but simply should add its SKIP to achive the visual
maximum.

 > >the if minipage flag is necessary or else you get strange and unwanted effects
 > >at the beginning of a box, you really don't want to start there with a space
 > >(normally)
 >
 > OK, I can't claim I have ever learnt what these flags signify anyway. If
 > it's a "beginning of minipage" flag then it makes perfect sense.

yes that is what it is, it is true at the beginning and reset in \everypar


 > >i take my remark back from last night, I don't see how to easily define the
 > >corrective action command. the above doesn't do the job (i think)
 >
 > We're thinking about different things, but I can see that your
 > \correctspace would be more useful. I was merely thinking about preserving
 > the "invariant" that \lastskip is the effective total amount of vertical
 > glue since the last non-discardable item, which is what \addvspace and
 > \addvpentalty rely on.
 >
 > >reason: typical situation is like this
 > >
 > >
 > >\addvspace{8pt}       % from the end of some object
 > >\correctspace{2pt}    % what to put here to change the spacing???????
 > >\addvspace{10pt}       % from the beginning of a new object
 > >
 > >eg end of list followed by \section
 > >
 > >now the place where the user can put in his/her correction command is between
 > >the two \addvspace commands. so if one things the space is too small and wants
 > >to change that, eg add 2pts then
 > >
 > >nothin there    will give us 10pt total, ie  max(8pt,10pt)
 > >\vspace{2pt}    will give us 18pt total, ie 8pt + max(2pt,10pt)
 > >\AddVspace{2pt} will give us 10pt total, ie max(max(8pt,2pt),10pt)
 >
 > Don't you mean:                              max(   8pt+2pt,  10pt) ?

yes sir.

 > How about
 >
 > \def\correctvspace#1{%
 >    \relax % Won't hurt, and might help.
 >    \ifvmode
 >       \@tempskipb=\lastskip
 >       \vskip-\@tempskipb
 >       \vskip #1%
 >       \vskip\@tempskipb
 >    \else
 >       \@noitemerr
 >    \fi
 > }

looks simple enough, but needs some further thought as well. the above will
violate the property of \addvspace and \addpenalty to properly interact with
each other, or so i would think


 > ?  There is a slight imperfection in that if the break is taken at a
 > penalty abve the correction then it will disappear, whereas it will not
 > disappear if the break is taken at a penalty below the correction, but I
 > think that is reasonable behaviour. One could also provide for inserting a
 > penalty just before the correction skip.

well not quite, a later \addpenalty should move backwards past the correction space
(nominally) on the vertical list.

have a look what

\addvspace{10pt}
\addpenalty{333}
\addvspace{12pt}
\addpenalty{222}
\addvspace{13pt}

does. a \correctvspace inbetween should not move the breakpoints
but that makes programming a bit awkward i guess :-) as it besically calls for
some interaction that you so far was able to avoid

frank

ATOM RSS1 RSS2