[reportlab-users] question about keepWithNext and multibuild
    adam hyde 
    adam at flossmanuals.net
       
    Tue Sep 23 10:20:58 EDT 2008
    
    
  
hi Robin,
Thanks for the update. Its good to hear the situation, I'm not entirely
sure I understand the technical issue but I will talk to a friend that
is a python programmer to see if he can take a look at it. 
Is there any way that you can think of to generate a TOC without
multibuild? I was wondering if it is possible to record the placement of
headings, and build the TOC at the end of the process. I'm sorry if this
is a naive suggestion, my understanding of python is not too deep. If
you have any suggestion on how we could do it without multipass I would
happily try some experiments and report back.
adam
On Tue, 2008-09-23 at 14:59 +0100, Robin Becker wrote:
> adam hyde wrote:
> > hi,
> > 
> > I saw the bug mentioned last week or so (keepWithNext failing with
> > multibuild).
> > 
> > Someone from reportlab said they would look at it - did you manage to
> > check it out? I'm not sure how to check if there bug has been fixed etc
> > (so guessing this list is the best place to ask)
> ........
> 
> I had a look at this and think it will be pretty hard to fix this stuff up 
> easily. The original intent of the doctemplate class was to be a simple single 
> pass process. That meant that the requirement of non-mutable story contents was 
>   not strictly observed.
> 
> For multi-pass there is an absolute requirement that the story contents not be 
> seriously modified during each pass.  Of course things like the actual contents 
> of flowables may change so something that rendered as 'pass 0' might eventually 
> end up as rendering as 'pass 2', but the keepWithNext stuff is implemented by 
> injecting new things into the story and modifying the original styles.
> 
> Currently the multi-pass builder which was introduced by Andy to allow easier 
> calculation of references/tables of content etc etc makes little effort to clean 
> up undesired changes made during each pass. Probably we need to keep a list of 
> structural changes that are made and reverse these prior to succeeding passes. 
> The alternative is to find better implementations of keepWithNext and similar 
> which remain invariant after first usage.
-- 
Adam Hyde
Founder FLOSS Manuals
http://www.flossmanuals.net
    
    
More information about the reportlab-users
mailing list