中州韵输入法导入搜狗词库

rime是一个非常优秀的输入法,linux平台下的反应速度远超搜狗,也没有隐私风险。2012年开始接触它,到后来抛弃了它,因为rime自带的词库真的太弱了,也懒得折腾。最近发现一个词库转换软件叫imewlconverter,于是发现rime导入其他输入法(比如搜狗)的词库其实还挺方便的。

要导入词库需要两个文件:

1. luna_pinyin_simp.custom.yaml 是配置文件

rime在部署的时候会自动加载。因为我用的是明月简体schema,所以是这个名字。如果你用的是明月schema,那就是luna_pinyin.custom.yaml

# luna_pinyin_simp.custom.yaml
patch:
# 指定自定义词库位置
  "translator/dictionary": luna_pinyin.sogou

2. luna_pinyin.sogou.dict.yaml 是词库文件

文件名是上面配置文件中设置的名字加上.dict.yaml后缀。内容是一个rime定义的文件头加上转换好的txt格式的词库:

将这两个文件放置在rime的配置文件夹之后,点击rime输入法图标的“重新部署”按钮就可以了。输入“yxlm”会自动出现原来没有的候选词“英雄联盟”。

3. 怎么生成这个luna_pinyin.sogou.dict.yaml

  • 首先安装一下imewlconverter,怎么安装就不说了。
  • 然后下载搜狗的scel细胞词库到某个文件夹
  • 然后在这个文件夹写一个批量转换的python脚本(见最后)。
  • 然后运行这个脚本,就会用imewlconverter把所有的scel细胞词库文件转换成一个txt格式的词库文件,并以自定义的文件名保存,然后添加rime定义的yaml头。
  • 拷贝文件到rime配置文件夹。
#!/usr/bin/env python
# coding=utf-8

# ============================================================
# filename : convert.py
#  author  : [email protected]
# modified : 2019-09-11 15:39
# descrip. :
# ============================================================

from glob import glob
import os
import shutil

if not os.path.exists('./output/'):
    os.mkdir('output')

original_files = glob("*.scel")
print("---------------")
for of in original_files:
    if ' ' in of:
        new_fn = of.replace(' ', '_')
        print('rename "%s" to "%s"' % (of, new_fn))
        shutil.move(of, new_fn)
        of = new_fn
    print('>> ', of)
print("---------------")

original_files = glob("*.scel")
# print(original_files)

yaml_file = 'luna_pinyin.sogou.dict.yaml'

command='''imewlconverter -i:scel %s -o:rime "%s"''' % (str(original_files).strip('[]').replace(',', ''), yaml_file)
print(command)
os.system(command)

data = '''---
name: luna_pinyin.sogou
version: "1.0"
sort: by_weight
use_preset_vocabulary: true
# 此处为扩充词库(基本)默认链接载入的词库
import_tables:
    - luna_pinyin
    - luna_pinyin.sogou
...

# 自定义词语

'''
with open(yaml_file, "r+") as f:
     old = f.read()
     f.seek(0)
     f.write(data)
     f.write(old)

print("Now don't forget to copy the file to rime config folder (like ~/.config/fcitx/rime)")

https://www.jianshu.com/p/300bbe1602d4

原文地址:https://www.cnblogs.com/dylanchu/p/11507492.html

时间: 2024-11-05 17:25:58

中州韵输入法导入搜狗词库的相关文章

将搜狗词库.scel格式转化为.txt格式

由于项目中要用到词库,而下载的搜狗词库是.scel格式,所以就用python脚本将搜狗词库.scel格式文件转化为.txt格式文件. 1 #!/bin/python 2 # -*- coding: utf-8 -*- 3 4 5 import struct 6 import sys 7 import binascii 8 import pdb 9 10 try: 11 reload(sys) 12 sys.setdefaultencoding('utf-8') 13 except: 14 pas

ibus pinyin 搜狗词库

目前主流的 linux 发行版例如 fedora 和 ubuntu 默认的中文输入法都是 ibus-pinyin,但是非尝苦恼 ibus-pinyin 的词库太少,输入中文词组得一个一个的选汉字,很羡慕 windows 下用搜狗拼音的同学,于是网上有好事者提出了解决办法. 用法:先到搜狗拼音官方网站下载你认为比较常用的词库文件,注意这些词库文件通常是以 .scel 为后缀名,然后把下面的代码复制后保存为 python 脚本,保存到词库文件所在的文件夹中,运行脚本,得到 sougou.txt: 打

解析搜狗词库(python)

#!/usr/bin/python # -*- coding: utf-8 -*- import struct import sys import binascii import pdb #搜狗的scel词库就是保存的文本的unicode编码,每两个字节一个字符(中文汉字或者英文字母) #找出其每部分的偏移位置即可 #主要两部分 #1.全局拼音表,貌似是所有的拼音组合,字典序 # 格式为(index,len,pinyin)的列表 # index: 两个字节的整数 代表这个拼音的索引 # len:

搜狗词库转txt

# 运行环境要求 python2 1 #!/usr/bin/python 2 # -*- coding: utf-8 -*- 3 4 import struct 5 import sys 6 import binascii 7 import pdb 8 #搜狗的scel词库就是保存的文本的unicode编码,每两个字节一个字符(中文汉字或者英文字母) 9 #找出其每部分的偏移位置即可 10 #主要两部分 11 #1.全局拼音表,貌似是所有的拼音组合,字典序 12 # 格式为(index,len,

和我一起开发Android应用(四)——拓词算法分析和“悦词”词库解析

今天我们要部分实现背单词功能,在开始正题之前,还是附上背单词软件的下载链接:http://apk.91.com/Soft/Android/com.carlos.yueci-4.html 最近实验室有了任务,时间会紧些,因此这个项目要加快进度了. 首先把我在系列二中的功能分析拷贝过来: 功能2.背单词. 实现方法:这里要用到第二个数据库,背单词的词库.我们需要一个存放单词的TXT文件,通过解析这个TXT文件,将要背的单词解析并存进数据库中,然后根据一定的规        律弹出单词. 所用到的技术

Rime中州韵导入极点五笔词库(附:自制词库)

前言 之前写了一篇文章,[输入法]Rime-中州韵 基本设置 附:官方定制指南,其中导入词库这一块引用其它博主的文章,最近发现那个工具链接已经过期了,参考了百度贴吧的说明,不要直接使用工具去导入会更好,这里使用原作者的做法为大家演示下 前提 安装好rime,无论是ibus-rime或fcitx-rime均可 安装好librime-data-wubi 内容 设置词库的方式是引入新文件的方式. 进入rime设置目录,cd ~/.config/fcitx/rime或cd ~/.config/ibus/

深蓝词库转换2.4版发布,支持最新的搜狗用户词库备份bin格式

很高兴的告诉大家,感谢GitHub上的h4x3rotab提供python版的搜狗用户词库备份bin格式的解析算法,感谢tmxkn1提供了C#版的实现,深蓝词库转换终于迎来了一个重大更新,能够支持搜狗用户词库的bin格式备份的导出了.再也不用受到搜狗输入法的钳制,可以自由切换到其他输入法了.搜狗bin词库只解析到了用户词条和词频,没有拼音,所以如果要导出其他拼音输入法,中间转换工具会根据词条的内容重新生成拼音. 另外在2.4版中,增加了用户词频强制设置的功能,比如将搜狗用户词库bin格式备份转换为

深蓝词库转换2.7版发布——支持Mac原生输入法词库,QQ拼音新词库qcel格式

2020年过年期间,由于冠状病毒肺炎的流行,在家无事,就把搁置了很久的词库进行了改进.发布了2.7版:https://github.com/studyzy/imewlconverter/releases/tag/v2.7.0 转眼深蓝词库转换从诞生到现在都已经10个年头了,这是我做的最久的软件了.本次2.7版的更新主要包含了以下新特性: 一.MacOS原生简体拼音输入法自定义短语词库的支持 在MacOS的“系统偏好设置”中选择“键盘”,“文本”,即可看到,Mac简体拼音输入法的自定义短语词库.

郑码词库制作for百度输入法

一.百度手机输入法 ①原材料:郑码(安静词库超级郑码群修正版) ②以上词库为极点码表格式,需要将其转化为百度手机输入法支持的格式. ③用 notepad++ 编辑码表,去掉表头及~,^,!符号.如图:                 ④用 多多码表编辑器V3.2 将其换化为 QQ码表 格式,选择"菜单→工具→常见码表格式转换",如图:                   ⑤用多多码表的 "高级码表格式转换"将QQ码表转化为百度格式(期间电脑会卡5分钟,要有耐心).