rime中州韵输入法安装及配置

一.在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, 冲突的话 输入框内的内容自然无法上屏.

原文地址:https://www.cnblogs.com/jrri/p/12427956.html