[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Producing a hymn book
From: |
Barrie Stott |
Subject: |
Re: Producing a hymn book |
Date: |
Wed, 16 Nov 2005 16:45:11 +0000 |
User-agent: |
Mutt/1.5.6+20040722i |
Thanks again, Jeff, for your efforts on my behalf. I'm just sorry that
you were unable to find a solution. If I fail that's one thing but if
you fail - well, that really is a 3 pipe problem! I'm pleased that my
conclusion, that unbreakable space after address@hidden { ... }' isn't, is the
same one you reached.
I have now `cheated' and obtained a solution outside of lout;
unfortunately, this is only a semi-automatic one but it was fairly
trivial to achieve.
I produce a document and find the first copyright to appear at the top
of a page. If there is none, I'm done; otherwise, I arrange for some
vertical space to be added before the last verse of the offending
hymn with the effect that the copyright is no longer alone. I repeat
this till the whole document is acceptable. It adds only about a dozen
lines and a small array (of offending hymn numbers) to the script -
and a leisurely 5 minutes to get a good document.
Barrie.
On Wed, Nov 16, 2005 at 10:24:34AM +1100, Jeff Kingston wrote:
> > there are 2 or 3 places where the hymn is at the bottom of a
> > page with the copyright stuff at the top of the next page.
> > ...
> > def @Hymn left x right y { @LP {Bold 20p} @Font x @RCD y }
>
> I think the problem is inside @RCD; it contains a breakable
> vertical space of zero height. I tried to fix things by
> removing @RCD and replacing it with raw Lout symbols:
>
> def @Hymn
> named title {}
> named copyright {}
> right verses
> {
> {Bold +8p} @Font title
> //0.5fu
> |0.5rt { lines 1.2fxu } @Break verses
> //0.5fu
> |1rt @OneRow copyright
> }
>
> I tend to avoid spaces at the beginning and end of symbols,
> so I omitted your @LP from the definition of @Hymn. I added
> "lines @Break" around the verses, not sure why you didn't.
>
> But then I hit a deficiency in the current implementation of
> Lout, which causes it to refuse to break between verses with
> this definition, even though the Expert's Guide clearly says
> that it should, and using @RCD it does. I did some debugging
> and found that the implementation handles the kinds of objects
> you get when you use @RCD, but not the simpler kind you get
> when you use the definition above. Grrr.
>
> There are various horrible workarounds that you can probably
> find yourself. If not, let me know.
>
> Jeff