刚开始接触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

使用搜狗输入法的皮肤

素材来源

注意这里有坑,不过还是要继续看下去的,说不定就有解决方案呢。

皮肤工具下载完成后先不要操作,去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

看下使用效果:





皮肤制作到此完成,可以根据自己爱好定制!

使用搜狗输入法的词库

素材来源:

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通用)的更多相关文章

  1. Fcitx使用搜狗词库与皮肤

    在 \(\text{Linux}\) 环境下,\(\text{Fcitx}\) 确实是最好用的开源输入法之一.然而 \(\text{Windows}\) 下的巨头输入法 -- 搜狗,对 \(\text ...

  2. CentOS安装搜狗词库

    中文输入使用ibus-pinyin. 在ibus-pinyin里使用搜狗词库 # wget http://hslinuxextra.googlecode.com/files/sougou-phrase ...

  3. (转载)Windows下小狼毫输入法(Rime)的安装与配置(含导入搜狗词库)

    div id="cnblogs_post_body" class="blogpost-body"> 最近彻底烦透了搜狗拼音输入法的各种流氓行为,自动升级不 ...

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

    由于项目中要用到词库,而下载的搜狗词库是.scel格式,所以就用python脚本将搜狗词库.scel格式文件转化为.txt格式文件. #!/bin/python # -*- coding: utf-8 ...

  5. 中州韵输入法(rime)导入搜狗词库

    rime是一个非常优秀的输入法,linux平台下的反应速度远超搜狗,也没有隐私风险.2012年开始接触它,到后来抛弃了它,因为rime自带的词库真的太弱了,也懒得折腾.最近发现一个词库转换软件叫ime ...

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

    参考:http://blog.csdn.net/zhangzhenhu/article/details/7014271 #!/usr/bin/python # -*- coding: utf-8 -* ...

  7. 解析搜狗词库(python)

    #!/usr/bin/python # -*- coding: utf-8 -*- import struct import sys import binascii import pdb #搜狗的sc ...

  8. 使用Java将搜狗词库文件(文件后缀为.scel)转为.txt文件

    要做一个根据词库进行筛选主要词汇的功能,去搜狗下载专业词汇词库时,发现是.scel文件,且通过转换工具(http://tools.bugscaner.com/sceltotxt/)转换为txt时报错如 ...

  9. 搜狗词库转txt

    #环境需求 Python2 1 #!/bin/python # -*- coding: utf- -*- import struct import sys import binascii import ...

随机推荐

  1. 第六章 Linux系统之文件管理

    一.文件管理概述 1.对文件做些什么? 谈到Linux文件管理,首先我们需要了解的就是,我们要对文件做些什么事情? 其实无非就是对一个文件进行创建.复制.移动.查看.编辑.压缩.查找.删除等等 2.内 ...

  2. C# 面试前的准备_基础知识点的回顾_04

    1.Session和Cookie的使用区别 很容易回答的就是Session在服务器端,存储的数据可以较大容量,比如我们存一个Table,上千条数据. Cookie保存在客户端,安全系数低,不能放重要的 ...

  3. ssh执行命令

    执行一条命令 ssh user@ip command 执行多条命令 ssh user@ip "command1;command2" #分号隔开 关于转义 ssh user@ip ' ...

  4. 初探RT-Thread系统在GD32E103x芯片上的使用,点亮LED灯

    初探RT-Thread系统在GD32E103x芯片上的使用,点亮LED灯 前言 ​ 随着中美贸易战的加剧,很多公司越来越重视使用国产技术的重要性.使用国产技术,一方面可规避国外对技术的封锁造成产品核心 ...

  5. kettle插入更新流程

    kettle转换步骤工作组件 这里有四个类构成了这个kettle 步骤/节点,每一个类都有其特定的目的及所扮演的角色. TemplateStep:  步骤类实现了StepInteface接口,在转换运 ...

  6. JAVA学习第一阶段(2)

    21. ArrayList类和LinkList类 注意:add,contains,remove,retain(取交集) 都可以+all表示对集合的操作 ArrayList c = new ArrayL ...

  7. PLC模拟量采集模块在工控领域的应用

    在工业现场中,往往需要对温度.电流.电压等模拟量进行控制采集,这可以使用PLC对这些数据进行采集,但是如今生产各种PLC模拟量采集模块的厂家非常多,不同类型的PLC都是有自己专属的模拟量采集模块的,不 ...

  8. MyBatis重要核心概念

    一.SqlSessionFactoryBuilder 从命名上可以看出,这个是一个 Builder 模式的,用于创建 SqlSessionFactory 的类.SqlSessionFactoryBui ...

  9. 腾讯开源 APIJSON 连创五个第一

    腾讯第一个码云推荐项目,// 其它最早创建的是 TencentOS-tiny(码云) 2019.8.23 腾讯第一个码云GVP项目,// 其它最早创建的是 TencentOS-tiny(码云) 201 ...

  10. Blog.Core 项目已完成升级.NET5.0

    (是时候拿出来这种图了) 本文首发于公众号,但是会有新的内容加进来,所以就在博客园新开了一篇,望见谅.截止发稿,Blog.Core项目Master分支已经迁移到了5.0,新建了3.1的分支. 开心的锣 ...