On Wed, 17 Nov 2004, Egmont Koblinger wrote:
> combining acute is only sent five seconds later. The receiver party has to
> first display an "a" since it doesn't know it's going to be continued. Then
> later it has to be able to put an accent over the already displayed
> character.

As srintuar has already observed, this is a problem even without combining
characters, because in general, the appearance of a character can depend
on following context.  Even just with accents, it's possible that the
width of a narrow letter might change when it acquires an accent, so full
redrawing is required, not just adding new pixels.  Software that handles
this properly and completely must be prepared to redraw earlier characters
(possibly more than one!) on receiving new data.  It's ugly but unavoidable. 

> What's the design rationale of the combining character following instead of
> preceding the letter itself?

The decision clearly is arbitrary, with both approaches having advantages.
For example, in the context of "talk" etc. receiving only part of the
character temporarily, rendering an "a" without an accent is generally
more legible than rendering the accent without the "a". 

Do you say "a-acute" or "acute-a"?

> Just think of TeX's \'a, or the combining
> character feature of linux console and X window, here always the accent is
> entered first...

Data entry and data storage are two separate issues, and what's best for
human interface isn't always right for storage.  For example, often the
user interface will provide several ways of entering the same character,
but will not distinguish between them internally. 

> What is backspace supposed to do with NFD unicode streams? Should it delete
> one unicode entity (that is only the accent from the top of a letter) or a
> complete combined character?

If combining accents are sent as they are typed, it would clearly be
useful to provide both, presumably specified by different keyboard
sequences.  If the complete character is sent only after the keyboard
handler is satisfied (somehow) that it *is* complete, then backspace ought
to delete the whole thing. 

                                                          Henry Spencer
                                                       [EMAIL PROTECTED]


--
Linux-UTF8:   i18n of Linux on all levels
Archive:      http://mail.nl.linux.org/linux-utf8/

Reply via email to