Open ziqi-cn opened 9 months ago
该问题原理上无法支持。
应用使用某个输入法,是通过应用程序载入输入法框架的动态连接库,然后后者进一步加载对应输入法的动态连接库实现的。输入法的动态连接库则负责与其后台的进程通信。
综上所述,要想新世界的应用程序使用旧世界的输入法,需要新世界的程序载入旧世界的动态连接库。这一点是不可行的,因为新世界的应用程序使用的是新世界的 glibc,其不包含与旧世界兼容的符号,所以无法加载旧世界的动态连接库。
之所以旧世界的应用程序可以使用新世界的输入法,是因为安装 liblol 后,旧世界的应用程序调用的是 liblol 提供的具有兼容符号的 libc,而后者既可与旧世界的动态连接库相连接,也可以与新世界的动态连接库相连接。
可以提供兼容的输入法框架的动态连接库
替换新世界的动态库吗?然后由兼容的输入法框架判断如何载入具体输入法的方式,譬如out-process 运行输入法,通过proxy与兼容输入法框架进行通信。
可以提供兼容的
输入法框架的动态连接库
替换新世界的动态库吗?然后由兼容的输入法框架判断如何载入具体输入法的方式,譬如out-process 运行输入法,通过proxy与兼容输入法框架进行通信。
该功能已经超出了本项目的范畴。如果有任何人有兴趣实现的话,可以作为另一个项目来实现。
系统archlinux,liblol 0.1.3,搜狗拼音输入法4.2.1.145,下载自 https://shurufa.sogou.com/linux
错误日志