>>24
WindowsならIMEなんたらのウインドウメッセージを処理すれば文字と位置は得られる。日本語の解説もあちこちにあるよ。
OSXは10.5以上でいいならNSTextInputを基礎として某所のFunTextFieldを参考にするといい、10.4系はよくわからない。
Linuxは知らない。