是否有可能在所有Qt程序中实现emacs样式的键绑定(可能作为qt插件)?

yuy*_*hao 9 plugins qt accessibility key-bindings

Gtk程序可以通过将不同的键绑定到gtk信号来具有不同的键绑定主题,但是afaik,qt程序现在不能这样做.

由于Qt支持插件(正如大多数此类库所做的,我的意思是高级插件或Qt扩展)并且至少其中一些(高级插件)可以由所有qt程序自动加载,如同类似ENV,是否可以使用qt插件获得全局(Emacs或其他样式)键绑定(至少在所有输入区域中)?换句话说,有谁知道这应该是哪种(高级)插件?

我的猜测是一个inputcontext插件或一个可访问(桥接)插件.对于输入上下文插件,我想知道这是否可以使用输入法,因为afaik一次只能启用一个inputmethod后端.对于可访问的插件,我还没有找到如何自动加载它.

谢谢.

spr*_*aff 1

您可以安装事件过滤器来拦截关键事件,并使用它将它们转换为其他事件

我认为您使用的“插件”一词与 Qt 的含义不同。它有各种特定的插件——用于图像编解码器、SQL 驱动程序等——但没有通用的“对所有小部件执行此操作”机制。为此,您必须捕获应用程序中顶级小部件的所有创建点,并添加代码来为每种情况安装过滤器。