重新映射修改器键可一次按下多个修改器

时间:2018-12-03 16:19:16

标签: keyboard keyboard-shortcuts keymapping

我想重新映射修饰符键(在我的情况下为CAPS_LOCK),以便一次发送多个修饰符。我的意思是说,不是特定的键组合,例如<Ctrl>+C。尽管第二部分(将键映射到键组合)在多个问题中得到回答,但我没有找到第一个问题的解决方案。

为了使事情更具体:我想将Caps_lock映射到Meta+Control+Alt+Shift,所以我有一个与系统应用程序定义的任何其他键组合都没有冲突的修饰键。这种组合是在Mac和Ubuntu计算机之间共享我的PyCharm和Intellij键映射的结果,在Mac上,我使用Karabiner将大写锁定映射到所谓的Hyper键,这是上述修饰符的组合。

1 个答案:

答案 0 :(得分:0)

[为了避免误解:您是说”立即在其 OWN 上表示吗?您在其 ONE ” ]

上输入了

caps_lock LOCKS 表示其状态,永久 (在我的Windows键盘上)。
/> 含义:按下caps_lock 一次 将返回“ eventType:key_down”(在KE的EventViewer中),并且仅 second 按将调用“ eventType:key_up”。
因此,如果您打算“发送”并完成此操作,恐怕caps_lock会“机械地”阻止这种情况。

(这由以下情况确认/说明:如果您编写了一个额外的“ to_if_held_down”,等待时间为-2s-,然后短按caps_lock,则您的“ held_down”命令将在 STILL 之后执行2s。)

  

因此:如果您的Apple /内部键盘的行为不同 :请评论此处 !!!



我不确定,我对您的问题有“意图”(请参阅​​评论),但我仍会尝试回答。

当前版本12.1要求手动编辑~/.config/karabiner/ karabiner.json文件以进行复杂的重映射(直到发布最终的“非元素”版本)。
原则上,以下代码对我来说非常有效
,但是其状态 已切换 key_down / _up:

{ "description": "META-Cmd & Shift & Control & Option",
 "manipulators": [
                 { "from": {
                            "key_code": "caps_lock",
                           "modifiers": {
                                "optional": [ "any" ] }
                            },
                     "to": [{
                            "key_code": "left_command",
                           "modifiers": [
                                 "left_shift",
                                 "left_control",
                                 "left_option"  ]
                            }],
                   "type":  "basic"
}               ]},

无论我在Sys-Prefs键盘特殊键中的设置如何,我的Windows键盘每次都会切换 。 (我读过somewhere,可能是Microsoft驱动程序造成的。)