use input to get user input, for non-english characters.
fix some bugs.now workds okay.
yet IME popup is not aligned with blinker, have to do work around