Rime IME for Android
Trime is originally a frontend of open-source Android Traditional Chinese IME, based on RIME input method framework and written in Java/Kotlin with JNI. It is designed to protect the native language of various local dialects of Chinese and is a universal shape-based and phonetic-based input method platform.
- Developer: osfans
- Contributors: boboIqiqi、Bambooin、senchi96、heiher、abay、iovxw、huyz-git、tumuyan、WhiredPlanck...
- Wiki Editors: xiaoqun2016、boboIqiqi...
- Translators: 天真可爱的满满 (Chinese Traditional), 点解 (English) ...
- Keyboard Designers: 天真可爱的满满、皛筱晓小笨鱼、吴琛11、熊猫阿Bo、默默ㄇㄛˋ...
- Donations: See QR Code in Releases
- Community: Issues, QQ Group(811142286), QQ Group(458845988), Coolapk, Google Play and Tieba
- Projects: RIME、OpenCC、Android Traditional Chinese IME and so on.
TRIME is the abbreviation of Tongwen RIME or ThaeRv Input Method.
From the beginning, TRIME was written for TaeRv Pinyin, and named TaeRv Input Method (泰如输入法).
Then, we created an input method platform with some code tables, such as Wu dialect (吴语). We renamed it to Chinese Character Dialect Input Method (汉字方言输入法).
Later, it supports Wubi and Liangbi and other shape-based input method, we branded it Tongwen Input Method Platform 2.0 (同文输入法平台 2.0), which implies that the phonetic-based and shape-based input method on one platform, while dialects and Mandrain share one kind of characters.
Benefit from the librime project by JNI, we are now in version 3.0 of TRIME aka Tongwen Input Method (同文输入法).
Your contribution are welcome ~ ! 🎉
Android SDK and Android NDK should be correctly installed and configured. If you are new to Android development, please install Android Studio.
Prerequisites for Windows
Symbolic links will be created according to current build configurations, developers need:
-
Enable Developer Mode so that symlinks can be created without administrator privilege.
-
Enable symlink support for
git
:git config --global core.symlinks true
If you cannot or wouldn't like to enable anything, it doesn't matter. Copying will be used instead when error on creating symbolic links.
- Clone this project and fetch all submodules:
git clone [email protected]:osfans/trime.git
git submodule update --init --recursive
- Debug version without signature:
On Linux or macOS, you may run:
make debug
On Windows, run:
.\gradlew assembleDebug
- Release version with signture:
Create keystore.properties
file which contains following contents for signing information:
storePassword=myStorePassword
keyPassword=mykeyPassword
keyAlias=myKeyAlias
storeFile=myStoreFileLocation
Then, on Linux or macOS, you may run:
make release
On Windows, run:
.\gradlew assembleRelease
Target "boost_log_setup" links to target "Boost::coroutine" but the target was not found.
Run make clean
on Linux or macOS, or run .\gradlew clean
on Windows.
Other issues:
- Try
make clean
- Make sure your repo is up-to-date. If one or more submodules are modified, also make sure they are compatible with the current version.
- If the problem still exists(very unlikely), try to make a new clone.
- Check if this is there is an issue/PR related to your problem. If yes, try their solutions.
- If none of them works, you may make an issue to ask for help.(optional)
- Boost C++ Libraries (Boost Software License)
- darts-clone (New BSD License)
- LevelDB (New BSD License)
- libiconv (LGPL License)
- marisa-trie (BSD License)
- glog (New BSD License)
- OpenCC (Apache License 2.0)
- RIME (BSD License)
- snappy(BSD License)
- utfcpp (Boost Software License)
- yaml-cpp (MIT License)
- Android Traditional Chinese IME (Apache License 2.0)