XingMaUserGuide
形码输入法平台简介
主要功能及优点
快速的输入速度
方便用户的自定义词组
scim-tables的情况
在scim-tables下,当用户要加入自定义词组时,需要:
XingMa的情况
- 在正常的中文(实际上是XingMa模式下)输入一个字或词的编码,然后按左边的shift_L键(此时,你可以看到字或词出现在了输入法的框中),同时如果输入框中已经有了两个或两个以上的字,就会显示这个词的编码:
- 再输入一个字或词的编码,如果已经是你要的词了,直接按Space键把你输入的词组提交到编辑的文本中,此时XingMa会自动为你判断是否是词库中没有的新词,如果是新词的话就会为您加入到用户词库中。
- 如果你还没输完,不要按 Space,按Shift_L再重复2即可; 如果你想看看这个词组的编码,那输完后不要马上按Space,而是按左边的Shift_L,你就可以在输入法的框中看到这个词组的编码。方便吧:)
拼音反查
使用说明
- Space键: 把字词提交到编辑的文本中
- Shift_L : 在还没用输入法输入时为切换中英文模式; 在输入中为把第一个候选词提交到预编辑的文本中为。
- Shift_R : 在中文模式(非英文模式)下,切换形码/拼音模式;假如挂载的具体输入法不支持拼音反查,则相当于Shift_L。
- Arrow Left 和 Arrow Right: 在预编辑文本中挨个字移动光标。
- Backspace : 去掉一个输入的码键或去掉预编辑文本中光标前的一个字。
- Delete : 删除预编辑文本中光标后的一个字;
- Control + Arrow Left : 把光标移到预编辑文本中当前词的词首;
- Control + Arrow Right : 把光标移到预编辑文本中当前词的词末;
- Control + Backspace : 预编辑文本中,从光标位置开始删除到当前词的词首;
- Control + Delete : 预编辑文本中,从光标位置开始删除到当前词的词末;
- Arrow Down : 下一个候选词;
- Arrow Up : 上一个候选词;
- Return : 当没有向预编辑文本中提交字词时,把键入的字母以英文提交到应用程序的编辑文本中; 否则,就相当于重置输入法(比如你输错了词时);
- Esc : 重置输入法;
- Num 1 ~ Num 9 : 从候选字词中选择相应的,并提交到应用程序的编辑文本中(和别的输入法相当);
- Control + ( Num 1 ~ Num 9 ): 从候选字词中选择相应的,但不提交到应用程序,而是提交到预编辑文本中 (准备加入自定义词组或拼音反查时)
- Alt + ( Num1 ~ Num 9) : 把候选字词中相应的位置的自定义词组从用户词库中去掉,(用户自定义的词组是紫色的)。
- 减号 / 加号 : 如果不充当输入键时,对应于Page Up / Page Down
定制码表
用户可以在scim-tables已有的码表中加入一些额外的参数,就可以用它生成XingMa用的数据库文件了。
码表的格式
- 必须为UTF-8编码的txt文本,或该txt文本压缩的bz2文件(发布用的)。
- 注释为 ### 开头的行,这和scim-tables的格式相同。所有注释行和空白行都会被忽略。
- 输入法的属性设置行格式形如: ATTR = VAL, 其中ATTR为英文的属性名,VAL为其值,UTF-8字符(当然包括数字)。ATTR和VAL不区分大小写。
- 有效的属性如下:
'name' | 输入法的英文名称 |
'name.zh_cn' | 输入法zh_CN下的名称 |
'name.zh_hk' | 輸入法zh_HK下的名称 |
'name.zh_tw' | 輸入法zh_TW下的名称 |
'author' | 码表的作者 |
'uuid' | 输入法的uuid值 |
'serial_number' | 码表的编号 |
'icon' | 输入法图标的路径 |
'credit' | 码表的协议,如GPL |
'languages' | 支持的语言 |
'valid_input_chars' | 有效的按键,如'abcdefghijklmnopqrstuvwxyz'。 |
'max_key_length' | 输入法的最大键长 |
'status_prompt' | 和英文状态对应的形码状态的显示。 |
'def_full_width_punct' | 是否默认为全角标点,默认为'TRUE'。 |
'def_full_width_letter' | '是否默认为全角字符,默认为FALSE'。 |
'user_can_define_phrase' | 支持用户自定义词组吗?默认为'TRUE',不过单字输入法应设为'False'。 |
'pinyin_mode' | 支持拼音反查吗?默认为'TRUE'。 |
'rules' | 构词的规则,如'ce2:p11+p12+p21+p22;ce3:p11+p21+p22+p31;ca4:p11+p21+p31+p41' |
ce2 意为词长等于2(ci equals 2),ca4为词长大于等于4的(ci aboves 4), 显然如果4个字以上的词有一个规则,那你必然要有词长为2和3的规则。
生成数据库文件
当你准备好了码表后,你就可以用XingMa目录下的XMCreateDB.py来生成XingMa能使用的数据库文件了,假如我们要用当前目录下的码表 xingma-test.abc.txt来生成:
python /usr/share/scim-python/engine/XingMa/XMCreateDB.py -s xingma-test.abc.txt
如何反馈意见?
- 在scim-python的讨论组发信讨论。
- 在issue列表里创建新的issue。