Re: undo and combining characters

From: Andrew Dunbar (hippietrail@yahoo.com)
Date: Mon Apr 22 2002 - 22:26:11 EDT

  • Next message: Andrew Dunbar: "Re: iconv errors on Solaris 8 -abiword 1.0"

     --- Paul Rohr <paul@abisource.com> wrote: > I won't
    pretend to understand all of the issues
    > currently being discussed on
    > the UTF8 threads -- full i18n support is a huge
    > elephant to tackle, after
    > all. However, I do get the sense that we have a
    > lot of people looking at
    > different aspects of the elephant:
    >
    > - the feet have to be big and round
    > - don't forget the trunk!
    > - the skin isn't scaly enough
    > - and what about the ears?
    > - etc.
    >
    > Thus, to help bridge some gaps (between say Andrew
    > and Martin), here's a
    > concrete question:
    >
    > How should undo work for combining characters?

    For typing text, it should work the same as hitting
    backspace. Whatever seemed to be a single change to
    the user should be a single operation to the undo
    system. It shouldn't need any extra work at all.

    > The piece table needs to maintain a notion of an
    > atomic operation, and while
    > it has some globbing capabilities, it'd be nice if
    > we don't abuse them too
    > much. The goal of undo is to be able to either
    > replay or remove one or more
    > editing operations on the document.
    >
    > I don't know enough to be able to describe all of
    > the interesting screw
    > cases we'll need, but here's a starting point:
    >
    > - type two arabic characters that get drawn as a
    > ligature

    The first undo will undo the second character leaving
    a single non-ligated character. The second undo will
    undo the first character leaving neither of them.
    Undo won't have to know anything special.

    > - draw a series of Vietnamese combining characters
    > as a single glyph

    Almost the same as the above except the Arabic
    ligature
    will look quite different to the two single characters
    and the Vietnamese combined character will look just
    like the two seperate characters superimposed.
    Undo won't have to know anything special.

    > - etc.

    > What would a native speaker want to happen when you
    > "undo" the entry of a
    > single "on-screen" character?[1] I suspect that
    > creating such an entity may
    > take more than one step (in the input method
    > editor), but should they always
    > be undone individually? Can they?

    Input Method Editors (IMEs) are used for Chinese,
    Japanese, and Korean though they are possible to
    implement for any purpose - such as arbitrary Unicode
    character IMEs - these are not common. Creating a
    CJK "ideograph" or "han" character takes more than one
    step but only the IME knows about these steps. When
    the user has chosen the desired glyph from the IME,
    the IME then sends a string of one or more characters
    to the input system. Undo should remove that string.
    We should never try to undo a single character at a
    time. Undo won't have to know anything special.

    > This is actually not an easy question to answer.
    > Note for example, that
    > undo/redo for English typing actually has to do a
    > fair amount of globbing to
    > be useful.

    It should be the same for any language. As long as we
    re-render the string of course but I assume we already
    do this.

    > bottom line
    > -----------
    > I strongly suspect that we need to understand the
    > desired GUI behavior here
    > before we'll be able to get the underlying design
    > right in ways which
    > satisfy both Martin and Andrew.

    Nah it's easy in this regard luckily (:

    > Paul
    >
    > [1] Sorry for being so sloppy about the terminology
    > here. Note that users
    > aren't ever going to be precise about this either.
    > Until the net effect
    > Just Works, we haven't gotten it right, no matter
    > what terms we use.

    No worries. I think at some point we're going to have
    to develop some pretty precise terminology of our own
    at least for the developers to use.

    Andrew Dunbar.

    =====
    http://linguaphile.sourceforge.net http://www.abisource.com

    __________________________________________________
    Do You Yahoo!?
    Everything you'll ever need on one web page
    from News and Sport to Email and Music Charts
    http://uk.my.yahoo.com



    This archive was generated by hypermail 2.1.4 : Mon Apr 22 2002 - 22:27:28 EDT