google-input-tools-macos
google-input-tools-macos copied to clipboard
Google Input Tools for macOS
Google Input Tools for macOS
A cloud input method that uses Google Input Tools as engine for macOS.
How to use
-
Install Xcode 12.5.0+.
-
Clone and build the project.
git clone https://github.com/lennylxx/google-input-tools-macos
cd google-input-tools-macos
./build.sh
The output will be
~/Library/Input\ Methods/GoogleInputTools.app
-
Open
System Preferences
->Keyboard
->Input Sources
, click+
to add a new input method, chooseChinese, Simplified
->Google Input Tools
. -
If you want to remove it, simply run below command.
rm -rf ~/Library/Input\ Methods/GoogleInputTools.app
rm -rf ~/Library/Input\ Methods/GoogleInputTools.swiftmodule
Screenshot

Progress
- [x] Basic input handling logic
- [x]
Space
key to commit current highlighted candidate - [x]
Return
key to ignore candidate and commit input string - [x] Number keys (
1
-9
) to select candidate and commit - [x] Continue to show new candidates after partial matched candidate is selected and committed
- [x]
Backspace
key to remove last composing letter - [x]
Esc
key to cancel composing - [ ]
-
and=
keys to page up and page down candidate list respectively
- [x]
- [x] System UI
- [x] Basic custom UI
- [x] Numbered candidates
- [x] Highlight current selected candidate
- [ ] Arrow keys to switch between highlighted candidate
- [ ] Group candidates into multiple pages, each page with at most
10
candidates - [ ] Page up and page down button
- [ ] Draggable candidate window
- [ ] Advanced custom UI
- [ ] Display tokenized input string and candidates
- [ ] Settings for font name, font size, color, etc.
- [ ] Skin display
- [ ] Skin manager
- [x] Cloud engine
- [ ] Cancel previous unnecessary web requests to speed up
- [ ] Chinese/English mode toggle
- [ ] Fullwidth form of punctuation in Chinese mode
- [ ] Input tool switching, such as Pinyin, Shuangpin, Wubi, etc.
- [ ] Allow to use HTTP/SOCKS proxy