婆罗门
精华
|
战斗力 鹅
|
回帖 0
注册时间 2019-11-28
|
发表于 2025-4-28 16:24
来自手机
|
显示全部楼层
本帖最后由 Nanachi 于 2025-4-28 16:25 编辑
GLFW输入法的退格问题——Linux混乱不堪的输入法生态
2025-03-10
Linux下输入法问题繁多,很大程度是因为缺少稳定、统一的协议。其次,主要开发者中,中国人和日本人少,大部分开发者不用输入法,对这个问题不太重视。最早X11制定了XIM协议,Tedyin的博客3给出了一个很好的例子解释这个协议,建议阅读。XIM协议看起来简洁明了,而且也能用,但据说在特定条件下会导致程序卡死4。社区后来不知出于什么原因,没有进一步改进XIM协议,而是由GTK和Qt分别开发自己的IM Module——从此天下大乱,装个输入法都要手动配几个莫名其妙的环境变量。GLFW既不是GTK,也不是Qt,就更麻烦。
再后来,为了方便输入法开发,又出现了ibus和fcitx。ibus据说在非GNOME环境下表现不佳(但是我没查到具体的问题),且其GNOME下的拼音输入也有不少bug5。在国内社区持续的推广下,现在fcitx是中文输入的主流。
与此同时,Wayland正在逐步取代X11。很遗憾的是,Wayland的出现非但没有缓解输入法问题,反而将其进一步恶化了。Wayland自己另起炉灶,搞了v1-v4一系列协议6,具体兼容情况各不相同。应用开发者的反应没有协议更新的速度快,通常也不会把IME支持放在比较优先的位置,就导致过渡阶段💩一样的体验。
总之,在2025年的今天,Linux的输入法问题成了最混乱、最糟糕、最劝退的问题之一,上Arch中文论坛搜“Wayland+输入法”,能搜出来一整页的帖子。主要开发者长期忽视IME,造成社区不断分裂、造新的轮子,旧的问题刚刚解决,新的问题又产生了。就结果而言,如今哪怕是处理一个很常见的输入法问题,都需要很多无关的底层知识。Linux的输入法完全不应该这么复杂,本来应该和Windows一样简单才对。
—— 来自 HUAWEI CLS-AL00, Android 12, 鹅球 v3.5.99 |
|