Getting Started in 10 minutes
This tutorial introduces you to Rime-Moran, the state-of-the-art open-source implementation of Ziranma, for typing Chinese fast.
INFO
Unfortunately, due to the burden of maintaing up-to-date information for a limited audience, we are unable to offer a full translation of the Moran book, unless interested parties get involved. You are encouraged to utilize modern assited translation software, including various online translation websites or even ChatGPT, to read our book in Chinese. However, you may use this page as a reference whenever you feel the translation is confusing.
What is Rime-Moran, and What is Ziranma?
Ziranma (自然碼) is first and foremost a coding scheme for Chinese characters, developed by Zhinong Zhou (周志農) in the 1980s. It elegantly combines both the pronunciation (via shuangpin, 雙拼) and the shape (via auxiliary code, 輔助碼) of the character into a compact four-letter code.
In stark contrast to Pinyin, Cangjie, or Wubi, The most prominent feature of Ziranma is that Ziranma combines both phonetic and shape information. Such a coding scheme is called phonetic-shape code (音形碼), whereas Pinyin is phonetic code (音碼), and both Wubi and Cangjie are shape code (形碼).
INFO
Unsurprisingly but confusingly, Zhou also calles his proprietary implementation "Ziranma", which is now defunct. Throughout the entire book, we only talk about the coding scheme, not Zhou's proprietary software.
Rime-Moran is an open-source implementation of Ziranma by Project Moran and the RimeInn community. It not only implements many advanced features oringially from Zhou's implementation, but also innovates many new features. As far as we know, Rime-Moran is also the state-of-the-art shuangpin Rime schema.
INFO
The full name of "Moran" is 魔改自然碼 (Mogai ziRanma). It literally means "Ziranma but modified in a freakish way." It was originally a personal project of the author (started in 2023) but later escaped into the wild, under the pressure of many curious users.
The most significant innovation of Moran is that (1) it allows you to mix auxiliary code freely when typing a long sentence, and (2) implements "quick code" (see below) correctly and efficiently atop the Rime engine, making it portable across all major platforms. Several projects have been taking inspiraitons from Moran, but unfortunately, to the best of our knowledge, none of them have achieved feature parity due to various reasons and/or different design choices.
What is shuangpin (雙拼)?
Shuangpin (lit. dual-pinyin) describes the pronunciation of a Chinese character using only two letters (hence the name). For example, the pinyin for the character 爽
is shuǎng
, and its shuangpin counterpart is ud
, merely two letters.
If you know pinyin, you can use the following chart to convert any (toneless) pinyin into shuangpin:
Shuangpin is easy. A proficient Pinyin user can usually learn Shuangpin in a few days, and achieve faster typing speed in one week or two.
A Shuangpin schema can be used on its own, just like any input method based on Pinyin. You will be pleased to know that the Ziranma Shuangpin schema is supported by all current pinyin IMEs! It is truly the de facto standard.
Therefore, even if you never learned the auxiliary code, you can benefit from learning shuangpin anyway. Just pick up any Pinyin input method, configure it to "shuangpin mode", select "Ziranma" (or "Changyong" in Apple systems), and you are all set. It's now a glorified super fast Pinyin IME.
Nevertheless, we encourage you to learn the Ziranma auxiliary code as well. Please read on.
What is auxiliary code (輔助碼, fuzhuma)?
The auxiliary code is also referred to as shape code. It describes the shape of a character using only two letters.
The rules of determining the auxiliary code of any character is simple:
- Given a Chinese character (eg.
好
) - Find the radical (部首) of the character. In the case of
好
, it's女
. - Find the remaining part of the character sans the radical; in this case,
子
. - Find the initials of the shuangpin of the radical
女
(n) and子
(z), combine them into the final codenz
.
Exercise: 思
Answer: 心 (x) + 田 (t).
In this case, the radical is 心
, which is not the first component of the character! Now you see the difficulty? 😉
Due to considerations of improving the overall performance of Ziranma, there are a few irregular components. Like 扌
is encoded as f
. Please consult the following chart:
INFO
You cannot obtain, and really don't need to memorize, the full list of component codings, which is in stark contrast to other shape-based IMEs. The chart is only a best-effort enumeration for some of the common components.
Ziranma's auxiliary code is relatively easy. A proficient Chinese speaker can usually learn the basics and start taking baby steps in a few minutes, but it may take a few days or even weeks of daily use to be proficient.
INFO
To a Chinese learner, finding the radical of a character might be surprisingly difficult. Therefore, if you are just beginning, we suggest you, for the time being, stick to Pinyin or Bopomofo (purely phonetic), or a purely shape code (like Cangjie).
Moran is designed by and for Chinese native speakers, after all!
How to use Moran?
TIP
Try our online demo!
For any given character, you could get its shuangpin (denoted YY
), and its auxiliary code (XX
) using the process described above.
- To type any character: try typing
Y
,YY
,YYX
,YYXXo
,YYXX/
(whereo
and/
are filler code to distinguish characters from words) - To type any word: just put characters together (but not
Y
-form codes)
You may notice when typing Y, YY, YYX, that some candidates are marked ⚡. These candidates are 'fixed' at that place. Such code is called 'quick code'. You should learn them as you use Moran in daily life: they remove uncertainty from statistical sentence-making algorithms, and can drastically improve your typing speed.
A special note: in the default installation, a feature called 出簡讓全 (abbrev. ijrq
) is enabled. This feature will lower the priority of a character if its full code is typed and the character has a quick code. You can toggle it off, but for experienced users, this can reduce the number of selections quite a lot.
INFO
To stenographers, this might sound like briefs. But unlike briefs:
- quick codes are almost always the prefix of its corresponding full code. Not much to memorize.
- typing the full code still gets you the candidate you want. It's just in the second page of the candidate list.
OK, I'm convinced. What's next?
This is only a very brief introduction, but that's really all of the essentials you really need to know. Hopefully it took you less than 10 minutes.
Beyond the fundamentals, there are hundreds of features bundled in Moran. We invite you to read our superb Moran book in Chinese. With the English introduction above, you can use any free online translation service without confusion from the mistranslation.
If you are not a native Chinese speaker, yet you are super intrigued by Chinese typing tools and theories, you are welcome to join in the RimeInn community.
In case of doubt, or you would like to suggest some additions, feel free to contact us.