The Dead Keys Conundrum: An Encyclopedia Brown Mystery

by Michael S. Kaplan, published on 2011/04/22 07:01 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2011/04/22/10157095.aspx


It seems I may have inspired myself a little bit.

Let me explain.

It started when I blogged Chain Chain Chain, Chain of Dead Keys almost a week ago.

No, hang on.

It actually started some time during the other ten blogs cited in that blog written over the last half decade or so.

When I started talking about dead keys.

The limitations about dead keys  have been made clear.

Like the fact that they can only be used to produce a single UTF-16 code point at a time. And each piece of the dead key (the initial character/base character/composite character) contains exactly one UTF-16 code point.

Even when you chain dead keys together as I described how to do in that last post, you have to include valid UTF-16 code points during each link of the chain of dead keys.

There are other not entirely intuitive behaviors that dead keys bring to us -- like if you type keys that are not defined in the chain -- it will give up, and show both the character that is partially typed at the start and the character that you typed right after that (this is in fact was causes the problem in the third example I gave in The keyboard does not do what I tell it to!

Anyway, after I wrote that blog on Saturday, I looked at all of this information and realized I thought I might have found solutions to some of the common problems I have brought up in the past:

I tested my solution out, and I was correct -- I solved the two problems that no one else had ever solved before.

Of course I didn't come up with it five years ago, so I'm not going to sprain my shoulder patting myself on the back!

In the spirit of Encyclopedia Brown, can anyone describe the solution I found?

I'll provide the answer tomorrow, either giving credit to whoever finds what I figured out, or just to me. And I'll describe the solution, of course. :-)


Van on 23 Apr 2011 1:28 AM:

If it involves the Table Text Service, I don't want to hear about it.

Michael S. Kaplan on 23 Apr 2011 5:51 AM:

It does not involve the Table Text Service, or the Text Services Framework, at all.


referenced by

2011/11/09 The evolving Story of Locale Support, part 6: Behind the Cherokee Phonetic layout in Windows 8

2011/04/28 The Sally Kimball Addition To The Dead Keys Conundrum: An Encyclopedia Brown Mystery

2011/04/23 Solution: The Dead Keys Conundrum: An Encyclopedia Brown Mystery

go to newer or older post, or back to index or month or day