It seems from reading back through the archives that efficient and intuitive entry of Unicode characters is a topic that comes up from time to time. I have built a new, free, Windows-based keyboard entry system for Unicode characters that at least some of the people on this list might find interesting.
This is effectively a super-Latin keyboard layout with support for the majority of: Basic Latin (ASCII), Latin-1 Supplement, Latin Extended-A, Latin Extended-B, Latin Extended-C, Latin Extended-D, Latin Extended-E, Latin Extended Additional, IPA Extensions, Phonetic Extensions, Phonetic Extensions Supplement, Combining Diacritical Marks, Combining Diacritical Marks Supplement, Letterlike Symbols, Mathematical Alphanumeric Symbols, Enclosed Alphanumerics, Arrows, Mathematical Operators Plus additional layouts selectable using CapsLock give support for: Greek, Greek Extended Cyrillic, Cyrillic Supplement, Cyrillic Extended-A, Cyrillic Extended-B Characters are selected through a context-sensitive compose tree accessed using the Right Alt (AltGr) key, with context-sensitive help in a box that pops up when RAlt is held. Rather than using dead keys, keys are context-sensitive on the previously entered characters. So for example, typing "o" followed by RAlt+/ gives ø. Longer sequences give more complex characters, e.g. RAlt+sh+ for ᶴ. Characters are converted into Normalization form C where possible, so "a" followed by RAlt+' gives \u00e1 (á), not a\u0301. More information on www.keyferret.com if you're interested. If anyone is interested in helping make it a better system, please get in touch. Kind regards, Andrew.