Skip to content

lennylxx/google-input-tools-macos

Repository files navigation

Google Input Tools for macOS

Build Status

A cloud input method that uses Google Input Tools as engine for macOS.

How to use

  1. Install Xcode 12.5.0+.

  2. 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

  1. Open System Preferences -> Keyboard -> Input Sources, click + to add a new input method, choose Chinese, Simplified -> Google Input Tools.

  2. 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

screenshot

Progress

  • Basic input handling logic
    • Space key to commit current highlighted candidate
    • Return key to ignore candidate and commit input string
    • Number keys (1-9) to select candidate and commit
    • Continue to show new candidates after partial matched candidate is selected and committed
    • Backspace key to remove last composing letter
    • Esc key to cancel composing
    • - and = keys to page up and page down candidate list respectively
  • System UI
  • Basic custom UI
    • Numbered candidates
    • 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
  • 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

Releases

No releases published

Packages

No packages published