ligature selections (was Re: undo and combining characters)

From: Paul Rohr (paul@abisource.com)
Date: Tue Apr 23 2002 - 12:37:20 EDT

  • Next message: Karl Ove Hufthammer: "Re: undo and combining characters"

    At 05:15 PM 4/23/02 +0100, Andrew Dunbar wrote:
    > --- Karl Ove Hufthammer <huftis@bigfoot.com> wrote: >
    >"Tomas Frydrych" <tomas@frydrych.uklinux.net> wrote
    >> in
    >> news:3CC58433.16110.B1F416@localhost:
    >>
    >> > I think in the case of the Arabic ligature, these
    >> have to be
    >> > treated as two characters, i.e., pressing
    >> backspace after the
    >> > second one leaves you with the first one. This
    >> case is not a
    >> > real issue, because internally the ligature is
    >> stored as two
    >> > separate characters, ligature is just a way of
    >> displaying in
    >> > them in a way that looks better,
    >>
    >> But how does selection works? Are the glyphs
    >> 'decomposed' to allow
    >> selection (which causes a reflow), and religated
    >> when you move the
    >> selection?
    >
    >Selection should select the entire ligature.

    Really? For the sake of a consistent user experience, shouldn't the
    following operations all have the same extent?

      - backspace
      - extend selection one unit (shift-left arrow)
      - extend selection one unit (via the mouse)

    If backspace is going to decompose the ligature, then you're setting a UI
    expectation that the portions of that character are discrete units, so you
    also should be able to select, format, copy, and paste at the same level of
    granularity.

    Thus, please make a case for one of the following:

      - backspace/selection are ligature-centric OR
      - backspace/selection are character-centric

    I'm not buying the argument that they should be different. Ick.

    >Otherwise
    >we need a selection that can highlight half of a
    >ligature and I think this is too much to ask for too
    >little gain.

    Yep. That's what we'd need to implement. Doing the math for this may not
    be too hard, though. Two simple suggestions:

    1. Take the width of the ligature and divide by the number of characters it
        represents. This might not be pretty, but the overall effect should be
        self-explanatory.

    2. Take the widths of the "standalone" glyphs, and use them to
        proportionally subdivide the width of the ligature. However, I'm not
        sure whether the results would be "good enough" in real life. You'd
        have to test.

    >I think MSWord does do it though ):

    OK, so this suggests that the local equivalent of the church secretary
    (gosh, what an American concept that is) already has an expectation about
    what it means for selections to Just Work here.

    Paul

    PS: How did this discussion move from the selection thread to the undo
    thread? Argh! All these posts are hard enough to keep track of as it is.



    This archive was generated by hypermail 2.1.4 : Tue Apr 23 2002 - 12:37:34 EDT