Boxed items don't like sidefloats
Hello all, here's a test document: ================ \setuppagenumbering[alternative=doublesided] \newbox\testbox \starttext \setbox\testbox\vbox{% \placefigure[outer,none,fit]{}{% \framed[width=.2\hsize,height=.2\hsize,offset=none]{}% }% \startitemize \item some test \item \input knuth \item \input tufte \stopitemize } \box\testbox \page \setbox\testbox\vbox{% \placefigure[outer,none,fit]{}{% \framed[width=.2\hsize,height=.2\hsize,offset=none]{}% }% \startitemize \item some test \item \input knuth \item \input tufte \stopitemize } \box\testbox \stoptext ============ As you may notice, items think the placefigure refers to all of them, so that if a particular item is bigger than the figure height, it will wrap correctly around the (inexistent) box, otherwise it will just side it. Interesting, the same thing does *not* happen when not going through a box, but typesetting things directly in the page. However, for my application I need to typeset the sidefloat and the itemization in a box, so I hit the bug ... Suggestions? -- Giuseppe "Oblomov" Bilotta
On Tue, 31 Jul 2007 13:14:27 +0200
Giuseppe Bilotta
Hello all,
here's a test document:
[test document]
As you may notice, items think the placefigure refers to all of them, so that if a particular item is bigger than the figure height, it will wrap correctly around the (inexistent) box, otherwise it will just side it.
Interesting, the same thing does *not* happen when not going through a box, but typesetting things directly in the page. However, for my application I need to typeset the sidefloat and the itemization in a box, so I hit the bug ...
Suggestions?
-- Giuseppe "Oblomov" Bilotta
Hi Giuseppe, you can use ConTeXt's stream mechanism. \setuppagenumbering[alternative=doublesided] \usemodule[streams] \definestreamlayer[giuseppe][width=\textwidth] \newbox\giuseppe \starttext \startstreamlayer[giuseppe] \placefigure [outer,none,fit] {} {\framed[width=.2\hsize,height=.2\hsize,offset=none]{}} \startitemize \item some test \item \input knuth \item \input tufte \stopitemize \stopstreamlayer \vbox{\placestreamlayer[giuseppe]} \page \startstreamlayer[giuseppe] \placefigure [outer,none,fit] {} {\framed[width=.2\hsize,height=.2\hsize,offset=none]{}} \startitemize \item some test \item \input knuth \item \input tufte \stopitemize \stopstreamlayer \vbox{\placestreamlayer[giuseppe]} \stoptext Wolfgang
Tuesday, July 31, 2007 Wolfgang Schuster wrote:
you can use ConTeXt's stream mechanism.
\setuppagenumbering[alternative=doublesided]
\usemodule[streams] \definestreamlayer[giuseppe][width=\textwidth]
\newbox\giuseppe
\starttext
\startstreamlayer[giuseppe] \placefigure [outer,none,fit] {} {\framed[width=.2\hsize,height=.2\hsize,offset=none]{}}
\startitemize \item some test \item \input knuth \item \input tufte \stopitemize \stopstreamlayer
\vbox{\placestreamlayer[giuseppe]}
\stoptext
Ah, excellent, it works perfectly, thanks a lot! Of course, I'm still curious about the reason why a standard vbox wouldn't do it ... -- Giuseppe "Oblomov" Bilotta
Giuseppe Bilotta wrote:
Tuesday, July 31, 2007 Wolfgang Schuster wrote:
you can use ConTeXt's stream mechanism.
\setuppagenumbering[alternative=doublesided]
\usemodule[streams] \definestreamlayer[giuseppe][width=\textwidth]
\newbox\giuseppe
\starttext
\startstreamlayer[giuseppe] \placefigure [outer,none,fit] {} {\framed[width=.2\hsize,height=.2\hsize,offset=none]{}}
\startitemize \item some test \item \input knuth \item \input tufte \stopitemize \stopstreamlayer
\vbox{\placestreamlayer[giuseppe]}
\stoptext
Ah, excellent, it works perfectly, thanks a lot! Of course, I'm still curious about the reason why a standard vbox wouldn't do it ...
sidefloats hook into the output routine and that does ot work in a box; streams intercept the page stream (nasty but neat); expect more of that kind of stuff Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
Tuesday, July 31, 2007 Hans Hagen wrote:
Giuseppe Bilotta wrote:
Ah, excellent, it works perfectly, thanks a lot! Of course, I'm still curious about the reason why a standard vbox wouldn't do it ...
sidefloats hook into the output routine and that does ot work in a box;
Makes sense.
streams intercept the page stream (nasty but neat); expect more of that kind of stuff
You know, seeing how streams work made me think about an extension I was considering for Alpeh: \pageboxnumber, being 255 by default but which could be changed at runtime, choosing which box was used to build the MVL. I originally thought about it because my mathematically aesthetical sense complained that box 255 had to be used in e-TeX and Omega/Aleph as well (the last box number in each system made more sense), but now that I see your streams idea I think it would have been a useful addition. (Oh yes, I should really get back to Aleph. I see that luatex builds on that too. I must say that I'm glad to see that the project has been taken over when I disappeared without a trace :P) -- Giuseppe "Oblomov" Bilotta
Giuseppe Bilotta wrote:
Tuesday, July 31, 2007 Hans Hagen wrote:
Giuseppe Bilotta wrote:
Ah, excellent, it works perfectly, thanks a lot! Of course, I'm still curious about the reason why a standard vbox wouldn't do it ...
sidefloats hook into the output routine and that does ot work in a box;
Makes sense.
streams intercept the page stream (nasty but neat); expect more of that kind of stuff
You know, seeing how streams work made me think about an extension I was considering for Alpeh: \pageboxnumber, being 255 by default but which could be changed at runtime, choosing which box was used to build the MVL. I originally thought about it because my mathematically aesthetical sense complained that box 255 had to be used in e-TeX and Omega/Aleph as well (the last box number in each system made more sense), but now that I see your streams idea I think it would have been a useful addition.
this will become configurable in luatex
(Oh yes, I should really get back to Aleph. I see that luatex builds on that too. I must say that I'm glad to see that the project has been taken over when I disappeared without a trace :P)
well, luatex renders aleph kind of obsolete -) also, luatex has pdf output (also for aleph stuff) ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
Wednesday, August 1, 2007 Hans Hagen wrote:
Giuseppe Bilotta wrote:
You know, seeing how streams work made me think about an extension I was considering for Alpeh: \pageboxnumber, being 255 by default but which could be changed at runtime, choosing which box was used to build the MVL. I originally thought about it because my mathematically aesthetical sense complained that box 255 had to be used in e-TeX and Omega/Aleph as well (the last box number in each system made more sense), but now that I see your streams idea I think it would have been a useful addition.
this will become configurable in luatex
Ah, good to know.
(Oh yes, I should really get back to Aleph. I see that luatex builds on that too. I must say that I'm glad to see that the project has been taken over when I disappeared without a trace :P)
well, luatex renders aleph kind of obsolete -)
Yeah, I got that impression :)
also, luatex has pdf output (also for aleph stuff)
This is a very good thing. I have big hopes up for it. Also, as part of my getting back into the loop, do you think there's some where/some how I can give a hand? -- Giuseppe "Oblomov" Bilotta
Giuseppe Bilotta wrote:
This is a very good thing. I have big hopes up for it. Also, as part of my �getting back into the loop�, do you think there's some where/some how I can give a hand?
well, mplib ... apart from going megapost (your speciality) 3d will be added and since you're the mathemagician who can think in 6 dimensions ... mplib will be linked into luatex Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
Wednesday, August 1, 2007 Hans Hagen wrote:
Giuseppe Bilotta wrote:
This is a very good thing. I have big hopes up for it. Also, as part of my ?getting back into the loop?, do you think there's some where/some how I can give a hand?
well, mplib ... apart from going megapost (your speciality) 3d will be added and since you're the mathemagician who can think in 6 dimensions ...
Ah, this is something I can more probably involve my university with. While my advisor doesn't care much about TeX per se, numerical things are much more of its taste. -- Giuseppe "Oblomov" Bilotta
Tuesday, July 31, 2007 Wolfgang Schuster wrote:
you can use ConTeXt's stream mechanism.
\setuppagenumbering[alternative=doublesided]
\usemodule[streams] \definestreamlayer[giuseppe][width=\textwidth]
I've noticed that specifying width= in the streamlayer definition is not enough to force the stream width. If the width is different from the textwidth, I have to use something like \startsetups streamlayer:giuseppe:settings \overloadtextwidth\gbwidth \stopsetups I would have expected \definestreamlayer[giuseppe][width=\gbwidth] to handle this automatically though. -- Giuseppe "Oblomov" Bilotta
participants (3)
-
Giuseppe Bilotta
-
Hans Hagen
-
Wolfgang Schuster