📄 ime_py.c
字号:
{ 32, pcode_for_32, 2 },
{ 33, pcode_for_33, 1 },
{ 34, pcode_for_34, 2 },
{ 36, pcode_for_36, 2 },
{ 37, pcode_for_37, 1 },
{ 38, pcode_for_38, 2 },
{ 42, pcode_for_42, 2 },
{ 43, pcode_for_43, 2 },
{ 48, pcode_for_48, 2 },
{ 52, pcode_for_52, 2 },
{ 53, pcode_for_53, 2 },
{ 54, pcode_for_54, 2 },
{ 56, pcode_for_56, 1 },
{ 58, pcode_for_58, 4 },
{ 62, pcode_for_62, 2 },
{ 63, pcode_for_63, 2 },
{ 64, pcode_for_64, 3 },
{ 66, pcode_for_66, 1 },
{ 68, pcode_for_68, 4 },
{ 72, pcode_for_72, 2 },
{ 73, pcode_for_73, 2 },
{ 74, pcode_for_74, 4 },
{ 76, pcode_for_76, 1 },
{ 78, pcode_for_78, 4 },
{ 82, pcode_for_82, 1 },
{ 83, pcode_for_83, 1 },
{ 84, pcode_for_84, 1 },
{ 88, pcode_for_88, 1 },
{ 92, pcode_for_92, 3 },
{ 93, pcode_for_93, 2 },
{ 94, pcode_for_94, 3 },
{ 96, pcode_for_96, 2 },
{ 98, pcode_for_98, 4 },
{ 224, pcode_for_224, 2 },
{ 226, pcode_for_226, 4 },
{ 234, pcode_for_234, 1 },
{ 236, pcode_for_236, 2 },
{ 242, pcode_for_242, 1 },
{ 243, pcode_for_243, 2 },
{ 244, pcode_for_244, 1 },
{ 246, pcode_for_246, 1 },
{ 248, pcode_for_248, 1 },
{ 264, pcode_for_264, 1 },
{ 268, pcode_for_268, 1 },
{ 284, pcode_for_284, 1 },
{ 286, pcode_for_286, 2 },
{ 324, pcode_for_324, 1 },
{ 326, pcode_for_326, 3 },
{ 334, pcode_for_334, 2 },
{ 336, pcode_for_336, 2 },
{ 342, pcode_for_342, 1 },
{ 343, pcode_for_343, 1 },
{ 348, pcode_for_348, 1 },
{ 364, pcode_for_364, 1 },
{ 368, pcode_for_368, 2 },
{ 384, pcode_for_384, 1 },
{ 386, pcode_for_386, 2 },
{ 424, pcode_for_424, 2 },
{ 426, pcode_for_426, 4 },
{ 434, pcode_for_434, 2 },
{ 436, pcode_for_436, 2 },
{ 468, pcode_for_468, 2 },
{ 482, pcode_for_482, 2 },
{ 484, pcode_for_484, 2 },
{ 486, pcode_for_486, 4 },
{ 524, pcode_for_524, 2 },
{ 526, pcode_for_526, 4 },
{ 534, pcode_for_534, 1 },
{ 536, pcode_for_536, 1 },
{ 542, pcode_for_542, 2 },
{ 543, pcode_for_543, 2 },
{ 546, pcode_for_546, 2 },
{ 548, pcode_for_548, 2 },
{ 568, pcode_for_568, 2 },
{ 582, pcode_for_582, 1 },
{ 583, pcode_for_583, 2 },
{ 584, pcode_for_584, 1 },
{ 586, pcode_for_586, 5 },
{ 624, pcode_for_624, 2 },
{ 626, pcode_for_626, 4 },
{ 634, pcode_for_634, 2 },
{ 636, pcode_for_636, 2 },
{ 643, pcode_for_643, 2 },
{ 646, pcode_for_646, 2 },
{ 648, pcode_for_648, 2 },
{ 668, pcode_for_668, 2 },
{ 683, pcode_for_683, 1 },
{ 686, pcode_for_686, 2 },
{ 724, pcode_for_724, 2 },
{ 726, pcode_for_726, 6 },
{ 734, pcode_for_734, 1 },
{ 736, pcode_for_736, 3 },
{ 742, pcode_for_742, 2 },
{ 743, pcode_for_743, 3 },
{ 744, pcode_for_744, 1 },
{ 746, pcode_for_746, 2 },
{ 748, pcode_for_748, 2 },
{ 768, pcode_for_768, 3 },
{ 783, pcode_for_783, 1 },
{ 784, pcode_for_784, 2 },
{ 786, pcode_for_786, 5 },
{ 824, pcode_for_824, 1 },
{ 826, pcode_for_826, 2 },
{ 843, pcode_for_843, 1 },
{ 868, pcode_for_868, 1 },
{ 884, pcode_for_884, 1 },
{ 886, pcode_for_886, 2 },
{ 924, pcode_for_924, 2 },
{ 926, pcode_for_926, 5 },
{ 934, pcode_for_934, 2 },
{ 936, pcode_for_936, 2 },
{ 942, pcode_for_942, 2 },
{ 943, pcode_for_943, 2 },
{ 944, pcode_for_944, 1 },
{ 946, pcode_for_946, 2 },
{ 948, pcode_for_948, 2 },
{ 968, pcode_for_968, 2 },
{ 983, pcode_for_983, 2 },
{ 984, pcode_for_984, 1 },
{ 986, pcode_for_986, 4 },
{ 2264, pcode_for_2264, 2 },
{ 2364, pcode_for_2364, 2 },
{ 2424, pcode_for_2424, 1 },
{ 2426, pcode_for_2426, 4 },
{ 2436, pcode_for_2436, 1 },
{ 2464, pcode_for_2464, 1 },
{ 2468, pcode_for_2468, 1 },
{ 2484, pcode_for_2484, 1 },
{ 2486, pcode_for_2486, 2 },
{ 2664, pcode_for_2664, 1 },
{ 2826, pcode_for_2826, 1 },
{ 3264, pcode_for_3264, 2 },
{ 3364, pcode_for_3364, 2 },
{ 3426, pcode_for_3426, 2 },
{ 3464, pcode_for_3464, 1 },
{ 3664, pcode_for_3664, 1 },
{ 3826, pcode_for_3826, 1 },
{ 4264, pcode_for_4264, 2 },
{ 4364, pcode_for_4364, 2 },
{ 4664, pcode_for_4664, 2 },
{ 4824, pcode_for_4824, 2 },
{ 4826, pcode_for_4826, 2 },
{ 5264, pcode_for_5264, 2 },
{ 5364, pcode_for_5364, 2 },
{ 5426, pcode_for_5426, 4 },
{ 5464, pcode_for_5464, 2 },
{ 5664, pcode_for_5664, 2 },
{ 5824, pcode_for_5824, 1 },
{ 5826, pcode_for_5826, 3 },
{ 6264, pcode_for_6264, 2 },
{ 6364, pcode_for_6364, 2 },
{ 6426, pcode_for_6426, 4 },
{ 6464, pcode_for_6464, 2 },
{ 6664, pcode_for_6664, 1 },
{ 6826, pcode_for_6826, 1 },
{ 7264, pcode_for_7264, 3 },
{ 7364, pcode_for_7364, 3 },
{ 7424, pcode_for_7424, 1 },
{ 7426, pcode_for_7426, 6 },
{ 7434, pcode_for_7434, 1 },
{ 7436, pcode_for_7436, 1 },
{ 7464, pcode_for_7464, 2 },
{ 7468, pcode_for_7468, 1 },
{ 7482, pcode_for_7482, 1 },
{ 7484, pcode_for_7484, 1 },
{ 7486, pcode_for_7486, 2 },
{ 7664, pcode_for_7664, 2 },
{ 7826, pcode_for_7826, 3 },
{ 8264, pcode_for_8264, 1 },
{ 8364, pcode_for_8364, 1 },
{ 8426, pcode_for_8426, 2 },
{ 8464, pcode_for_8464, 1 },
{ 8664, pcode_for_8664, 1 },
{ 8826, pcode_for_8826, 1 },
{ 9264, pcode_for_9264, 3 },
{ 9364, pcode_for_9364, 2 },
{ 9424, pcode_for_9424, 1 },
{ 9426, pcode_for_9426, 4 },
{ 9436, pcode_for_9436, 1 },
{ 9464, pcode_for_9464, 2 },
{ 9468, pcode_for_9468, 1 },
{ 9482, pcode_for_9482, 1 },
{ 9484, pcode_for_9484, 1 },
{ 9486, pcode_for_9486, 2 },
{ 9664, pcode_for_9664, 2 },
{ 9826, pcode_for_9826, 3 },
{ 24264, pcode_for_24264, 1 },
{ 24364, pcode_for_24364, 1 },
{ 24664, pcode_for_24664, 1 },
{ 24824, pcode_for_24824, 1 },
{ 24826, pcode_for_24826, 1 },
{ 48264, pcode_for_48264, 2 },
{ 54264, pcode_for_54264, 2 },
{ 54664, pcode_for_54664, 1 },
{ 58264, pcode_for_58264, 1 },
{ 64264, pcode_for_64264, 1 },
{ 74264, pcode_for_74264, 2 },
{ 74364, pcode_for_74364, 1 },
{ 74664, pcode_for_74664, 1 },
{ 74824, pcode_for_74824, 1 },
{ 74826, pcode_for_74826, 1 },
{ 94264, pcode_for_94264, 2 },
{ 94364, pcode_for_94364, 1 },
{ 94664, pcode_for_94664, 2 },
{ 94824, pcode_for_94824, 1 },
{ 94826, pcode_for_94826, 1 },
{ 248264, pcode_for_248264, 1 },
{ 748264, pcode_for_748264, 1 },
{ 948264, pcode_for_948264, 1 },
};
char pcode_py_for_null[10]="";
const IME_PY_PCODE pcode_for_null[1]={
{pcode_py_for_null,0,""},
};
const IME_PY_DCODE ime_py_dcode_null={ 0, pcode_for_null, 1 };
///////////////////////////////////////////////
//检查p1是否位于p2的头若干位上
// 如果p2右移n个百分位得到p1,则返回n,否则返回-1;
//
int PY_ContainCompare(int p1,int p2)
{
int nShiftSteps=0;
while(p2>0)
{
if(p1 == p2) return nShiftSteps;
p2 = p2/10;
nShiftSteps++;
}
return -1;
}
///////////////////////////////////////////////
//返回拼音码的长度(位数)
//
int PY_len(int p1)
{
int nret=0;
while(p1>0)
{
p1=p1/10;
nret++;
}
return nret;
}
/////////////////////////////////////////////
//给定一个数字码,返回查找到的码列表
//
const IME_PY_DCODE * FindPY(int dcode)
{
//查找相应的拼音码
int i,j,match_len;
for(i=0;i<234;i++)
{
if(ime_py_dcode[i].dcode == dcode)
{
return &(ime_py_dcode[i]);
}
}
//没有找到完全吻合的拼音码时,如果能查找到一个以本拼音码开头的
//拼音码,说明用户正在经历一个过渡状态,这时应该允许用户输入,但
//不显示候选,也就是显示空候选
for(i=0;i<234;i++)
{
if(PY_ContainCompare(dcode,ime_py_dcode[i].dcode)>=0)
{
match_len = PY_len(dcode);
for(j=0;j<match_len;j++)
{
pcode_py_for_null[j] = ime_py_dcode[i].pcode_arr[0].py[j];
}
pcode_py_for_null[j] = '_';
pcode_py_for_null[j+1] = 0;
return &ime_py_dcode_null;
}
}
return NULL;
}
#endif //#if _USE_GUI == 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -