awrit icon indicating copy to clipboard operation
awrit copied to clipboard

[Feature] IME Support

Open CyanChanges opened this issue 1 year ago • 2 comments

For Chinese and Japanese users, IME is required to type Chinese or Japanese words.

If you could make IME work, it will be very nice.

CyanChanges avatar Feb 25 '24 06:02 CyanChanges

Admittedly, I looked into this when I started but since I rarely use awrit in a way that needs input, I gave up. There is little documentation for Chromium Embedded Framework for IME.

There some bugs related to IME's and off-screen rendering (OSR) with Chromium Embedded Framework: https://github.com/chromiumembedded/cef/issues/3544

There needs to be two implementations, one for macOS and one for Linux. macOS might be easier because there are tests for it: https://github.com/chromiumembedded/cef/blob/master/tests/cefclient/browser/text_input_client_osr_mac.h https://github.com/chromiumembedded/cef/blob/master/tests/cefclient/browser/text_input_client_osr_mac.mm

There are tests regarding IME here: https://github.com/chromiumembedded/cef/blob/2c5dd120c74a2dc61f07b9043ed26ccb977298c3/tests/ceftests/os_rendering_unittest.cc#L161-L167


If you have time, maybe you can look into how it should be implemented and make a pull request.

chase avatar Feb 26 '24 09:02 chase

@CyanChanges If you're on Linux, do you use ibus to use IME with Kitty? If not, what do you use?

My colleague brought up that Google has an input tools extension which has its own implementation of IME which is available as a Chrome extension: https://www.google.com/inputtools/try/

Could you try using this and telling me if having input like this would help?

chase avatar Mar 13 '24 14:03 chase

@CyanChanges I added basic IME support in the electron based version. Can you give it a try?

chase avatar Feb 19 '25 18:02 chase