首页 > 其他分享 >关于嵌入式QML dict_pinyin.dat的编译更新

关于嵌入式QML dict_pinyin.dat的编译更新

时间:2024-07-29 22:55:54浏览次数:15  
标签:src qt pinyin dat 编译 dict 5.9

硬件平台:全志的A40I-H 

软件平台:Linux 内核版本3.10.65

QT版本:5.9.0

 

重新编译dict_pinyin.dat的作用 

1.解决输入"nss"导致输入法崩溃的问题

2.解决输入某些嵌入式平台不支持的字体,例如“捃”,导致程序崩溃的问题

 

源码路径:

~/qt-everywhere-opensource-src-5.9.0/qtvirtualkeyboard/src/virtualkeyboard/3rdparty/pinyin/command

目录里面有一个Makefile和pinyinime_dictbuilder.cpp

1.不能直接make,cpp文件里面有一句提示信息

/**
* Build binary dictionary model. Make sure that ___BUILD_MODEL___ is defined
* in dictdef.h.
*/

需要在dictdef.h里面取消___BUILD_MODEL___ 宏的注释,dictdef.h路径:

~/qt-everywhere-opensource-src-5.9.0/qtvirtualkeyboard/src/virtualkeyboard/3rdparty/pinyin/include

 

2.修改完成,在当前目录下,打开控制台,直接make即可

 

3.编译完成,会有一个可执行文件pinyinime_dictbuilder

4.按照自己的喜好或者需求,修改文件rawdict_utf16_65105_freq.txt

路径:~/qt-everywhere-opensource-src-5.9.0/qtvirtualkeyboard/src/virtualkeyboard/3rdparty/pinyin/data

注意:最好在虚拟机或者Linux环境下用vim打开,不要拉出去Windows下编辑,不然txt文件格式会有出入,到时候会build 失败

   a.某些生僻字,在当前平台运行会报错,可以直接删除该字体,例如A40i的libQt5Gui.so库, 不支持“捃"字,输入拼音jun会让程序崩溃,所以删掉此行

   b.输入nss会报错,删掉ni shi shui 和ni shi shei 这两行联想字体即可

5. 回到pinyinime_dictbuilder的目录,在控制台里面 ./pinyinime_dictbuilder执行编译

编译成功会提示如下信息

6.回到data目录,查看.dat文件是否已经更新

路径:~/qt-everywhere-opensource-src-5.9.0/qtvirtualkeyboard/src/virtualkeyboard/3rdparty/pinyin/data

在控制台输入 ls -la查看.dat文件的生成时间,如果为最新,即可直接放入嵌入式平台中使用。

 

参考资料:

1.GooglePinyin分析 | AlphaBoom

2.xiangfademao/PinYinImeDicBuilder: 谷歌拼音输入法词库生成工具 (github.com)

3.qt平台集成google拼音中文输入法_qml使用谷歌拼音-CSDN博客

 

特别鸣谢:小瑜、林工、小小周。

标签:src,qt,pinyin,dat,编译,dict,5.9
From: https://www.cnblogs.com/mgshadow/p/18331250

相关文章

  • pandas\dataframe
    #Importingpandasandmatplotlibimportpandasaspdimportmatplotlib.pyplotasplt#ReadintheNetflixCSVasaDataFramenetflix_df=pd.read_csv("netflix_data.csv")#SubsettheDataFramefortype"Movie"netflix_subset=netflix_df......
  • DataFunTalk | AI Agent 在 1688 电商平台中的应用
    本文来源公众号“DataFunTalk”,仅用于学术分享,侵权删,干货满满。原文链接:AIAgent在1688电商平台中的应用导读 本文将分享AIAgent在电商平台中的探索。本文整理自2024年4月19日DataFunCon2024(上海站)(线下)王卓隽老师关于《AIAgent在1688电商平台中的应用》的......
  • 【python】容器之字典(dict)
    字典(dict)字典是一种可变容器模型,且可存储任意类型对象。字典的每个键值key:value对用冒号分割,每个键值对之间用逗号分割,整个字典包括在花括号{}中,格式如下所示:d={key1:value1,key2:value2}创建字典:Python中创建字典可以使用以下几种方法:1使用花括号{}......
  • pymongo版本更新错误DatetimeConversion
    由于我使用的是pymongo版本3.6.0,现在更新到版本4.6.3,在此更新之后,我可以执行构建并开始运行。但在单元测试中,我的错误为“ImportError:无法从'bson.code_option'(~/bmstmp/dockcont1/configs/main/pybuild/x86_64-v21/Debug/bson/codec_options.py)导入名称'DatetimeC......
  • ARFoundation系列讲解 - 93 Immersal GoPro绘制地图
    一、Immerasal地图绘制的方式1.MapperAPP地图绘制:这种⽅式不需要数据处理操作,更适合⼩场景、测试使⽤。只能生成点云模型,无法生成真实环境网格模型。2. 全景相机地图绘制:使⽤全景相机采集原始数据建图的优势在于:全景图⽚视野覆盖范围⼤,可以⽤更少的照⽚完成较⼤场景地图(......
  • JointJS+ Plus 4.0.1 Crack Update FIX
    JointJS+,专业的交互式UI图表库一个用于高级可视化应用程序的图表库,它融合了HTML5和SVG的最佳功能,并提供了创建优秀产品所需的一切。一个库,无限的UI选项JointJS+Plus 直接在您的应用程序中使用交互式流程图、BPMN和其他图表工作室。利用我们的模板应用程序,将开发......
  • 检索 Panda Dataframe 列中列表的最后一个元素
    我有这个csv文件示例:(将其读为项目AAA成本1000,项目AAA(1)成本2000)ColumnNameAAA(1000)AAA(1)(2000)我想创建所有数字的pandas数据框列即Column_cost10002000我尝试拆分thisby'('返回类似以下内容的内容(因为第二个项目的名称中有'(':Result......
  • SQL Server 2022 RTM Cumulative Update 14 发布 (累积更新包)
    SQLServer2022RTMCumulativeUpdate14发布(累积更新包)请访问原文链接:https://sysin.org/blog/sql-server-2022/,查看最新版。原创作品,转载请保留出处。SQLServer2022SQLServer2022现已普遍可用2022年11月16日,巨硬宣布正式发布SQLServer2022,这是迄今为止......
  • HV000030: No validator could be found for constraint ‘javax.validation.constrai
    原文链接:https://blog.csdn.net/miachen520/article/details/119817478错误原因:数字类型不能使用javax.validation.constraints.Pattern注解解决办法方法一:.将字段类型设置为String类型;方法二:使用其他验证注解验证,数字的有@Size,@Min,@Max,@Range现将@Valid常用注解介绍如下:Be......
  • 我需要有关“data_type_name”的帮助吗?
    2024-07-2902:17:59错误discord.ext.commands.bot忽略命令getpasswords中的异常回溯(最近一次调用最后一次):文件“C:\Users\tbyet\AppData\Roaming\Python\Python312\site-packages\discord\ext\commands\core.py”,第235行,包装ret=等待coro(*args,**kwargs)^^^^^^^^......