[cl-typesetting-devel] Page n of m?

Bob Hutchison hutch at recursive.ca
Thu Sep 30 22:11:10 UTC 2004


On Sep 30, 2004, at 5:58 PM, Marc Battyani wrote:

> Bob Hutchison wrote:
>> It seems that I was calling the mark-ref-point too soon (i.e. before
>> the footer was built). I've appended the code I am using (it is based
>> on the multi-page example in test.lisp). I added some format 
>> statements
>> to some methods in references.lisp and this is what I'm getting. I 
>> also
>> changed the initform of pagenumber to -1 from 999 so I could see the
>> difference between the reference point not being defined and the
>> initform. It seems that the page number is not being changed.
>
> No the mark-ref-point was called at the right place because it creates 
> a box
> that will be instered in the stream of boxes.
> The place where you call it now is outside a text-content so the box 
> will be
> nowhere and the ref will not be computed.
>

OK, that's where I thought it should go, makes a lot more sense to me. 
So I put it back, and this is what I get now:

find-ref-point 'END-OF-DOC' -- ref-point [#<TYPESET::REF-POINT 
12CB06B7>]/#<TYPESET::REF-POINT 12CB06B7>/NIL
find-ref-point-page-number -1
STROKE
STROKE ref-point #<TYPESET::REF-POINT 12CB06B7> page-number 2
find-ref-point 'END-OF-DOC' -- ref-point [#<TYPESET::REF-POINT 
12CB06B7>]/#<TYPESET::REF-POINT 12CB06B7>/NIL
find-ref-point-page-number 2
current pass: 1, undefined references: NIL, changed-references: NIL
WRITE THE DOCUMENT NOW

So stroke is called, this is good. The trouble seems to be that the 
reference is used twice, the second time it *is* found. This, I'm 
guessing is hiding the fact that it was missed the first time. (I've 
reduced my example to a two page document)

Cheers,
Bob





More information about the cl-typesetting-devel mailing list