LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Forum View

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

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

Print Reply
Subject:
From:
Paul Thompson <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Date:
Tue, 12 Feb 2008 10:11:31 -0800
Content-Type:
multipart/alternative
Parts/Attachments:
text/plain (3976 bytes) , text/html (4 kB)
What about a simplistic solution, in which you have a flag to 1) change regardless of floats - it's your problem or 2) not change if floats are present?  After all, you, the writer are putting out floats.  They don't come from the Land of Floats.  If you want to change dimensions, you either set the flag to force dimensional change or you don't put out the floats.  As I say, simplistic.
 
Paul Thompson
25 Signal Hill Blvd
Belleville, IL   62223-1650

----- Original Message ----
From: Frank Mittelbach <[log in to unmask]>
To: [log in to unmask]
Sent: Friday, February 8, 2008 2:58:10 PM
Subject: Re: Internal and external page setup control


Hi Paul,

 > Ha! I do this in newlfm.  What I do is specify page dimensions in a
 > register.  During shipout, after shipping out the old page, I bring
 the new
 > dimensions in and substitute for the old. 

so far so good. clearly one has to store changes somewhere and then use
 them
in the OR to change things for the next page. But I fear that your code
exhibits precisely the problems that I was talking about. You see, for
 the
application you mention (e.g., changing the first page on a letter or
 article)
that will work out fine, but the problems come when you are in the
 middle of
the document and you have many waiting floats to take up space.

so how do you specify the values for your registers inside the
 document?

assuming you have some command do do this, this command will be seen by
 LaTeX
somewhere in the document and at this point your registers for the
 "next" page
will change. but effectively the text surrounding this command may be
 typeset
on a later page (potentially more than one page ahead). so in the end
 you will
have the effect that some code that you placed on page 5 (in the final
document) changes the page setting on page 3 or 4.

if everything is tied to explicit page breaks then things are not too
 bad but
if not then you are in trouble especially if you page make up is a
 little more
complicated than just cutting columns, ie if it involves floats, and
 possibly
changes to the vertical dimensions of the columns.

just thing about a command that allows me to specify how floats can be
 layed
out on a particular page (like on this page i don't want to have bottom
 floats
or on this page I don't want any floats, to use some simple ones. so if
 such a
command is placed directly into the input stream a user would expect to
 see it
acting on the page where the surrounding text finally falls. and there
 is the
catch: you can even envision kind of "impossible documents" ie those
 the never
finish compiling: one iteration you get this command on page 4 say but
 you
already use a float on that page when you encounter it. so you iterate
 and on
the next run you use this specific layout with no floats on page 4 but
 doing
so you put more (or less depending on the style) text onto this page
 therefore
you command moves to another page. which is then wrong, so you iterate
 and by
doing so you move the command again to ...

in current LaTeX the algorithms are simple enough to prevent this from
happening as something like \thispagestyle{foo} will not change the
 textual
page content. The only way to get this behavior right now is by using
 roman
numerals as page number and do reference to pages inside the text. if
 you
carefully construct such a document you can get this behavior because
 the
length of the number sequence in roman numerals is not steadily
increasing. but this is so rare and difficult to do that nearly nobody
 ever
saw that in real life. with more complicated placement algorithms for
 floats
and vertical column sizes this danger becomes a reality if you allow to
 change
the algorithm midway from within the document. 

So I'm still wondering about how to best specify such changes. If only
 allowed
from the outside things are easy but if from the inside it is tricky as
 you
can't explain to somebody. "well, just place your command between the
 words
shown on page 5 to change the look and feel on page 4"

cheers
frank





ATOM RSS1 RSS2