RIME: Rime Input Method Engine
Rime with your keystrokes.
Project home
License
Features
- A modular, extensible input method engine in cross-platform C++ code, built on top of open-source technologies
- Covering features found in a large variety of Chinese input methods, either shape-based or phonetic-based
- Built with native support for Traditional Chinese, conversion to Simplified Chinese and other regional standards via OpenCC
- Rime input schema, a DSL in YAML syntax for fast trying out innovative ideas of input method design
- Spelling Algebra, a mechanism to create variant spelling, especially useful for Chinese dialects
- Support for chord-typing with a generic Qwerty keyboard
Install
Follow the instructions to build librime on platforms other than Linux:
Build dependencies
- compiler with C++14 support
- capnproto>=0.7.0
- cmake>=2.8
- libboost>=1.48
- libcapnp>=0.7.0
- libglog (optional)
- libleveldb
- libmarisa
- libopencc>=1.0.2
- libyaml-cpp>=0.5
- libgtest (optional)
Runtime dependencies
- libboost
- libcapnp
- libglog (optional)
- libleveldb
- libmarisa
- libopencc
- libyaml-cpp
Build and install librime on Linux
make
sudo make install
Frontends
Official:
Third-party:
- emacs-rime: frontend for Emacs
- fcitx-rime: Fcitx frontend for Linux
- iRime: frontend for iOS
- PIME: frontend for Windows
- Trime: frontend for Android
- XIME: frontend for macOS
Plugins
- librime-charcode Module that deals with character encoding; depends on boost::locale and ICU libraries
- librime-legacy Legacy module with GPL-licensed code
Related works
- plum: Rime configuration manager and input schema repository
- Combo Pinyin: an innovative chord-typing practice to input Pinyin
- essay: the vocabulary and language model for Rime
- SCU: Squirrel Configuration Utilities
Credits
We are grateful to the makers of the following open source libraries:
- Boost C++ Libraries (Boost Software License)
- google-glog (The 3-Clause BSD License)
- Google Test (The 3-Clause BSD License)
- LevelDB (The 3-Clause BSD License)
- marisa-trie (BSD 2-Clause License, LGPL 2.1)
- OpenCC (Apache License 2.0)
- yaml-cpp (MIT License)