/librime

Rime Input Method Engine, the core library

Primary LanguageC++BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

RIME: Rime Input Method Engine

Build Status Build status GitHub release License

Rime with your keystrokes.

Project home

rime.im

License

The 3-Clause BSD 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:

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:

Contributors