2021SC@SDUSC
今天我们来聊聊一款输入法最核心的算法部分,这里是我整一个rime项目了解的一个大头,所以会讲的比较细致一点,用的篇幅也可能会比较长,一个个文件来讲。
第一个文件是algebra.h和algebra.cc,先看看头文件
首先rime中定义了calculation(计算),schema(模式),script(字母表),projection(投影),首先script中定义了增加音节的bool函数,实现音节合并功能的空函数,丢弃函数,而投影类中有装载和应用方法,具体实现我们看.cc文件
这是spelling.h文件,里面定义了各种拼写属性和可信度等成员函数
首先这个merge函数大致上是一个将输入的一串字符依照中文输入的英文拼写属性整合成多段单个字比如以拼音输入为例,首先给不同的字符设定优先级(type),那么b,