From: Paul Rohr (paul@abisource.com)
Date: Mon Apr 22 2002 - 11:54:28 EDT
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?
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
- draw a series of Vietnamese combining characters as a single glyph
- 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?
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.
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.
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.
This archive was generated by hypermail 2.1.4 : Mon Apr 22 2002 - 11:54:36 EDT