搜狗输入法词库php词库怎么用,中州韵输入法导入搜狗词库(示例代码)

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

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

20190911183158841203.png

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格式的词库:

20190911183159305088.png

将这两个文件放置在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 : chdy.uuid@gmail.com

# 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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值