RE: [css3-writing-modes] bidi-style resolution of punctuation orientation

Steve Zilles

> -----Original Message-----
> From: [] On Behalf
> Of fantasai
> Sent: Thursday, June 30, 2011 7:33 PM
> To:
> Subject: [css3-writing-modes] bidi-style resolution of punctuation
> orientation
> Suggestions for B (characters affected by orientation resolution):
>    Not all neutral characters have an ambiguous orientation that should be
>    resolved automatically. In fact, very few do. We need to make sure that
>    we only automatically determine the orientation of characters whose
>    orientation is subject to change based on context. Characters that have
>    a definite orientation, or for whom orientation is a stylistic (rather
>    than contextual) preference, should not be subject to this automatic
>    resolution.
A different way at looking at this problem is to use the rules for script determination that are expressed in Unicode TR24, particularly sections 2.2 and 2.3. The main idea is that most scripts (not all) have a natural orientation (horizontal or vertical). [As you note elsewhere, some scripts like East Asian and Mongolian based can occur in either orientation.] Therefore, by using the suggested rules by which neutral (or inherited) characters are given a script, the then script classified characters can be given the same treatment as the script to which they are assign. [Note there are some important provisos related to how successful this script assignment can be.]

Secondly, there are a number of common characters that have a full-width codepoint. For these characters, it would seem to make sense to require that if you want the upright version of the character, then you code the full-width codepoint. That is, all non-full-width codepoints are shown in rotation in "vertical-right".

Perhaps, you have too many cases in the description that follows this comment. I tend to agree with Florian that picture based charaaters ought to always appear as a picture. I would like to see use cases where a different orientation would be a better choice. [And, yes, I did read your example of a snowman in a winter phrase, but it was not a very convincing case, IMO.]
>    1. First, we can dismiss any symbols and punctuation that belong to a
>       particular script (i.e. are not Common) as taking the orientation
>       of that script.

[SZ] snip!
> Suggestions for D (author overrides):
>    If ambiguous punctuation resolves to the wrong orientation, how can the
>    author let us know the correct orientation (without wrapping the
> affected
>    punctuation characters in <span>s, as that would probably give very
> awkward
>    markup)?
>    One potential answer would be to say that if an inline's 'text-
> orientation'
>    property is different from the one that does auto-correction, or its
> script
>    tag resolves to a different base orientation, then its contents are
> ignored
>    during neutral resolution. That way a list's items can be individually
>    wrapped with an effect similar to <bdi>.
I am not at all sure why requiring additional markup when the wrong thing happens by default is a bad thing. Unicode Bidi recognized that the default algorithm will sometimes do the wrong thing and added special (non-displaying) characters to change the interpretation. Markup is not so different than this. Why is it bad?
> Conclusion
> ----------
> Bidi-style neutral resolution may gain us some things, but it's not a
> panacea,
> and it introduces a lot of complexity.
> Pros:
>    It solves a handful of ambiguous cases.[SZ] 
[SZ] Why do you believe it only solves a handful of cases?
> Cons:
>    Needs heuristics that are not very reliable and can give unexpected
> results.
>    Understanding the why of those results and how to fix them will be hard.
[SZ] The goal was never to be perfect; it was to be helpful in most (say 80%) of the cases that one was likely to encounter. Introducing markup would fix the cases without much hardship. What is the problem?
> Unchanged:
>    Needing to categorize all the symbols and punctuation as to how they
> should
>    behave in vertical text; we just have a new bucket ("context-dependent")
>    in addition to the others ("upright", "sideways", "stylistic choice, so
>    default to sideways").
> ~fantasai

Received on Wednesday, 13 July 2011 04:26:25 UTC