Rime Adds Dota 2 Dictionary

I mainly play Dota 2 and CS2, after all, has consistently topped the Steam charts, boasting the largest player base with peak concurrent players in the millions. (See https://store.steampowered.com/charts/mostplayed for details). Playing against others is incredibly fun.

Whenever I play, I always encounter some oddballs, like those who farm the jungle from start to finish, those who don't ward, or those who intentionally feed. In these situations, providing friendly text hints is essential if you want to win.

Even if it comes to a verbal duel, faster typing speed won't put you at a disadvantage 😅.

Therefore, an input method needs to include a Dota 2 dictionary to save time. For example, typing "Necromancer" will be faster.

1. Installing an Input Method

Fcitx5 is more convenient to customize than Ibus, and noto-fonts-emoji adds emoji support.

1sudo pacman -S fctix5-rime
2sudo pacman -S noto-fonts-emoji

I chose Wusong Pinyin. It seems many similar pinyin versions have recently appeared, but I'm too lazy to bother with them. It currently meets my needs.

1sudo pacman -S noto-fonts-emoji

2. Custom Settings for Wusong Pinyin

The operation process is as follows:

 1➜ ~ cd .local/share/fcitx5
 2➜ fcitx5 ls
 3rime/ themes/
 4➜ fcitx5 pwd
 5/home/mephisto/.local/share/fcitx5
 6➜ fcitx5 cd rime
 7➜ rime pwd
 8/home/mephisto/.local/share/fcitx5/rime
 9➜ rime ls
10build/ cn_dicts/ default.custom.yaml installation.yaml luna_pinyin.userdb/ rime_ice.custom.yaml rime_ice.userdb/ sync/ user.yaml
11➜ rime cat default.custom.yaml
12patch:
13
14# Use only the default configuration of "雾凇拼音", this line is sufficient
15
16\_\_include: rime_ice_suggestion:/
17
18➜ rime cat rime_ice.custom.yaml
19
20# rime_ice.custom.yaml
21
22patch:
23
24# Explicitly define the menu, overriding the inherited value of default.yaml
25
26menu:
27
28page_size: 10
29
30# Add your dictionary
31
32import_tables/@next: cn_dicts/dota2
33
34➜ rime head -n 20 cn_dicts/dota2.dict.yaml
35
36# Rime dictionary
37
38# encoding: utf-8
39
40#
41
42# Sogou Pinyin Dict - Sogou Cell Dictionary
43
44#
45
46# https://pinyin.sogou.com/dict/
47
48#
49
50# Includes:
51
52#
53
54# \* dota2
55
56#
57
58---
59
60name: dota2
61version: "1.0"
62sort: by_weight
63use_preset_vocabulary: true
64import_tables:
65
66- rime_ice # ← If you are using the pinyin for "霧凇" (wūsōng), write rime_ice; if you are using the pinyin for "朙月" (míngyuè), write luna_pinyin

It must be noted here that fcitx5-rime reads the configuration under /home/mephisto/.local/share/fcitx5/rime. Putting it in ~/.config/fcitx5/rime will not work.

This is somewhat non-standard, and I spent a lot of time testing it before finally giving up. Putting the theme in /home/mephisto/.local/share/fcitx5/themes is understandable.

The result is that it's difficult to put it into the GitHub dotfiles repository.

3. Dictionary Operations

Searching for dota2 dictionary will lead the search engine to the Sogou Pinyin dictionary. After downloading, it will be a .scel file.

1➜ scel git:(master) file dota2.scel
2dota2.scel: data

Use this tool https://github.com/lewangdev/scel2txt to convert the dictionary. Of course, there are other dictionary conversion tools, but this one is sufficient.

Place the *.scel files downloaded from the Sogou official dictionary website into the scel folder, then run:

1python3 scel2txt.py

The target file will be generated in the out directory. Copy the file to /home/mephisto/.local/share/fcitx5/rime/cn_dicts

Refer to the example below. The header of the dictionary file needs to be modified because we are now using rime_ice:

 1➜  rime pwd
 2/home/mephisto/.local/share/fcitx5/rime
 3➜  rime ls
 4build/  cn_dicts/  default.custom.yaml  installation.yaml  luna_pinyin.userdb/  rime_ice.custom.yaml  rime_ice.userdb/  sync/  user.yaml
 5➜  rime head -n 25 cn_dicts/dota2.dict.yaml
 6# Rime dictionary
 7# encoding: utf-8
 8#
 9# Sogou Pinyin Dict - 搜狗细胞词库
10#
11#   https://pinyin.sogou.com/dict/
12#
13# 包括:
14#
15# * dota2
16#
17
18---
19name: dota2
20version: "1.0"
21sort: by_weight
22use_preset_vocabulary: true
23import_tables:
24  - rime_ice        # ← 如果你用的是霧凇拼音,就寫 rime_ice;若用朙月拼音則寫 luna_pinyin
25...
26
27艾欧	ai ou
28矮人直升机	ai ren zhi sheng ji
29矮子	ai zi
30暗夜魔王	an ye mo wang

4. Restart Verification

Command line restart: fcitx5 -rd, to make the configuration take effect.

The proof is in the picture: typing "hycms" will return Phantom Lancer. Furthermore, the candidate word marked 0 in the image below shows that emoji is supported.

rime-dota2-dict-emoji

Importing other dictionaries follows the same principle: first download the dictionary, convert it to the format required by Rime, and finally modify the configuration and restart.

Lastmod: Saturday, December 13, 2025

See Also:

Translations: