Keyboard 如何仅为特定键盘布局(karabiner)启用规则?

Keyboard 如何仅为特定键盘布局(karabiner)启用规则?,keyboard,key-bindings,karabiner,Keyboard,Key Bindings,Karabiner,在Karabiner上,我在其复杂的修改设置下启用多个规则,例如Emacs键绑定 我想知道是否可以仅对特定的键盘布局(如美国)使用这些启用规则,并在切换到其他键盘布局时自动禁用这些规则。无法将现有导入的规则转换为特定于设备的规则。但是,如果您制定或修改这些规则,您可以 如何制定自己的规则的要点是在内部创建json文件 ~/.config/karabiner/assets/complex_modifications/ 您可以随意命名json文件。如果您愿意,您甚至可以从另一个地方对其进行符号链

在Karabiner上,我在其复杂的修改设置下启用多个规则,例如
Emacs键绑定


我想知道是否可以仅对特定的键盘布局(如美国)使用这些启用规则,并在切换到其他键盘布局时自动禁用这些规则。

无法将现有导入的规则转换为特定于设备的规则。但是,如果您制定或修改这些规则,您可以

如何制定自己的规则的要点是在内部创建json文件

~/.config/karabiner/assets/complex_modifications/
您可以随意命名json文件。如果您愿意,您甚至可以从另一个地方对其进行符号链接

因此,如果您有一条规则想要使其特定于设备,请将其复制粘贴到json文件中,并将其从
类型:“basic”
修改为
类型:“device\u if”
,然后填写您的设备id等。您可以从设备选项卡下的Karabiner EventViewer应用程序中获得这些信息。

请看一下和


我在
~/.config/karbiner/karbiner.json

{
    "manipulators": [
        {
            "conditions": [
                {
                    "input_sources": [
                        {
                            "language": "en"
                        }
                    ],
                    "type": "input_source_if"
                }
            ],

            "from": {
                "key_code": "open_bracket"
            },
            "to": [
                {
                    "key_code": "open_bracket",
                    "modifiers": [
                        "left_shift"
                    ]
                }
            ],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "input_sources": [
                        {
                            "language": "en"
                        }
                    ],
                    "type": "input_source_if"
                }
            ],
            "from": {
                "key_code": "close_bracket",
                "modifiers": {
                    "mandatory": [
                        "left_shift"
                    ]
                }
            },
            "to": [
                {
                    "key_code": "close_bracket"
                }
            ],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "input_sources": [
                        {
                            "language": "en"
                        }
                    ],
                    "type": "input_source_if"
                }
            ],
            "from": {
                "key_code": "close_bracket"
            },
            "to": [
                {
                    "key_code": "close_bracket",
                    "modifiers": [
                        "left_shift"
                    ]
                }
            ],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "input_sources": [
                        {
                            "language": "en"
                        }
                    ],
                    "type": "input_source_if"
                }
            ],
            "from": {
                "key_code": "open_bracket",
                "modifiers": {
                    "mandatory": [
                        "left_shift"
                    ]
                }
            },
            "to": [
                {
                    "key_code": "open_bracket"
                }
            ],
            "type": "basic"
        }
    ]
    }
},

我无法让它工作:(你提供的链接不工作。我应该在Karabiner的github页面上作为问题打开它吗?