[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Thanks, and more questions

From: Dmitry Kirsanov
Subject: Re: Thanks, and more questions
Date: Wed, 28 Mar 2001 18:05:13 -0400

Jeff & Uwe,

Thanks for your help. I will respond to both of your messages here.

> > 1. The idea of Lout placing the row mark at the middle of lowercase
> > letters, instead of the baseline, strikes me as something rather weird.
> Until you try to typeset equations, when the reason becomes much clearer.

OK, but then it is a perfect candidate for becoming a switchable option,
so the equations mode would switch to midlines while the default would
use baselines.

> Also, I'm comfortable with the idea of Lout producing weird stuff when
> two words of different font size are aligned - I don't think this looks
> any good even if the base lines are alighed.  

You are correct in that setting equal height of lowercase characters is
generally considered necessary when different fonts are used in a
paragraph. Still, there are situations when this is not possible, in
which case aligning baselines would be considered the obvious default
behaviour by, I'm sure, the majority of designers.

> If you do want it you can
> get it using the @VShift symbol, although you have to fiddle around to
> get the right amount of shift.

Of course, but doing this manually is a disadvantage to using Lout.

> > 3. Finally: is there a way to implement hanging punctiation in Lout?
> At last, something that can be done.  You just need to produce an
> object of apparently zero width which in fact prints the punctuation
> character just to its left.  I haven't done it but something like
> this:
>     def @Hang right x { @OneCol { |0io 1w @HShift x } }
> used like this:
>     do dah do dah
>     @QD {
>     address@hidden `}doo dah doo dah'
>     }
> should work.  

It does, but does not do exactly what I need. It works for punctuation
which is _known_ to be at the beginning of a line. If you add a word
before address@hidden ...}, the distance between it and the quote will be too
small. What I would like to get is a _paragraph_ of text where all
symbols enclosed in address@hidden ...} have their usual width and spacing
around them when in the middle of the line, but hang out when they
happen to be at the beginning or end of a line (TeXbook has an example
of this). Is it possible?


> > 1. The idea of Lout placing the row mark at the middle of lowercase
> > letters, instead of the baseline, strikes me as something rather weird.
> See the very bottom of 'whatsnew' file in the distribution.
> That entry is there for couple of years now. :-(

I really hope it will be implemented sometime in the foreseeable future!

> > 2. I need outdented paragraphs, but to my great surprise I could not
> > find any way to change the value of the outdent.
> Yes, it's hardwired (in z14.c:FillObject)

Which prompts me to a question, how can I make a fix to the source and
recompile Lout? What tools are necessary for this on Win98? I know some
C, but I don't have any compilers installed on my system. If anyone
could provide a brief step-by-step instruction on how to compile the
program, preferably using some tools openly available on the Internet, I
would be really grateful.

> Adding outdent amount to break style is not very difficult
> techncially, I guess, but "unstrucured" left parameter to @Break is
> already so overloaded that this might (must?) trigger a syntax change.

Still I would vote for a "quick fix" to extend the @Break if it can be
done quickly. 

> At the user level - no (you can't tell if you're at the end of the
> line).  At the core level - I don't think it's hard.  But all this
> requires exporting to the user world a lot of knobs to the paragraph
> breaker and coming up with a consistent syntax for it etc.

Again, I would add my vote for implementing what you have described. 

> I think nobody so far was really pushing the envelope and so status
> quo have been "good enough".

I'm considering using Lout for a couple book projects. The source has to
be XML, then XSLT for transformation, and finally some formatter. My
options for the formatter have been TeX (a nightmare to program, plus
some serious limitations without a chance to get them fixed) and XSL FO
(very limited and immature) until I found Lout. (Hence my interest in
the prospect of XMLization of Lout; Uwe correctly states that it is
possible to still use Lout as it is with XML, but nevertheless I think
that XML syntax from top to bottom would be a great advantage to systems
using Lout as the formatter.) So far I mostly like what I see in Lout,
but there are problems such as those described above. If I'm able to
work around these problems I will build a working setup using Lout,
which by the way will get it some publicity (the books will credit their
production environment). Therefore I'm VERY much interested in solving
the problems we're discussing, and I would greatly appreciate anyone's
help in this direction. I think Lout, being already quite powerful, must
be pushed forward in areas where it is not quite up to standards.

Finally one more question. What is the best way to produce a symbol
which does two different things depending on whether it is on an odd
page or even page? More importantly, if it is possible, will this symbol
be prone to the problem similar to TeX, where the first several lines on
the next page think they still belong to the previous page because TeX
always builds some extra lines before it produces the current page?

Dmitry Kirsanov                               http://www.kirsanov.com

reply via email to

[Prev in Thread] Current Thread [Next in Thread]