Elementary OS 使用fcitx安装搜狗词库、搜狗输入法(Linux通用)
刚开始接触Linux的小伙伴可能比较懵逼,我要使用ibus输入法还是fcitx(小企鹅)输入法,其实这两种都不能说是输入法,Linux中输入法的使用是依赖于输入法框架的,其中搜狗输入法和百度输入法都是依赖于fcitx框架的,当然两种框架用什么依据个人爱好,对于小白选手还是推荐fcitx吧,因为搜狗用着真香啊.自带的输入法皮肤样式真的是一言难尽,词库也不符合中文的输入习惯,既然适应不了,我们就改造他。
接下来主要描述如何整合搜狗的皮肤和词库。
前提是你使用的Linux发行版已经安装了fcitx输入法框架。
安装fcitx,先来个CV三连。
添加软件源
sudo add-apt-repository ppa:fcitx-team/nightly
更新依赖库
sudo apt-get update
安装fcitx相关组件,自动安装相关依赖,如果依赖不足根据提示安装就行了
sudo apt-get install fcitx fcitx-sunpinyin fcitx-module-cloudpinyin fcitx-googlepinyin
如果有强迫症看ibus不舒服,可以卸载ibus,清楚依赖和相关配置项
sudo apt remove ibus --purge
使用搜狗输入法的皮肤
素材来源
- 搜狗皮肤:https://pinyin.sogou.com/skins/
- 皮肤制作工具:git clone https://github.com/VOID001/ssf2fcitx.git
注意这里有坑,不过还是要继续看下去的,说不定就有解决方案呢。
皮肤工具下载完成后先不要操作,去github看一眼:https://github.com/VOID001/ssf2fcitx#dependencies,需要依赖于以下工具
我们下载的是源码,需要自己去编译安装。
以上依赖安装完成后开始进行下面操作吧
安装cmak
sudo apt install cmake
进入克隆目录
cd ssf2fcitx
开始编译
cmake ./
过程可能会有关 pkg 报错,作为合格的Linux用户当然是自己解决啦,执行 sudo apt install pkg-config 即可。
然后 make ,可能报错 unitypes.h not found ,直接 vim ssfextract.cpp ,删掉第 9 行的库引用即可。
最后安装
sudo make install
顺利的话是可以安装成功的!
接下来开始制作皮肤,讲下载的搜狗皮肤.ssf
文件转换成可被识别的文件。
ssf2fcitx -i filename.ssf -o dirname
然后移动
mv dirname ~/.config/fcitx/skin
重启 Fcitx ,大功告成!
如果安装了fcitx-qimpanel
皮肤管理工具,皮肤包的路径应该放置在/usr/share/fcitx-qimpanel/skin/
目录会被所有用户共享,这里的路径要以自己实际路径为准,不然皮肤不能被识别!
注意,上面是一切顺利,如果编译安装失败可以看下文
不过如果前段所说的QT5环境没有是要失败的,我当时卡在这里好久没解决,QT是啥我不懂,我要怎么办,我想这东西很定有人有编译打包好的工具啊,直接去百度,果不其然真的有,哈哈哈!
直接下载安装就完事了,是deb包这个应该就不用说怎么安装了吧。
下载地址:链接: https://pan.baidu.com/s/1Wg2a_ZU_PvPqxDfE-gTQNQ 密码: 7hk7
这里再次感谢大佬,安装后会出现图标但是可能点击没法使用,但是不影响我们使用命令啊。
默认安装后的目录在/opt/ssf2fcitx
文件夹下,进去查看
vincente@vincente:/etc/apt$ cd /opt/ssf2fcitx/
vincente@vincente:/opt/ssf2fcitx$ ls
libasyncns.so.0 libgcc_s.so.1 liblzma.so.5 libQt5MultimediaWidgets.so.5 libwrap.so.0
libblkid.so.1 libgcrypt.so.20 libmount.so.1 libQt5Network.so.5 libX11.so.6
libbsd.so.0 libgdk_pixbuf-2.0.so.0 libm.so.6 libQt5OpenGL.so.5 libX11-xcb.so.1
libcairo.so.2 libgio-2.0.so.0 libmtdev.so.1 libQt5Widgets.so.5 libXau.so.6
libcap.so.2 libGLdispatch.so.0 libnsl.so.1 libQt5X11Extras.so.5 libxcb-render.so.0
libcroco-0.6.so.3 libglib-2.0.so.0 libogg.so.0 libQt5Xml.so.5 libxcb-shm.so.0
libcrypto.so.1.1 libGL.so.1 libpango-1.0.so.0 libresolv.so.2 libxcb.so.1
libc.so.6 libGLX.so.0 libpangocairo-1.0.so.0 librsvg-2.so.2 libxcb-util.so.0
libdatrie.so.1 libgmodule-2.0.so.0 libpangoft2-1.0.so.0 librt.so.1 libXdmcp.so.6
libdbus-1.so.3 libgobject-2.0.so.0 libpcre16.so.3 libselinux.so.1 libXext.so.6
libdframeworkdbus.so.2 libgpg-error.so.0 libpcre.so.3 libSM.so.6 libXi.so.6
libdl.so.2 libgraphite2.so.3 libpixman-1.so.0 libsndfile.so.1 libxkbcommon.so.0
libdouble-conversion.so.1 libgsettings-qt.so.1 libpng16.so.16 libssl.so.1.1 libxml2.so.2
libdtkcore.so.2 libgthread-2.0.so.0 libproxy.so.1 libstartup-notification-1.so.0 libXrender.so.1
libdtkwidget.so.2 libgudev-1.0.so.0 libpthread.so.0 libstdc++.so.6 libXtst.so.6
libEGL.so.1 libharfbuzz.so.0 libpulsecommon-10.0.so libsystemd.so.0 libz.so.1
libevdev.so.2 libICE.so.6 libpulse.so.0 libthai.so.0 ssf2fcitx_skin
libexpat.so.1 libicudata.so.57 libQt5Concurrent.so.5 libudev.so.1 ssf2fcitx_skin.png
libffi.so.6 libicui18n.so.57 libQt5Core.so.5 libuuid.so.1 ssf2fcitx_skin.sh
libFLAC.so.8 libicuuc.so.57 libQt5DBus.so.5 libvorbisenc.so.2 ssf2skin
libfontconfig.so.1 libinput.so.10 libQt5Gui.so.5 libvorbis.so.0
libfreetype.so.6 liblz4.so.1 libQt5Multimedia.so.5 libwacom.so.2
其中ssf2fcitx_skin
是图形化启动界面,但是在我的电脑上不好使,你可以使用ssf2skin
来制作皮肤,步骤同上。
制作后的输出目录内容,这里推荐一款皮肤
vincente@vincente:~/Downloads$ cd fangzhou/
vincente@vincente:~/Downloads/fangzhou$ ls
15407970467788_former.gif bar.png comp_588600.png fcitx_skin.conf skin1.png skin2_2.png skin.ini skinmanager3.png
a3.png cn3.png en3.png skin1_2.png skin2_1.png skin2.png skin.ini.u8
看下使用效果:
皮肤制作到此完成,可以根据自己爱好定制!
使用搜狗输入法的词库
素材来源:
- 搜狗词库下载地址:https://pinyin.sogou.com/dict/
接下俩开始转换整合
下载工具:
sudo apt install fcitx-tools
下载词库,这里我已经上传两个文件可以直接下载
- 基本词库:
- 搜狗计算机术语词库:
不过搜狗的词库是scel文件需要我们先做一个格式转换,转换为org
格式的文件就可以被识别了。
在你搜狗词库的根目录下创建一个org文件夹
vincente@vincente:~/Downloads/sougou$ mkdir org
vincente@vincente:~/Downloads/sougou$ ls
computer.scel org/
然后创建一个trans.sh文件来转化
for scel in *.scel
do
scel2org ${scel} -o org/${scel}.org
done
授予可执行权限
chmod +x trans.sh
执行./trans.sh
,结果
vincente@vincente:~/Downloads/sougou$ ./trans.sh
计算机词汇大全【官方推荐】
计算机科技
官方推荐,词库来源于网友上传!
然后将基本的词库org文件复制进去
vincente@vincente:~/Downloads/sougou/org$ ls
computer.scel.org pyPhrase.org
切换到org目录,接下来开始整合词库
cat *.org > tot.org #整合基本词库和自定义词库
sort tot.org > ord.org # 排序
uniq ord.org > final.org # 去重
final.org
就是最终我们需要的词库文件
执行createPYMB gbkpy.org final.org
进行最后的转换,gbkpy.org
是转换脚本,转换词库为mb
文件
vincente@vincente:~/Downloads/sougou/org$ createPYMB gbkpy.org final.org
vincente@vincente:~/Downloads/sougou/org$ ls
computer.scel.org pybase.mb pyphrase.mb pyPhrase.org tot.org
其中的 mb 文件就是我们的 Fcitx 词库文件了。
执行 mv *.mb ~/.config/fcitx/pinyin ,随后重启 Fcitx 即可。
Elementary OS 使用fcitx安装搜狗词库、搜狗输入法(Linux通用)的更多相关文章
- Fcitx使用搜狗词库与皮肤
在 \(\text{Linux}\) 环境下,\(\text{Fcitx}\) 确实是最好用的开源输入法之一.然而 \(\text{Windows}\) 下的巨头输入法 -- 搜狗,对 \(\text ...
- CentOS安装搜狗词库
中文输入使用ibus-pinyin. 在ibus-pinyin里使用搜狗词库 # wget http://hslinuxextra.googlecode.com/files/sougou-phrase ...
- (转载)Windows下小狼毫输入法(Rime)的安装与配置(含导入搜狗词库)
div id="cnblogs_post_body" class="blogpost-body"> 最近彻底烦透了搜狗拼音输入法的各种流氓行为,自动升级不 ...
- 将搜狗词库.scel格式转化为.txt格式
由于项目中要用到词库,而下载的搜狗词库是.scel格式,所以就用python脚本将搜狗词库.scel格式文件转化为.txt格式文件. #!/bin/python # -*- coding: utf-8 ...
- 中州韵输入法(rime)导入搜狗词库
rime是一个非常优秀的输入法,linux平台下的反应速度远超搜狗,也没有隐私风险.2012年开始接触它,到后来抛弃了它,因为rime自带的词库真的太弱了,也懒得折腾.最近发现一个词库转换软件叫ime ...
- 将搜狗词库(.scel格式)转化为txt格式
参考:http://blog.csdn.net/zhangzhenhu/article/details/7014271 #!/usr/bin/python # -*- coding: utf-8 -* ...
- 解析搜狗词库(python)
#!/usr/bin/python # -*- coding: utf-8 -*- import struct import sys import binascii import pdb #搜狗的sc ...
- 使用Java将搜狗词库文件(文件后缀为.scel)转为.txt文件
要做一个根据词库进行筛选主要词汇的功能,去搜狗下载专业词汇词库时,发现是.scel文件,且通过转换工具(http://tools.bugscaner.com/sceltotxt/)转换为txt时报错如 ...
- 搜狗词库转txt
#环境需求 Python2 1 #!/bin/python # -*- coding: utf- -*- import struct import sys import binascii import ...
随机推荐
- scrapy数据写入管道
1 setting里面启动管道 ITEM_PIPELINES = { 'ganji.pipelines.GanjiPipeline': 300,}2 拿到的数据通过yield返回给管道 # -*- c ...
- java调用.net的webservice[转]
一.引用jar包. 完整包路径:http://files.cnblogs.com/files/chenghu/axis完整jar包.rar 二.java程序代码如下所示: package edu.sj ...
- JavaScript 的用法
内建的 JavaScript 对象可用于全局属性和函数 顶层函数(全局函数) 函数 描述 decodeURI() 解码某个编码的 URI. decodeURIComponent() 解码一个编码的 ...
- Python之集合详解
定义: 1.不同元素组成 2.无序 3.集合中的元素必须是不可变类型 创建集合 s = {1,2,3,4,5,6,7,8} 1.定义可变集合 >>> set_test = set(' ...
- day70:Vue:Git&路飞学城页面效果
目录 1.Git 2.路飞学城项目页面效果 0.安装elements UI 1.顶部导航栏效果 2.轮播图效果 1.Git 什么是git?分布式版本管理工具 1.git操作 # 1 创建git本地仓库 ...
- ELK6环境搭建
(一)什么是ELK Stack ELK 到底是什么呢? "ELK"是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash 和 Kibana. E ...
- CSS中-moz、-ms、-webkit、-o的意思
-moz代表firefox浏览器私有属性 -ms代表ie浏览器私有属性 -webkit代表safari.chrome浏览器私有属性 -o代表opera浏览器私有属性 上述这些是为了兼容老版本的写法:
- LeetCode 45跳跃游戏&46全排列
原创公众号:bigsai,回复进群加入力扣打卡群. 昨日打卡:LeetCode 42字符串相乘&43通配符匹配 跳跃游戏 题目描述: 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中 ...
- vue 干货
今天逛博客,发现一个干货, 赶紧记录,内容太多,慢慢消化 vuejs心法和技法 https://www.cnblogs.com/kidsitcn/p/5409994.html
- Java进阶面试
消息中间件: 1.你们公司生产环境用的是什么消息中间件? https://mp.weixin.qq.com/s?__biz=MzU0OTk3ODQ3Ng==&mid=2247484149&am ...