RE: Complex Combining

From: Philippe Verdy (verdy_p@wanadoo.fr)
Date: Thu Nov 27 2003 - 17:29:02 EST

  • Next message: Philippe Verdy: "RE: Complex Combining"

    Arcane Jill writes:

    > I still like the "invisible brackets" idea. That would make the
    precedence explicit. As in:
    >
    > INVISIBLE_LEFT_BRACKET + "9" + "2" + INVISIBLE_RIGHT_BRACKET +
    COMBINING_ENCLOSING_CIRCLE
    >

    I also like it. As I said, they should be given the property of punctuation,
    like parentheses.

    But I would prefer them to be named INVISIBLE OPEN BRACKET and INVISIBLE
    CLOSE BRACKET, to make them neutral in directionality (like parentheses,
    they would have the "mirrored" property), and an editor working with a
    "visible controls" mode, could represent them as dotted parenthesis, with
    the closing parenthesis used as the base character for the diacritic if
    needed, or the diacritic being displayed isolately after the dotted
    parenthese or bracket with the dotted circle.

    These characters should not extend the combining sequence. So they should
    have combining class 0 (like mathematical parentheses). They could extend
    the grapheme cluster only in those cases supported by the renderer, allowing
    their representation with a dotted visible glyph in all cases where the
    representation is not possible (in that case the diacritic would be
    displayed preferably on this fallback dotted closing bracket)

    They should not be considered as format controls (because they are not
    ignorable).

    I don't see any issue if we give them the same character properties as
    parentheses, and they become immediately usable for mathematics where they
    would be extremely useful.

    I see good places to encode them, in the General punctuation block
    U+2000..U+206F, along with other invisible punctuations:

    U+2060 WORD JOINER = invisible
    U+2061 FUNCTION APPLICATION
            invisible application between a function name and its argument,
            like in <s><i><n><f()><x>, displayed "<s><i><n><x>"
            but its bad thing is that the end of the argument is not marked.
    U+2062 INVISIBLE TIMES = invisible multiplication operator
    U+2063 INVISIBLE SEPARATOR = invisible comma
    U+2064 unassigned -> INVISIBLE OPEN BRACKET = INVISIBLE OPEN PARENTHESIS
    (???)
    U+2065 unassigned -> INVISIBLE CLOSE BRACKET = INVISIBLE CLOSE PARENTHESIS
    (???)

    They would play a role that U+2061 is not intended to represent correctly,
    in a context that is not restricted to mathematics.
    They fill the gap for all the candidate missing (and kludge) double
    diacritics, except that they are not used to extend the combining sequence
    or the default grapheme clusters, as applications are free to represent them
    with a single ligature or a basic dotted glyph, if their ligature is not
    possible or not implemented...

    __________________________________________________________________
    << ella for Spam Control >> has removed Spam messages and set aside
    Newsletters for me
    You can use it too - and it's FREE! http://www.ellaforspam.com





    This archive was generated by hypermail 2.1.5 : Thu Nov 27 2003 - 18:13:19 EST