一.在fcitx中安装rime输入法
如果是deepin,最好先卸载自带的搜狗输入法.
sudo apt-get remove fcitx-sougou
# 删除个人配置中所有搜狗的配置.
rm -rf ~/.config/Soug*
1. 安装中州韵输入法.
直接命令行
sudo apt-get install fcitx-rime
deepin也可以在应用商店直接安装
安装了之后即可以使用.
这个时候如果因为卸载搜狗输入法的缘故, fcitx没有显示UI的话, 需要重新安装fcitx的UI界面
sudo apt-get install fcitx-ui*
安装后重启fcitx 框架
fcitx -rd
进行加载, 过一段时间, 会提示中州韵输入法已经就绪.
2. 更改显示效果以及默认皮肤.
可以在默认的情况下点击右下角任务栏键盘标志进行设置.
如果无法点击的时候, 则直接通过fcitx窗口进行设置.
fcitx >> 附加组建 >> 经典界面 >> 配置
根据需要, 调节状态栏是否隐藏, 以及显示的皮肤.
个人觉得fcitx里面默认的黑色皮肤挺好的.
二. 自定义rime输入法的相关内容.
在自定义rime输入法的时候, 需要说明几个概念. 有助于帮助理解这个设置过程.
关于配置文件所在位置:
~/.config/fcitx/rime
这个文件夹内保存着所有rime输入法的配置, 我们不需要去操作别的文件夹. 所有的文件夹配置全在里面了.
如果使用的ibus框架. 则是 ~/.config/ibus/rime
关于配置文件内的文件格式:
.yaml文件是配置文件,是我们主要修改的一块.例如(default.yaml 是输入法配置文件夹, luna_pinyin.schema.yaml,是luna(明月)输入方案的配置文件)
.custom.yaml是用户用来自定义配置的内容.
.bin文件是rime输入法自动生成的, 不需要去动.
.table.bin 是生成的词库文件(在重新部属的时候会自动生成需要导入词库的.table.bin文件.)
配置原理:
在输入法重新部属的时候, 会所需要的设置文件, 词库文件等.
在生成default.yaml的时候, 会去同名的default.custom.yaml中读取设置, 如果与默认设置冲突, 则以用户设置为准, 然后再生成改动过的default.yaml文件.
这和Python中的类的继承顺序是一样的. 会先调用子类,冲突项目使用子类, 如未设定 则读取父类相关设定.
关于重新布署的方式:
可以直接使用终端
fcitx -rb
也可以显示出来fcitx的状态栏. 点击"重"按钮:
调出状态栏选项 与上面所说更改 默认皮肤 操作步骤一致
如何配置属于自己的rime?
配置分为三个方面.
输入法方面: 根据default.yaml 创建default.custom.yaml
输入方案方面: 根据luna_pinyin.schema.yaml 创建luna_pinyin.custom.yaml
词库方面: 手动创建 xxx.dict.yaml 文件.
# 这些个文件是最重要的, 保存这你对输入法的自己的定制. 只要保存好自己的设置文件和词库文件, 配置里面的文件都删掉也都无所谓, 重新布署之后又会生成默认文件.
只要在rime重新布署的时候发现用户的配置文件, 就会改写默认配置.
关于配置文件的格式语法:
配置文件的语法遵照yaml语言.
default.custom.yaml和luna_pinyin.custom.yaml这两个文件的书写格式和对应文件default.yaml, luna_pinyin.yaml几乎是一样的.
不过需要在文件头增加patch: 然后之中写入的配置,较原文件增加一个单位的缩进,对应于patch:.(yaml中缩进为两个空格). # 表示注释, 可以出现行中任意位置, 之后的内容不会被解释器解释.
配置如下:
输入法配置:
# default.custom.yaml # 用户 输入法配置 patch: schema_list: # 输入方案列表 - schema: luna_pinyin # 移除其它输入方案, 只保留拼音输入方案 menu: page_size: 5 # 候选词为5个 "ascii_composer/switch_key/Shift_L": commit_code # 左shift上屏,且切换英文 "ascii_composer/switch_key/Shift_R": commit_code # 右shift上屏,且切换英文
输入方案配置:
# luna_pinyin.custom.yaml # 明月输入方案 配置 五笔方案 其它拼音方案 格式与该格式类似 patch: translator/dictionary: WordAll.extended # 选择词库: WordAll.extended 该命名方式随意,与词库文件头名称需一致. switches: - name: ascii_mode reset: 0 # 设置编码 states: ["中文", "西文"] - name: full_shape reset: 0 # 设置半角 states: ["半角", "全角"] - name: simplification reset: 1 # 设置简体 states: ["漢字", "汉字"] - name: ascii_punct reset: 1 # 设置标点 states: ["。,", ".,"]
词库配置:
词库的语法有些区别,要增加文件头.命名该词库的名称,也需与输入方案里词库名称相同.
词组之间格式应该严格遵循:
词组(制表符)拼写(制表符)权重(数字)
长拼写中间用空格隔开
# WorlAll.extended.dict.yaml 需要注意的是, 词库的后缀名是dict.yaml, 前面内容无所谓, 但后缀更改后会无法识别词库. # 设置文件头 --- name: WordAll.extended # 设置该词库名称, 与输入方案内对应 version: "1.0" sort: by_weight # 排序方式按照权重 use_preset_vocabulary: true import_tables: # 导入的其它的词库表单. 词库顺序从上到下导入. 词库间权重不互通. 最后导入的一定在前面. - luna_pinyin # 导入该输入方案的默认词库 - WordMy.extended # 导入自定义词库 # 此处可以继续按照顺序导入多个自定义词库. --- # 之下设置词库内容, 需要注意格式. # 词组(制表符)拼写(制表符)权重(数字) # 长拼写之间用空格隔开. # 权重可以理解为已输入次数 # 制表符. 字段之间如果不用制表符则无效 # 例如: 啊 a 196 阿黛尔的生活 a dai er de sheng huo 1 啊对 a dui 1 阿尔巴尼亚 a er ba ni ya 4 阿卡姆之城 a ka mu zhi cheng 1 阿里巴巴 a li ba ba 2 阿里云 a li yun 1 啊什么 a shen me 6 阿斯蒂芬 a si di fen 3 阿塔利战斗天使 a ta li zhan dou tian shi 1
# import_tables 语法 子词库最好不要写了, 避免重复或循环导入
# 有些编辑器会自动转换 制表符 为空格, 在粘贴和配置词库文件后, 一定要检查一下 制表符是否依旧是制表符.
在选择使用了自己的词库的时候, 便只会以用户词库为标准. 如果只是这样的话, 使用过程当中会发现有些词语打不出来, 因为自带词库中没有该词汇.
所以我们需要在自己的词库文件头中导入 该输入方案中默认的基本词库.
如果需要导入的个人词库较多的话, 可以创建一个总词库, 然后依次导入.
导入顺序上, 可以理解为后来者居上.
应当按照, 基本词库在上面, 个人词库越重要放越后面.
在重新布署过程中的调用顺序应该是
===>> 调用输入法配置(读取用户的输入法配置覆盖相关配置)
===>> 调用输入方案配置(读取用户输入方案配置)
===>> 根据输入方案调用词库(A)
===>> 读词库文件头的时候发现导入了其它词库B 和 词库C
===>> 导入词库B
===>> 导入词库C
===>>导入词库A
词库在布署过程当中会生成.table.bin文件. 以供输入法能快捷调用.
当设置好 输入法设置 , 输入方案设置, 以及 个人词库之后.
这三个自己的配置文件先放在一旁,(最好备份)
先将 ~/.config/fcitx/rime里面所有东西都删掉之后再放我们的配置进去.
然后再执行输入法的重新布署.
就可以拥有属于自己的rime了.
# 附录:
上面的几个配置文件的下载地址. 虽然已经贴出来了, 不过还是提供下原文件, 可以用来作为模板.
词库只有一小部分,毕竟词库还是自己之前养出来的最好用.
https://pan.baidu.com/s/1-zjZmtg5pKlUCqbZBio3Bg alpz
# 关于其它:
rime设置shift上屏无效? 试试更改fcitx的切换快捷键.
fcitx默认的切换也是shift, 冲突的话 输入框内的内容自然无法上屏.