RE: Editing Sinhala and Similar Scripts

From: Marc Durdin <marc_at_keyman.com>
Date: Mon, 24 Mar 2014 22:37:59 +0000

Richard Wordingham wrote:
>
> On Sun, 23 Mar 2014 22:46:49 +0000
> Marc Durdin <marc_at_keyman.com> wrote:
>
> > All the Keyman products -- on Windows, web, iOS and Android, as well
> > as KMFL, which is a port of Keyman, work on the principle of modifying
> > the text buffer directly.
>
> I had been going to remark that they couldn't do that directly, but further
> research showed that Text Services Framework and GTK+ both allow it to be
> done in fact as opposed to merely in principle. (Does this mean that the
> Keyman substitution rules follow the principle of canonical equivalence?)

Currently, KMFL and Keyman do no normalization of text, treating it as a raw Unicode character stream -- catering for this is up to the input method.

Keyman works directly with the text store in the web, iOS and Android versions, and where possible on Windows -- which in practice means the very few applications that have enough support for Text Services Framework, including, for example, MS Word, SIL FLEx, and the RichEdit control. Otherwise it works in a fallback mode where it retains the last sequence of characters typed in a cache until an intervening event causes it to flush its cache. Not perfect, but covers the vast majority of cases without issue (as in, less than one support case per month...)

>It seems to me that at
> least where fallbacks are used, the backing store that KMFL wishes to delete
> must be in the state in which KMFL placed it
> - intervening normalisation will corrupt the input. Is there an explicit
> statement of this anywhere?

Yes, this is true for both Keyman and KMFL when working in fallback modes. In practice, it's rarely a problem.

Marc

_______________________________________________
Unicode mailing list
Unicode_at_unicode.org
http://unicode.org/mailman/listinfo/unicode
Received on Mon Mar 24 2014 - 17:39:28 CDT

This archive was generated by hypermail 2.2.0 : Mon Mar 24 2014 - 17:39:28 CDT