我试图让分号在按住时充当移位键,但在点击时充当;当按住移位键时充当冒号,当按住 CapsLock 时充当结束键

我试图让分号在按住时充当移位键,但在点击时充当;当按住移位键时充当冒号,当按住 CapsLock 时充当结束键

这是我在 Karabiner-Elements 中尝试过的代码。

轻按分号键时会发送分号✔

按住 Shift 键并点击分号时,将发送冒号 ✔

按住 CapsLock 并点击分号,结束发送✔

按住分号时,Shift 应该被激活 ✖

{
  "global": {},
  "profiles": [
    {
      "name": "Default",
      "complex_modifications": {
        "rules": [
          {
            "description": "CapsLock + Esc when tapped, set capslock_modifier variable when held",
            "search to jump to this point": "capscaps",
            "manipulators": [
              {
                "type": "basic",
                "from": {
                  "key_code": "caps_lock",
                  "modifiers": {
                    "optional": ["any"]
                  }
                },
                "to": [
                  {
                    "set_variable": {
                      "name": "capslock_modifier",
                      "value": 1
                    }
                  }
                ],
                "to_if_alone": [
                  {
                    "key_code": "escape"
                  }
                ],
                "to_after_key_up": [
                  {
                    "set_variable": {
                      "name": "capslock_modifier",
                      "value": 0
                    }
                  }
                ]
              }
            ]
          },
          {
            "description": "Change semicolon to shift, colon, or end",
            "manipulators": [
              {
                "type": "basic",
                "from": {
                  "key_code": "semicolon",
                  ";modifiers": {
                    "optional": ["any"]
                  }
                },
                "parameters": {
                  "basic.to_if_alone_timeout_milliseconds": 250,
                  "basic.to_if_held_down_threshold_milliseconds": 250
                },
                "to_if_alone": [
                  {
                  "key_code": "semicolon"
                  }
                ],
                "to_if_held_down": [
                  {
                    "key_code": "right_shift",
                    "lazy": false
                  }
                ]
              }
            ]
          },
          {
            "description": "Change semicolon to shift, colon, or end",
            "manipulators": [
              {
                "type": "basic",
                "from": {
                  "key_code": "semicolon",
                  "modifiers": {
                    "optional": ["any"]
                  }
                },
                "conditions": [
                  {
                    "type": "variable_if",
                    "name": "capslock_modifier",
                    "value": 1
                  }
                ],
                "to": [
                  {
                    "key_code": "end"
                  }
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

结尾有效,分号和冒号也有效。但按住时,它不能像 shift 一样工作。

相关内容