OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Re: [docbook-apps] Writing mode, xsl-fo output

On Fri, 1 Apr 2011 10:40:16 -0700, "Bob Stayton" <bobs@sagehill.net>
> But when you say "some rl-tb" text, do you mean a mixed language
> In that case, the writing mode value should be for the dominant
> since the document's writing mode determines the page layout.. 
> Any inline translated text should get the 
> correct text direction based on its Unicode character range.

That last sentence--that the writing direction can be determined by
inspecting the characters--is a common intuition (it was once my own
intuition).  But it isn't quite that simple, since some symmetrical
punctuation marks belong sometimes to L2R text, and sometimes to R2L text. 
For example, an ASCII period at the end of a run of R2L text might belong
at the left end of the R2L text, or--if the R2L text is at the end of an
L2R text--it might belong at the right end of the L2R text (and therefore
at the right end of the R2L text).  

Unsymmetrical punctuation marks sometimes exist as distinct L2R and R2L
code points in Unicode, like the ASCII comma vs. the Arabic comma U+060C. 
But Parentheses (which of course are asymmetrical) are also sometimes used
inside runs of R2L text--I've seen them in Urdu, for example.  Here I
believe the ASCII open parenthesis is used as an Urdu close paren, and vice

Space characters of course also fall into this category of ambiguous
direction, although that's generally handled correctly by algorithmic

There's been considerable discussion of this general issue (whether it's
possible to algorithmically determine the ends of an R2L run inside an L2R
run, or vice versa) over on the XeTeX mailing list.  The opinion of Those
Who Know seems to be that it is not 100% decidable.

   Mike Maxwell

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]