[Bf-committers] UTF8 text input status (on OS X)

Alexandr Kuznetsov kuzsasha at gmail.com
Wed Nov 2 03:08:24 CET 2011


> c) Typing with dead keys (e.g. ¨ + o => ö) didn't work for me. I
> managed to get it working using NSTextInput, patch here if people want
> to test, I'm not very confident that this doesn't break something, so
> some testing would be great: http://www.pasteall.org/25983/diff

I think this problem is much bigger here. The dead keys are typed before a
real key, but the composed UTF chars are store in the reverse order. Even
if we have a  buffer for that, it won't solve many problems. For example
Chines and Japanese inputs require more closer interaction with the text,
rather than simply typing character. Different input methods exist for
different languages which are natively supported by OS. But because Blender
doesn't use native text fields, they must be  implemented by ourselves. For
example, MS Pinpyin replaces typed latin characters into chinese when the
whole word is complete. Therefore Blender must expose more text interface
to Ghost. Ghost must be able to get the current line, cursor, visual
position of editing text and then push edited text back. I probably can
take care of this project, but it won't be until end of December. Plus I
don't know any hieroglyphics languages.
There is multiple cross platform implementations of IME. When we were
discussing this with JesterKing, he proposed to use SDL. But although it
might have ready solution, it is probably hard to integrate in our Ghost,
as all SDL must have its own loop.
(Anyway, when IME will be implemented, we might get speech recognition and
handwriting for free!!)

a) Uppercases character umlaut (e.g. Ü) are not rendered correctly in
> the user interface, they do show in 3D text and the text editor.
> Appears to be a text rendering problem that would happen on all
> platforms?

Yes. It is a problem on Windows also. Moreover it is a problem exist with
precomposed characters. Maybe it is problem of clipping? Anyway, maybe it
is good time to switch char render library as was discussed earlier to
support bidirectional text. Maybe there are more latent problem with the
rendering of hard characters like Chinese or multiple compositions.

Best Regards,

More information about the Bf-committers mailing list