Open-source project
iDvel/rime-ice avatar
iDvel/rime-ice

rime-ice (雾凇拼音): a maintained Simplified Chinese Rime configuration

Rime 配置:雾凇拼音 | 长期维护的简体词库

19,563 stars1,193 forksLuaGPL-3.0

At a glance

What is it?
rime-ice ships full pinyin and eight double-pinyin schemas, a curated Chinese and English dictionary, and commented configs for Weasel, Squirrel, Fcitx5 and iBus. It is a config to copy into a Rime user directory, not a program you compile.
Who is it for?
Adopt rime-ice if you want a Simplified Chinese Rime setup that works after a copy-and-redeploy, or if you are willing to learn Rime patching so updates do not overwrite your edits. Do not adopt it if you need Traditional Chinese as the primary output, or if you expect a package manager to manage upgrades for you.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 6 days ago.
What is it written in?
Mainly Lua, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What rime-ice is, and the problem it removes

Rime is an input method engine, not an input method. The engine is installed by an application such as Weasel on Windows, Squirrel on macOS, or Fcitx5 and iBus on Linux, and that application is empty until you supply schemas and dictionaries. Assembling those files is the usual first obstacle: a schema, a dictionary with pronunciation annotations, punctuation maps, and per-client settings that have to agree with each other.

rime-ice is that assembled set. The README describes it as a Simplified Chinese Rime configuration that works out of the box, with a long-maintained dictionary, complete basic functionality, fully offline use, and detailed comments. It targets people who want Simplified Chinese input without building a dictionary, and it also targets people who want to learn Rime by reading a working configuration. The repository topics name the clients it is aimed at: rime-squirrel and rime-weasel, with Fcitx5 and iBus covered in the installation notes. The dictionary work is the part that is hard to reproduce: the README says the author could not find a dictionary good enough and maintains one, covering variant word forms, mis-typed entries, incorrect pronunciation annotations, missing common words and frequency adjustments.

Schemas, dictionaries and Lua: the moving parts

The repository layout separates four kinds of file. Schema files (rime_ice.schema.yaml, double_pinyin_flypy.schema.yaml, t9.schema.yaml and the other double_pinyin variants) define how keystrokes map to candidates. Dictionary files (rime_ice.dict.yaml, melt_eng.dict.yaml, radical_pinyin.dict.yaml) supply the words and their readings. The lua/ directory holds the extension behaviour: the calculator, UUID generation, date and lunar conversion, Unicode lookup and the rest. Per-client files (weasel.yaml, squirrel.yaml, default.yaml) carry settings and switches.

The dictionary is split into layers rather than one flat list. The README describes an 8105-character table based on the General Standard Chinese Character Table plus basic extensions, a 41448-character Unihan table that is off by default, a base dictionary with two-character words and frequency tuning, an ext dictionary with pronunciation annotations for polyphonic characters, and a tencent dictionary that is larger and left unannotated so Rime assigns readings automatically. English is separate: an en dictionary of roughly 20k common words and an en_ext dictionary that is mostly abbreviations and internet vocabulary. Emoji are hand-built.

Because the schemas and Lua scripts are plain text, the whole configuration is inspectable. That is the design argument for it: nothing is hidden behind a binary, and the comments in default.yaml are meant to be read.

Installing rime-ice with plum and running it once

The graphical route in the README is three steps: install a Rime application, download full.zip from the latest release, empty the Rime user directory completely, copy the archive contents in, and redeploy. The README repeats those three steps as the update and restore procedure, which is worth noting before you customize anything.

The command-line route uses plum and is what the README recommends for users with a technical background, because it supports patching and the grammar model. Clone plum first, then run the install recipe:

bash
cd ~
git clone https://github.com/rime/plum.git plum
cd ~/plum
bash rime-install iDvel/rime-ice

The README states that this installs into the default clients (Weasel, Squirrel, iBus-rime) and that updating the dictionary only requires repeating that last command. If your client is not one of those, the README says to set rime_dir to the matching user directory, giving rime_dir="$HOME/.config/fcitx5/rime" as the example for Fcitx5.

Double-pinyin users run one extra recipe, substituting their own schema name for double_pinyin_flypy:

bash
bash rime-install iDvel/rime-ice:others/recipes/config:schema=double_pinyin_flypy

After that, redeploy the input method. The README lists the schema names you can substitute: rime_ice, double_pinyin, double_pinyin_flypy, double_pinyin_mspy, double_pinyin_sogou, double_pinyin_abc, double_pinyin_jiajia and double_pinyin_ziguang. Once deployed, pressing F4 opens the schema and switch menu, which is how you reach the feature toggles. If the candidates do not appear, the first thing to check is whether you copied files into the user directory rather than the application directory.

The features that are not just a dictionary

Most of the extension behaviour is triggered by a prefix rather than a menu. Typing uU followed by the pinyin of a character's components gives you the character and its reading, which the README presents as the way to handle rare characters you cannot type. Typing vhelp in full pinyin, or Vhelp in double pinyin, lists the supported symbol inputs. Typing rq in full pinyin or date in double pinyin produces the current date and time in several formats, and nl or lunar produces the current lunar date, while N plus a date gives the lunar date and solar term for that day. Typing cC before an expression evaluates it. Typing uuid returns a generated UUID. Typing R before a number converts it to formal Chinese numerals or RMB capital form.

Other features change how candidates behave rather than adding prefixes. The bracket keys take the first or last character of the highlighted candidate, which is useful when a two-character word is correct but you only want one of its characters. After entering pinyin you can type a backtick plus the pinyin of a radical to filter candidates by component. The README also documents fuzzy pinyin, automatic correction with a prompt showing the correct sound and form, and automatic capitalization in English input, where a leading capital produces a capitalized word and several capitals produce an all-caps word. Traditional-to-Simplified conversion is listed as a basic feature, which fits a configuration whose dictionary is Simplified-first.

Where rime-ice gets in your way

The update model is the main friction. Editing files in place is the simplest way to change a setting, and the README says plainly that those edits are overwritten when you update. The recommended alternative is patching: leaving the repository files untouched and writing patches that override options, so that a full pull through plum or git pull does not destroy your configuration. That is a real skill to acquire, and it is the price of the convenient update path.

The grammar model is optional and not uniformly beneficial. The README explains that the octagram plugin is preinstalled in mainstream clients, but that using it requires installing a model file and a schema patch, and it states that accuracy improvements are not guaranteed in all cases because results depend on training data, the dictionary and user-created words. Installing it means another recipe, substituting your schema name:

bash
bash rime-install iDvel/rime-ice:others/recipes/grammar:schema=rime_ice

There is also a scope limit. The dictionary is Simplified Chinese with Traditional conversion available as a feature, so if your primary output is Traditional Chinese, this configuration is aimed at the wrong side of the conversion. And the README does not document a rollback procedure beyond repeating the three install steps, so if you customize heavily and want to revert, your own backups are the mechanism.

rime-ice against a hand-built Rime configuration

The alternative is not another input method. It is building your own Rime configuration from a base such as the default schemas that ship with the client, or from a minimal dictionary you assemble yourself. The difference is in who does the maintenance. A hand-built setup gives you exactly the words you added and nothing you did not, and no upstream change can surprise you, because there is no upstream. What it does not give you is a curated dictionary: variant forms, pronunciation corrections, frequency tuning and a broad English word list are ongoing work, and the README's description of the dictionary as long-maintained is the claim that this work is being done.

A middle path exists and the README supports it directly. Because the configuration is commented and text-based, you can install rime-ice and then patch the specific things you disagree with, keeping the dictionary and discarding the behaviour you do not want. The README frames the project this way as well, describing it as usable immediately, as a base that AI can help customize given the comments and community ecosystem, and as a starting point for learning Rime. The trade-off is that you now depend on upstream releases for dictionary improvements, and you have to keep your patches working across them.

Editorial conclusion

Adopt rime-ice if you want a Simplified Chinese Rime setup that works after a copy-and-redeploy, or if you are willing to learn Rime patching so updates do not overwrite your edits. Do not adopt it if you need Traditional Chinese as the primary output, or if you expect a package manager to manage upgrades for you. Before committing, check the release assets for the current full.zip, read default.yaml to confirm which switches you want, and decide whether you will patch files or edit them in place, because in-place edits are overwritten on the next update.

Frequently asked questions

How do I install rime-ice?

Install a Rime application first, then either download full.zip from the latest release, empty the Rime user directory, copy the files in and redeploy, or use plum with bash rime-install iDvel/rime-ice from a cloned plum directory. The README notes that updating the dictionary with plum only requires repeating that install command.

Does rime-ice support double pinyin?

Yes. It includes double_pinyin, double_pinyin_flypy, double_pinyin_mspy, double_pinyin_sogou, double_pinyin_abc, double_pinyin_jiajia and double_pinyin_ziguang, plus t9 and a lightweight English schema. Double-pinyin users run an additional plum recipe with their schema name.

What happens to my configuration changes when rime-ice updates?

The README states that editing files directly means your changes are overwritten on update. It recommends patching instead, overriding options without modifying the repository files, so a full pull through plum or git pull does not discard your customization.

Do I need the grammar model for rime-ice?

No, it is optional. The README says the octagram plugin is preinstalled in mainstream clients, but the model file and schema patch must be installed separately, and it cautions that accuracy gains are not guaranteed in every case because results depend on training data, the dictionary and user-created words.

Is rime-ice maintained?

The repository is not archived and the last push was on 2026-09-19, with releases dated 2026.06.30, 2026.06.03 and 2026.03.26. The README describes the dictionary as long-maintained and asks for dictionary issues through its issue tracker.

Official sources

  1. iDvel/rime-ice on GitHub
  2. License: GPL-3.0
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/idvel-rime-ice.svg)](https://hysenlabs.com/projects/idvel-rime-ice)