让 rime 输入法用上颜文字

309 天前
 BaseException

我是原文


1. 过程详解

如何让 rime 输入法(小狼毫、鼠须管、中州韵)输入颜文字?和 custom_phrase.txt 的实现机制类似,我们定义一个词典 xxx.dict.yaml 文件,然后定义 name version sort 等属性,词典中的内容分为三栏

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

特别关注:

  1. 文件需要使用 utf-8 编码保存
  2. 上屏文本 权重 之间需要使用 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 键键盘上也非常好输入。

2. 我整理好的 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 过期,如果到时候过期了请再联系我)

3. 参考

1303 次点击
所在节点    分享创造
2 条回复
ljsh093
309 天前
我以为 emoji 是这个😀
BaseException
309 天前
@ljsh093 #1 哈哈 一个是 emoji ,本文是 kaomoji

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/958702

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX