市面上具有众多的输入法,无论搜狗还是QQ输入法基本都大同小异,但RIME是众多输入法中一个特殊的存在。
之所以特殊,原因在于,绝大部份输入法工具,长什么样、能实现什么功能,出厂即定型,唯有一些自定义选项,也是出厂即以划定的框框。然而RIME则不同,它是一款本地输入法(没有云端),可以高度自定义,实现众多功能,包括候选框的大小与皮肤,词库与短语等,通过修改本地配置文件,并最终把它打磨成一款完全符合你输入习惯的输入法。
比如,经过自定义,你可以通过拼音输入学校,出现你学校的名称;通过输入姓名,出现你自己的名字;输入qq,出现你自己的QQ号码等等。当然,RIME的功能远不止这些,还可以指定扩展词库,当你输入时哪些词语出现,哪些不出现,均由你自定义设置;RIME还可以定义一些小功能,比较使用,比如说获取当前时间日期……
获取时间:
获取日期:
但是,RIME输入法也有一定的门槛,也正是因为这个优点即是它的缺点——高度定制化带来的困难,劝退了一大批人。
因此,本文希通过一些有逻辑顺序、 相对简单的配置方法,帮助有定制化输入法需求的人快速入门,最终雕琢成为你想要的样子。
资源
RIME官网
RIME安装包下载
输入方案下载
安装以Windows平台为例
Rime 输入法,在不同的系统平台,有不同的名字:
平台 | 命名 | 译名 |
---|---|---|
Unix | Rime | 中州韵 |
Windows | Weasel | 小狼毫 |
Mac | Squirrel | 鼠须管 |
Android | Trime | 同文 |
平台不同,名称不同,安装方式、定制方式也有各个平台相相应的特性,但使用体验一致。
在官网下载Windows软件安装包,跟随安装向导完成安装。安装过程中有一点需要注意,在用户资料夹页面,默认位置在windows的个人文件夹~\AppData\Roaming\Rime,也可以选择我来指定位置,在下方空白框内填入你指定的文件夹的绝对路径,用户资料夹用来存放自定义配置文件。
rime输入法安装完成后,默认是这样的
显然,这样够美观,而且字体是繁体的,后面内容会详细讲解美化。
右击rime图标点击输入法设定,可以选择自己喜欢的默认输入法方案与默认皮肤。
选择自己常用的输入法方案
选择喜欢的皮肤
想要切换输入法方案用F4键,再选择相应的数字选择自己所使用的输入法方案。
到此,rime输入法基本可以使用了,当然,我们并不会满足于此,这款输入法的配置才是关键。下面将详细介绍这款输入法的定制。
RIME输入法的定制就是通过编辑配置文件实现需要的功能,配置文件是yaml格式的文件,该文件均采用UTF-8 编码的YAML文本,这是以一种可读性高的数据描述语言—— YAML 写成。想了解YAML文档格式请访问The Official YAML Web Site。
下面对Rime输入法的基本知识做简要介绍:
用户配置文件夹位置
用户配置文件夹存放Rime输入法所有配置文件。该文件夹的位置你可以通过右击桌面rime图标,点击用户文件夹打开。
刚安装完成时,文件夹内容如下:
注意:build文件夹内的内容不要修改,其他文件是配置文件。
重新部署
重新部署是我们必须要知道的功能,每当我们修改了配置文件,相应的功能并不会立刻实现,而是需要我们重新部署之后,才会实现功能,你可以把重新部署理解为刷新,重新部署的方法如下:
Rime 用户数据文件格式
我们在配置我们自己的数据时,不能直接修改该软件中默认生成的重要配置文件,因为软件升级时,会升级各种设定档、预设输入方案。如果我们将自己的一些设置加入到这些文档,在更新时这些文档会被覆写为更高版本,导致数据的丢失。
因此,为了保障数据不丢失,在修改配置文件时,创建一个文件名的主体部份与要定制的文件相同、次级扩展名为 .custom
的定制文档:
示例:
若要修改配置文件default.yaml
则新建defarlt.custom.yaml进行配置
当你在*.custom.yaml文件中作出了修改,点击重新部署后,该文件的设置将会和补丁一样修改*.yaml文件。
Rime用户数据文件分布及作用
〔全局设定〕 default.yaml
〔发行版设定〕 weasel.yaml
〔预设输入方案副本〕 <方案标识>.schema.yaml
※〔安装信息〕 installation.yaml
※〔用户状态信息〕 user.yaml
编译输入方案所产生的二进制文件:
〔Rime 棱镜〕 <方案标识>.prism.bin
〔Rime 固态词典〕 <词典名>.table.bin
〔Rime 反查词典〕 <词典名>.reverse.bin
记录用户写作习惯的文件:
※〔用户词典〕 <词典名>.userdb.kct
※〔用户词典快照〕 <词典名>.userdb.txt、<词典名>.userdb.kct.snapshot 见于同步文件夾
以及用户自己设定的:
※〔用户对全局设定的定制信息〕 default.custom.yaml
※〔用户对预设输入方案的定制信息〕 <方案标识>.custom.yaml
※〔用户自制输入方案〕及配套的词典源文件
注:以上标有「※ 号」和「粗体」的文件,包含用户资料,您在清理文件时要注意备份!
点击网址输入方案下载下载自己需要的输入法方案;
此处以双拼为例,下载双拼输入方案。
输入方案介绍
①全拼
②双拼:声母一个键,韵母一个键,可提升打字效率,需要记忆韵母键的位置,双拼输入的方案不止一种,本人使用小鹤双拼。
③地球拼音输入方案:可以方便的输入地球拼音,即带音调的拼音,示例如下:
RIme输入法地球拼音方案地址
④五笔:根据笔画输入字,需要记忆字根,网上教程众多。
⑤仓颉:与五笔有点类似,都是根据笔画,但是仓颉更多用于繁体字的输入。
示例:安装双拼
下载 rime-double-pinyin,将该文件夹下相应双拼的yaml结尾的文件拷贝到用户资料夹,并点击图标,打开输入法设定,开启双拼。
用户外观设定需修改weasel.yaml文件,前文已经说道不能直接修改weasel.yaml,需要新建weasel.custom.yaml。
注意:新建的yaml文件要使用UTF-8编码(下文新建同样如此,不再赘述),新建后打开,点击另存为即可显示编码方式
新建后,添加内容,本人配置文件内容如下,相应功能见注释:
patch:
app_options/cmd.exe:
ascii_mode: true
app_options/photoshop.exe:
ascii_mode: true
#方案一
"preset_color_schemes/xiluo":
name: xiluo
author: "Jankin "
back_color: 0xFFFFFF # 底色
border_color: 0xE2E2E2 # 边框颜色,与底色相同则为无边框的效果
text_color: 0x424242 # 内选区域文字颜色0x424242 0xFFFFFF
hilited_text_color: 0x000000 # 内选区域字母颜色
hilited_back_color: 0xFFFFFF # 内选区域字母底色
hilited_candidate_back_color: 0xf9cb8b #激活候选项的文字底色
# 0xe7a23f 0xFFD6AC 0xffcf9a 0xd77800 0xb76a00 0xdaa45a 0xCE7539
# 0xdaa45a 0xED9564 0xFFF0E4 0xffcc33 0xb76a00 0xe89f00 0xED9564
hilited_candidate_text_color: 0x000000 #激活候选项的文字颜色0xFFFFFF
candidate_text_color: 0x000000 # 其他候选项文字颜色
comment_text_color: 0xbdaead #拼音等提示文字颜色e4dfd7 999999 0xb7a091
label_color: 0xcac9c8 #序号颜色dad4cb 0xcac9c8
"style/color_scheme": xiluo #配色方案
"style/font_face": "汉仪正圆-55W" #字体
"style/font_point": 14 #字体大小
"style/label_font_face": "Fira Code"
"style/label_font_point": 28
"style/inline_preedit": true # 嵌入式候选窗单行显示
"style/horizontal": true #候选横排
"style/display_tray_icon" : true #显示托盘图标,建议false,否则出现两个图标
"style/layout/border": 0
"style/layout/border_width": 0
"style/layout/candidate_spacing": 28 # 候选字间隔
"style/layout/hilite_padding": 11 #候选字背景色色块高度 若想候选字背景色块无边界填充候选框,仅需其高度和候选字上下边距一致即可
"style/layout/hilite_spacing": 3 # 序号和候选字之间的间隔
"style/layout/margin_x": 10 #候选字左右边距
"style/layout/margin_y": 10 #候选字上下边距
"style/layout/round_corner": 25 #候选字背景色块圆角幅度
"style/layout/spacing": 10
# 方案二
"preset_color_schemes/Wii2":
author: PYatoo
back_color: 0xefefef
border_color: 0xefefef
candidate_text_color: 0x575759
comment_text_color: 0xcac9c8
hilited_back_color: 0xefefef
hilited_candidate_back_color: 0xED9564
hilited_candidate_text_color: 0xffffff
hilited_comment_text_color: 0xffffff
hilited_text_color: 0xED9564
label_color: 0xcac9c8
name: Wii2
text_color: 0x575759
"style/color_scheme": Wii2
"style/display_tray_icon": true
"style/font_face": "微软雅黑"
"style/font_point": 12
"style/horizontal": false
"style/inline_preedit": false
"style/layout/border": 0
"style/layout/border_width": 0
"style/layout/candidate_spacing": 12
"style/layout/hilite_padding": 8
"style/layout/hilite_spacing": 3
"style/layout/margin_x": 8
"style/layout/margin_y": 8
"style/layout/round_corner": 7
"style/layout/spacing": 10
配色解释如下:
配置最终效果如下:
同样的,在用户文件夹新建default.custom.yaml文件,填写下方如下,文件内容如下,相应功能见注释:
customization:
distribution_code_name: Weasel
distribution_version: 0.14.3
generator: "Rime::SwitcherSettings"
modified_time: "1月20日 14:52:14 2022"
patch:
#左Shift键输入字符直接切换为英文上屏,输入状态变为英文。
ascii_composer/good_old_caps_lock: true
ascii_composer/switch_key:
Caps_Lock: noop #noop是在告诉Caps_Lock键失效
Shift_L: commit_code
Shift_R: inline_ascii
Control_L: clear #输入一段字符后按此键,字符被清除,同时RIME输入状态切换为英文输入。
Control_R: commit_text #按此键,文字上屏,同时RIME切换为英文输入
"key_binder/bindings": #使用[]对候选字翻页
- {accept: bracketleft, send: Page_Up, when: paging}
- {accept: bracketright, send: Page_Down, when: has_menu}
"menu/page_size": 9 #候选字个数
"switcher/hotkeys": #将F4热键更改为ctrl+~
- "Control+grave"
schema_list:
- {schema: luna_pinyin_simp}
- {schema: easy_en}
- {schema: double_pinyin_flypy}
"translator/enable_user_dict": true
"translator/enable_encoder": true #是否开启自动造词〔仅table_translator有效〕
"translator/encode_commit_history": true #是否对已上屛词自动成词〔仅table_translator效〕
"translator/enable_sentence": true #是否开启自动造句
关于ctrl与shift快捷键可设置的选项,介绍如下:
inline_ascii :在输入法的临时西文编辑区内输入字母、数字、符号、空格等,回车上屏后自动复位到中文。 commit_text :已输入的候选文字上屏并切换至西文输入模式。 commit_code :已输入的编码字符上屏并切换至西文输入模式。 noop :屏蔽该切换键。
clear:#输入一段字符后按此键,字符被清除,同时RIME输入状态切换为英文输入。
按esc键可清除并保持中文
该文件是配置的最重要文件,大多数设置在该文件内,此处以小鹤双拼为例,进行配置,首先需要新建文件double_pinyin_flypy.custom.yaml,文件内容参考下方代码,均有注释
若需要详细了解每个语句的含义,可参考网址
# Rime schema
# encoding: utf-8
patch:
#此代码是设置扩充词库为 xiluo shuangpin.dict.yaml,后面词库还会介绍
'translator/dictionary': xiluo shuangpin
translator/initial_quality: 1 # 主翻译器的优先级设为1
translator/enable_completion: true # 开启逐鍵提示
translator/preedit_format: {} # 输入双拼码的时候不转化为全拼码
# 开启自动造词相关设置
translator/enable_sentence: true # 关闭句子输入
translator/enable_user_dict: true # 是否开启用户词典(记录词频,用户词)
translator/enable_encoder: true # 自动造词
translator/encode_commit_history: true # 是否对已上屏的词自动造词
translator:
dictionary: wubi86.extended #字典文件
user_dict: wb86 #在本地生成的用户词典名称
db_class: tabledb #用户词典格式,tabledb(文本) 或 userdb (二进制)
initial_quality: 0.5 #该翻译器出字优先级别
enable_completion: true #编码逐渐提示开关;编码提示
enable_charset_filter: true #字符集过滤,低重形码用不着
enable_sentence: false #是否整句连打,是否自动造句,否则为四码自动上屏
enable_encoder: true #是否自动造词
encode_commit_history: true #对已上屏的内容整合成词条,看需求
max_phrase_length: 10 #自动造词的最长字数
enable_user_dict: true #是否开启用户词典,以记录动态字频和用户词词频
disable_user_dict_for_patterns:
# - "^z.*$" #这是原始默认设置
- "^[a-y]{1,3}$" #三码及以下不使用自动调频、不自动造词
comment_format:
- xform/^~//
- xform/^([a-zA-Z]{4,})/✽/
#颜文字github,下文还有介绍
switches/@next:
name: emoji_suggestion
reset: 1
states: [ "️️\uFE0E", "️️\uFE0F" ]
'engine/filters/@before 0':
simplifier@emoji_suggestion
emoji_suggestion:
opencc_config: emoji.json
option_name: emoji_suggestion
tips: all
#实现英文输入,既中文混输,下文词库扩充还有介绍
# 加载 easy_en 依赖
"schema/dependencies/@next": easy_en
# 载入翻译英文的码表翻译器,取名为 english
"engine/translators/@next": table_translator@english
# english 翻译器的设定项
english:
dictionary: easy_en
spelling_hints: 9
enable_completion: true
enable_sentence: false
initial_quality: -1
#自定义短语文件,用户文件夹下新建custom_phrase.txt文件,下文还有介绍
custom_phrase:
dictionary: ""
user_dict: custom_phrase
db_class: stabledb
enable_completion: true
enable_sentence: true
initial_quality: 1
# 符号快速上屏,可以根据自己的需要设置,最全面的符号内容可以参考symbal.yaml文件
punctuator:
import_preset: symbols
half_shape:
"#": "#"
"`": "`"
"~": "~"
"@": "@"
"=": "="
"/": ["/", "÷"]
'\': ["、", '\']
"'": {pair: ["「", "」"]}
"[": ["【", "["]
"]": ["】", "]"]
"$": ["¥", "$", "€", "£", "¢", "¤"]
"<": ["《", "〈", "«", "<"]
">": ["》", "〉", "»", ">"]
recognizer:
patterns:
email: "^[A-Za-z][-_.0-9A-Za-z]*@.*$"
uppercase: "[A-Z][-_+.'0-9A-Za-z]*$"
url: "^(www[.]|https?:|ftp[.:]|mailto:|file:).*$|^[a-z]+[.].+$"
punct: "^/([a-z]+|[0-9]0?)$"
# 'recognizer/patterns/punct': "^/([a-z]+|[0-9])$"
#翻译器,可以实现很多小功能,如获取时间等,该项的配置可以见下文lua文件的配置
'engine/translators':
- punct_translator
- reverse_lookup_translator
#- table_translator
- table_translator@custom_phrase
- lua_translator@date_translator
- lua_translator@time_translator
- lua_translator@number_translator
- lua_translator@week_translator
- lua_translator@lunar_translator
- lua_translator@alltime_translator
- lua_translator@calculate_translator
- lua_translator@number1_translator
- lua_translator@number2_translator
- script_translator
#- table_translator@custom_phrase #表示调用custom_phrase段编码
#- table_translator
"engine/processors/@before 0": lua_processor@select_character_processor #以词定字
key_binder/+:
select_first_character: 'Left' #左键上屏第一个字
select_last_character: 'Right' #右键第二个字
关于上文key_binder对应的按键名称如下
BackSpace 退格 Tab 水平定位符 Linefeed 换行 Clear 清除 Return 回車 Pause 暫停 Sys_Req 印屏 Escape 退出 Delete 刪除 Home 原位 Left 左箭頭 Up 上箭頭 Right 右箭頭 Down 下箭頭 Prior、Page_Up 上翻 Next、Page_Down 下翻 End 末位 Begin 始位 Shift_L 左Shift Shift_R 右Shift Control_L 左Ctrl Control_R 右Ctrl Meta_L 左Meta Meta_R 右Meta Alt_L 左Alt Alt_R 右Alt Super_L 左Super Super_R 右Super Hyper_L 左Hyper Hyper_R 右Hyper Caps_Lock 大寫鎖 Shift_Lock 上檔鎖 Scroll_Lock 滾動鎖 Num_Lock 小鍵板鎖 Select 選定 Print 列印 Execute 執行 Insert 插入 Undo 還原 Redo 重做 Menu 菜單 Find 蒐尋 Cancel 取消 Help 幫助 Break 中斷 space exclam ! quotedbl " numbersign # dollar $ percent % ampersand & apostrophe ' parenleft ( parenright ) asterisk * plus + comma , minus - period . slash / colon : semicolon ; less < equal = greater > question ? at @ bracketleft [ backslash bracketright ] asciicircum ^ underscore _ grave ` braceleft { bar | braceright } asciitilde ~ KP_Space 小鍵板空格 KP_Tab 小鍵板水平定位符 KP_Enter 小鍵板回車 KP_Delete 小鍵板刪除 KP_Home 小鍵板原位 KP_Left 小鍵板左箭頭 KP_Up 小鍵板上箭頭 KP_Right 小鍵板右箭頭 KP_Down 小鍵板下箭頭 KP_Prior、KP_Page_Up 小鍵板上翻 KP_Next、KP_Page_Down 小鍵板下翻 KP_End 小鍵板末位 KP_Begin 小鍵板始位 KP_Insert 小鍵板插入 KP_Equal 小鍵板等於 KP_Multiply 小鍵板乘號 KP_Add 小鍵板加號 KP_Subtract 小鍵板減號 KP_Divide 小鍵板除號 KP_Decimal 小鍵板小數點 KP_0 小鍵板0 KP_1 小鍵板1 KP_2 小鍵板2 KP_3 小鍵板3 KP_4 小鍵板4 KP_5 小鍵板5 KP_6 小鍵板6 KP_7 小鍵板7 KP_8 小鍵板8 KP_9 小鍵板9
词库设置
Rime可以扩充很多词库,你可以扩充你自己需要的词库,词库在使用时通过递归调用的方法,输入法调用总的词库,总的词库再调用各个词库,各个词库之间也不互相影响
关于词库的详细配置请访问文章:RIME输入法词库扩充(搜狗词库,QQ拼音词库,清华词库,拆字词库U模式等)_惜洛-Jankin的博客-CSDN博客
将某个词组从用户词典中删除
先把选字光标(用上、下方向键)移到要刪除的用戶词组上,再按下 Shift+Delete 或 Control+Delete(苹果键盘用 Shift+Fn+Delete)。
自定义短语
①在用户文件夹下新建Custom_phrase.txt
②将下方代码复制到txt文件里。如果没有把握,请注意不要删除井号后面的文字。
# Rime table
# coding: utf-8
#@/db_name custom_phrase.txt
#@/db_type tabledb
# 用於【朙月拼音】系列輸入方案
# 【小狼毫】0.9.21 以上
# 請將該文件以UTF-8編碼保存爲
# Rime用戶文件夾/custom_phrase.txt
# 碼表各字段以製表符(Tab)分隔
# 順序爲:文字、編碼、權重(決定重碼的次序、可選)
# 雖然文本碼表編輯較爲方便,但不適合導入大量條目
# no comment
#下方添加自己的常用短语
#格式为:输出短语 按键字母 短语字频
#注意:这些字符中间用Tab键隔开
#eg
宇宙最强大学 xtxn 10 #双拼
宇宙最强大学 xuexiao 10 #全拼
然后需要开启该功能,自定义短语的开启已在double_pinyin_flypy.custom.yaml文件配置中讲述。
安装emoji
下载rime-emoji,将该文件夹下的yaml文件与opencc文件夹拷贝到用户资料夹。
并将emoji_suggestion.yaml
內的內容加入至想添加Emoji的方案custom文档中(*假设你使用小鹤双拼,则将emoji_suggestion.yaml内的内容加入double_pinyin_flypy.custom.yaml中,上文代码已有)
#颜文字github
switches/@next:
name: emoji_suggestion
reset: 1
states: [ "️️\uFE0E", "️️\uFE0F" ]
'engine/filters/@before 0':
simplifier@emoji_suggestion
emoji_suggestion:
opencc_config: emoji.json
option_name: emoji_suggestion
tips: all
注意去掉源文件的patch:,一个输入方案custom档中只允许有一个patch:;
拆字模式
拆字模式也是非常实用的一个功能,当你遇到了非常难写的字不认识,你可以通过拼这个字来输入。
下载拆字词库,加入到词库中即可,详细配置已在词库配置文章中有所讲述RIME输入法词库扩充(搜狗词库,QQ拼音词库,清华词库,拆字词库U模式等)_惜洛-Jankin的博客-CSDN博客
输入u然后打入拆分的字即可,如鑫由三个金组成,我们可以输入u,在输入三个金的拼音即可:全拼ujinjinjin;小鹤双拼ujbjbjb。
此处以小鹤双拼拆字词库为例:
Rime输入法通过配置词库,可以实现中英文翻译功能,输入中文意思输出单词,输入英文也可以出现中文翻译,看效果:
该词库获取在公众号获取(惜洛IT)
此配置文件用lua语言编写的文件实现,通常用于自动输出多格式日期、数字大写自动转换等等功能的实现。
详细配置请访问文章RIME输入法lua配置获取当前时间(一)_惜洛-Jankin的博客-CSDN博客
打开用户文件夹下的文件installation.yaml,在最后面添加一行代码,代码如下:
sync_dir: 'E:\Rime Tongbu' 引号内为你的同步文件夹
再将以上同步的文件夹上传至坚果云即可。
以上配置文件获取可关注公众号获取。
以上就是今天的内容,这篇文章能帮到你是我写作的意义所在,有任何问题可以评论或私信。当然,您的点赞与关注也是对我最大的支持与肯定,也是我继续写作的动力源泉。
了解更多教程可关注公众号惜洛IT