6.4 C
New York

keybindings – Remappez une motion sur différentes combinaisons de touches en fonction de l’software la plus avancée dans Karabiner


J’essaie de remapper un double faucet du fn clé à différentes combinaisons de touches en fonction de l’software la plus importante. Je peux le faire fonctionner pour une software, mais lorsque j’importe une règle pour la deuxième software, cela ne fonctionne pas. La suppression de la règle pour l’software n°1 lui permettra de fonctionner pour l’software n°2, donc je sais que les règles individuelles fonctionnent correctement. N’est-ce pas attainable de le faire à Karabiner ? Voici le json que j’utilise :

{"title": "double faucet fn",
  "guidelines": (
    { "description": "double faucet fn for Cmd-Backslash in VSCode",
      "manipulators": (
        {
          "sort": "primary",
          "from": {
            "key_code": "fn",
            "modifiers": {
              "non-obligatory": (
                "any"
              )
            }
          },
          "to": (
                  {
                    "key_code": "backslash",
                    "modifiers": (
                      "left_command"
                    )
                  }
          ),
          "situations": (
            {
              "sort": "variable_if",
              "identify": "key pressed",
              "worth": 1
            },
            {
            "sort": "frontmost_application_if",
            "bundle_identifiers": ("^com.microsoft.VSCode$")
            }
          )
        },
        {
          "sort": "primary",
          "from": {
            "key_code": "fn",
            "modifiers": {
              "non-obligatory": (
                "any"
              )
            }
          },
          "to": (
            {
              "set_variable": {
                "identify": "key pressed",
                "worth": 1
              }
            },
            {
              "key_code": "fn"
            }
          ),
          "description": "to_delayed_action is ready to 400ms in karabiner.json",
          "to_delayed_action": {
            "to_if_invoked": (
              {
                "set_variable": {
                  "identify": "key pressed",
                  "worth": 0
                }
              }
            ),
            "to_if_canceled": (
              {
                "set_variable": {
                  "identify": "key pressed",
                  "worth": 0
                }
              }
            )
          }
        }
      )
    },
    { "description": "double faucet fn for Cmd-T in FF",
      "manipulators": (
        {
          "sort": "primary",
          "from": {
            "key_code": "fn",
            "modifiers": {
              "non-obligatory": (
                "any"
              )
            }
          },
          "to": (
                  {
                    "key_code": "t",
                    "modifiers": (
                      "left_command"
                    )
                  }
          ),
          "situations": (
            {
              "sort": "variable_if",
              "identify": "key pressed",
              "worth": 1
            },
            {
            "sort": "frontmost_application_if",
            "bundle_identifiers": ("^org.mozilla.firefox$")
            }
          )
        },
        {
          "sort": "primary",
          "from": {
            "key_code": "fn",
            "modifiers": {
              "non-obligatory": (
                "any"
              )
            }
          },
          "to": (
            {
              "set_variable": {
                "identify": "key pressed",
                "worth": 1
              }
            },
            {
              "key_code": "fn"
            }
          ),
          "description": "to_delayed_action is ready to 400ms in karabiner.json",
          "to_delayed_action": {
            "to_if_invoked": (
              {
                "set_variable": {
                  "identify": "key pressed",
                  "worth": 0
                }
              }
            ),
            "to_if_canceled": (
              {
                "set_variable": {
                  "identify": "key pressed",
                  "worth": 0
                }
              }
            )
          }
        }
      )
    }
  )
}

Related Articles

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici

Latest Articles