阅读:8084回复:10
未来的Linux将没有第三方输入法?
flatpak是挺热门的技术,它提供了一个通用的包格式,把应用放在一个沙箱中运行,大家明白了吧,像不像android的apk?
但对输入法来说,问题就大了,在android上,输入法是一个单独的进程,它和普通应用的进程之间通过标准的接口连接到一块,所以不存在什么问题。 但是,问题来了,Linux上的输入法有标准的输入法接口吗,答案很明显,没有。如果曾经有过,那么是XIM,但是QT5已经抛弃了对XIM的支持,新的Wayland的出现,也让XIM成为明日黄花。Wayland上当前的输入法支持就是一垃圾,基本不可用,也没有应用或者应用框架支持它。 当前的Linux上的输入法基本上都需要自己实现Gtk输入法模块,QT输入法模块,XIM支持。而在flatpak的世界中前两者都是不可行的,因为flatpak这东西运行会基于一个叫做运行时的东西,比如Gnome运行时,也就是flatpak应用运行时不会调用系统的gtk库,调用的是这个gnome运行时里面的gtk,这样就不会调用第三方输入法的模块,这时第三方输入法自然就不可用了。 解决方法就两个,要么在运行时中打包输入法模块,要么应用打包时把输入法模块也打包进去,但这两者对第三方输入法来说都是不可能的。就算是发行版打算进行调整,也基本不可能,因为运行时是所有发行版通用的,由flatpak的人制作,而不是发行版自己提供(自己提供也行,但第三方应用可不会用你的运行时,就失去了使用flatpak打包的意义)。 当然沙箱技术也会造成很大的影响,应用和系统之间的通信接口是应用打包时就规定好的,第三方应用可不会对每个非标准的输入法接口作出处理。 深度打算把包管理系统切换到flatpak,不是很清楚他们打算怎么处理输入法的问题,很可能是提供自己定制的运行时,打包上他们系统内的输入法模块,但是第三方输入法还是没有什么解决办法。 |
|
沙发#
发布于:2017-08-03 15:02
https://github.com/flatpak/flatpak/issues/675
这些人只是讨论了对ibus的支持,对其他输入法的支持没戏 |
|
板凳#
发布于:2017-08-08 17:46
|
|