⑴ 如何从头开始编一个拼音输入法
需要学习输入法框架的 API;不同系统的输入法框架有较大差异,可能会涉及一些系统底层的细节;调试困难;Windows 的输入法以 DLL 注入方式加载,需要事先注册到系统,且不可运行时替换 (hot-swap);Mac OS 对输入法做超时控制,难以利用断点单步调试我的建议是,在理解输入法工作原理的基础上,先写一个逻辑纯粹的、在命令行上以 REPL (Read-eval-print loop) 方式工作的输入法原型。比方说,首先实现输入一串编码、查词典、输出查询结果。如果是做拼音输入法,可进一步在词典查询基础上完成词组、语句的转换。然后,再增加选字、编辑等功能键的处理逻辑。不可显示为字符的按键,可通过转义序列模拟,例如 `rime_api_console` 采用花括号+IBus键名表示任意的按键:`shuruufa{Left}{Left}{BackSpace}{End}`https://github.com/lotem/librime/blob/master/tools/rime_api_console.cc#L144这样做的好处是可以将测试用的按键序列保存为文本,通过输入重定向重放测试场景:```$ rime_api_console< test_key_sequence.txt```原型将输入法所需逻辑完全实现后,即可集成到真实的输入法框架,完善用户接口等等。最后,藉机宣传一下 RIME:RIME/中州韵输入法引擎,是一套跨平台的输入法算法框架,即在输入法与操作系统接口之上封装了一套输入法常用的算法和逻辑组件,允许用户以 YAML 文档格式自定义输入方案和码表,快速建立拼音、注音、五笔及类似形态的输入法。对于需要特殊逻辑的输入法,可通过编程扩展该框架,使开发者只须专注于相关逻辑。目前这一框架的不足是接口尚未完全定型、缺少开发文档。
⑵ 编程语言是否能用汉字的拼音
编程biān chéng语言yǔ yán是否shì fǒu能néng用yòng汉字hàn zì的de拼音pīn yīn ?
比如bǐ rú使用shǐ yòng汉字hàn zì的de拼音pīn yīn
而ér不bù是shì英文yīng wén单词dān cí
这个过程是可以程序实现的。