独立于键盘布局的快捷键


25

是否有一种方法可以定义键盘的特定物理键与某个动作的关联,而与该键在任何布局中所关联的字母无关?

示例:在大多数默认的Gnome快捷键关联中,按Alt+ Ctrl+ T打开一个终端。但是只能在拉丁语键盘上布局。在希腊语版式中执行相同的物理操作不起作用,因为关联的字母则为“希腊语T,而不是“拉丁语T

因此,必须先切换到拉丁语版式,然后按快捷键,这可能会令人沮丧,因为一个人不确定一开始是否未正确按下该键,因此可能尝试几次直到意识到问题所在在布局中。

一种解决方案可能是在一个使用的所有布局中为相同的键定义相同的关联-但随后必须对所有快捷方式执行相同的操作,因此此解决方案无法很好地扩展。

Answers:


20

我经常在英语和希腊语之间切换,这已经有一段时间了。您的问题促使我解决了,谢谢!

我找到了可以执行此操作的程序:xbindkeys。我遵循的过程(从此处改编为)是:

  1. 安装xbindkeys。在我的Debian上,

    sudo apt-get install xbindkeys
    

    你也应该能够用等价很轻松地安装yum installpacman -S或任何命令。

  2. 创建默认设置文件:

    xbindkeys --defaults > `~/.xbindkeysrc`
    
  3. 获取正确的密钥代码。运行xbindkeys -k并按所需的快捷方式。至少使用我的键盘(尽管这应该是标准的),xbindkeys -k报告的CtrlT

    m:0x14 + c:28
    Control+Mod2 + t
    
  4. 创建相关的快捷方式,将这些行添加到~/.xbindkeysrc

    "xterm"
     m:0x14 + c:28
    
  5. 运行xbindkeys。现在,即使在希腊语版式中,快捷方式也可以使用。要使其永久存在,请将其添加到您的~/.Xsession

    xbindkeys
    

1
xbindkeys可以满足我的需求。而且,是的,Alt + Ctr + T是默认设置,而不是Ctrl +T。我已更正了这个问题。我想知道为什么Gnome选择了字母而不是键的对应关系
serxio 2013年

1
@serxio可能会在不同的键盘上更改键码?或者您可以重新映射事物,以便Gnome按名称调用该键,这样,如果您已将Ctrl映射到Alt或其他名称,就不会感到困惑?Trexa眼
terdon
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.