让 rime 输入法用上颜文字
过程详解
如何让 rime 输入法(小狼毫、鼠须管、中州韵)输入颜文字?和 custom_phrase.txt
的实现机制类似,我们定义一个词典 xxx.dict.yaml
文件,然后定义 name
version
sort
等属性,词典中的内容分为三栏
- 上屏文本
- 码
- 权重
rime 在三大基础桌面系统平台上的默认用户目录如下
- 【Windows】
%APPDATA%\Rime
- 【macOS】
~/Library/Rime
- 【Linux】
~/.config/ibus/rime
(0.9.1 以下版本是~/.ibus/rime
)
拿 windows 举例,在 %APPDATA%\Rime
路径下创建文件 kaomoji.dict.yaml
保存以下内容
# Rime dictionary - kaomoji
# encoding: utf-8
# ref: https://tool.lmeee.com/yanwenzi
# description: https://zh.wikipedia.org/zh-sg/%E9%A2%9C%E6%96%87%E5%AD%97
---
name: kaomoji
version: "2023-07-20"
sort: origin
...
(。・∀・)ノ kmj 1
( ̄ε(# ̄) kmj 1
<(  ̄^ ̄)> kmj 1
特别关注:
- 文件需要使用
utf-8
编码保存 上屏文本
码
权重
之间需要使用 tab,而不能使用空格
保存此文件之后,检查你当前使用的输入方案,比如我用的是小鹤双拼,找到文件 double_pinyin_flypy.schema.yaml
查看 translator/dictionary
项使用的是哪个词典文件,比如我的
于是全局搜索 name: rime_ice
(推荐使用 vscode 打开用户数据目录)找到 rime_ice.dict.yaml
文件,接着找到 import_tables
项,增加 kaomoji
作为颜文字词库。
然后重新部署 rime 就可以通过输入 kmj
选取颜文字,之所以使用 kmj 作为 key,是因为颜文字的英文单词就叫 kaomoji
,所以个人认为 kmj 作为键非常合适,在 26 键键盘上也非常好输入。
如果部署后使用 kmj
无法触发颜文字候选框,请检查是否有 custom 的文件,然后使用了 patch
语法,文件名一般是 double_pinyin_flypy.custom.yaml
,然后检查 patch/translator/dictionary
使用的是什么值,GitHub 上的有些 rime 仓库用的是 luna_pinyin.extended
,这时候就需要更改 luna_pinyin.extended.dict.yaml
文件,在词典中增加 kaomoji 项再重新部署即可。
我整理好的 kaomoji.dict.yaml
emoji 来源主要是这个网站提供的,包含了 400 多个颜文字条目
打开 F12 写一段 js 就能拿到所有颜文字文本
var pTags = document.querySelectorAll('#ywzList li p');
for (var i = 0; i < pTags.length; i++) {
console.log(pTags[i].textContent);
}
现提供我整理好的 yaml 文件供大家下载,敬请使用。
下载链接 https://emby.940304.xyz:23399/f/685586dd6bb240f9aadc/
(链接将于 2024-01-17 20:28:42 过期,如果到时候过期了请再联系我)