pkamb/NumberInput_IMKit_Sample

Post a link to your Input Method Kit project here

pkamb opened this issue ยท 18 comments

pkamb commented

It would be interesting to see the various projects that people are making with Input Method Kit.

If you come across this repo and sample code, post a link to your IMKit project in this GitHub issue! ๐Ÿ˜ƒ

pkamb commented

'He' is Chinese word ๅ’Œ's PinYin(Sound), it means 'and' or 'with'.

'HeInput'('ๅ’Œ็ ' in Chinese) is a name of famous Chinese input mathod.

OpenHeInput-MacOS is open source HeInput project for Mac OS X.

https://github.com/HeChinese/OpenHeInput-MacOS

pkamb commented

This is a sample program that shows a usage of IMKCandidates' attachChild and related methods.

It is meant to be used as a starting point for input methods with more than a single window.

https://github.com/dougalg/SubCandidates

pkamb commented

XIME Input Method Editor - Yet another Rime Frontend for Mac OS X

https://github.com/stackia/XIME
https://github.com/rime/librime

pkamb commented

Google Mozc - a Japanese Input Method Editor designed for multi-platform

https://github.com/google/mozc/tree/master/src/mac

@pkamb the IMKCandidates' attachChild and showChild methods are awesome, but they are broken since macOS Sierra v10.12. So I have to implement a custom window to show extra information.

pkamb commented

@dongyuwei That's unfortunate. Have you opened a radar? If you post yours, I will duplicate it and also forward along to an Apple Engineer in IMKit.

You can also link it in the Radar issue in this repo: #2

Not yet.

pkamb commented

This set of apps allows you to type Latin characters in OSX and have them transliterate in real time into Cyrillic characters. This includes multi-character transliterations like 'sh'/'ัˆ'.

OSX has native input method support, typically for complicated character input like Chinese or Hebrew. The advantage of this method is that the transliterated keyboard shows up with all your other keyboards in your menu bar and behaves as expected with all text fields. To install, copy the input method app into your ~/Library/Input Methods directory and select the "Cyrillic Transliterator" keyboard from the Russian section.

https://github.com/archagon/cyrillic-transliterator

Gureum is most popular 3rd party Korean input method https://github.com/Gureum/Gureum

A toy project to pass commited sentences to system TTS: https://github.com/youknowone/parrotim

Hi all, thanks for compiling this list. It was helpful while I was working on my transliterating input method: https://github.com/brettferdosi/goftam.

I observed a bug with the candidates window on Catalina where hitting the number key associated with a candidate didn't have any effect. I discovered a workaround, which was to set the IMKCandidatesSendServerKeyEventFirst candidates window attribute and to send events to the window from IMKInputController:handle() using the private handleKeyboardEvent method: candidatesWindow.perform(Selector(("handleKeyboardEvent:")), with: event). This seems to work properly in my input method on Catalina. Just wanted to post here in case others have run into the same issue.

pkamb commented

@brettferdosi cool project! Please log a radar if you haven't already. We have some other bugs here: #2

@brettferdosi The candidates window was broken since 10.13.x(Mojave ), my workaround is to call candidates window's moveDown and moveUp methods manually, and implement the numeric selection logic manually. See https://github.com/dongyuwei/hallelujahIM/blob/master/src/InputController.mm#L105

vChewing IME. A bopomofo-based input method using both native Simplified Chinese data and native Traditional Chinese data. No Simp<-->Trad conversion on commit. (Conversion always has inaccuracy.)
https://github.com/vChewing/vChewing-macOS

Hey, comrades. Have any of you tried keeping the candidate window above NSMenu and Spotlight?

I tried the following:

IMKCandidates.perform(Selector(("setWindowLevel:")), with: client.windowLevel() + 1000)

However, as soon as the input method gets terminated and rebooted, the candidate window starts keeping itself beneath all other Windows visible in the desktop.

Hi, by watching this thread for years, I think we InputMethodKit users need a slow, slack, but working community.
@ShikiSuen launched InputMethodKit subreddit a few minutes ago. Please visit here.

https://www.reddit.com/r/InputMethodKit/