独立于键盘布局的快捷键

ser*_*xio 25 keyboard-shortcuts x11 xkb keyboard-layout

有没有办法定义键盘的特定物理键与某些操作的关联,独立于该键在任何布局中关联的字母?

实施例:在大多数默认侏儒快捷键关联,按压Alt+ Ctrl+T打开一个终端。但仅限于拉丁键盘布局。在希腊语布局中执行相同的物理操作不起作用,因为相关的字母是“希腊语T,而不是“拉丁语T

因此,首先要切换到拉丁布局,然后按快捷键,这可能会令人沮丧,因为人们永远不确定是否一开始没有正确按下该键,因此可能会尝试多次直到意识到问题在布局中。

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

ter*_*don 20

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

我发现了一个程序,可以这样做:xbindkeys。我遵循的程序(改编自here)是:

  1. 安装xbindkeys. 在我的 Debian 上,这是用

     sudo apt-get install xbindkeys
    
    Run Code Online (Sandbox Code Playgroud)

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

  1. 创建默认设置文件:

     xbindkeys --defaults > ~/.xbindkeysrc
    
    Run Code Online (Sandbox Code Playgroud)
  2. 为您的钥匙获取正确的键码。运行xbindkeys -k并按您想要的快捷方式。随着我的键盘至少(虽然这应该是标准),xbindkeys -k报道称CtrlT

     m:0x14 + c:28
     Control+Mod2 + t
    
    Run Code Online (Sandbox Code Playgroud)
  3. 创建相关的快捷方式,将这些行添加到~/.xbindkeysrc

     "xterm"
      m:0x14 + c:28
    
    Run Code Online (Sandbox Code Playgroud)
  4. 运行xbindkeys。即使在希腊布局中,快捷方式现在也可以使用。要使其永久化,请将其添加到您的~/.Xsession

     xbindkeys
    
    Run Code Online (Sandbox Code Playgroud)