Issue with left_Control+a complex modification

16 views
Skip to first unread message

qwerety Owlkin

unread,
Dec 2, 2022, 4:25:57 AM12/2/22
to Karabiner
Hello,

I love Karabiner Elements on my m1 macbook pro.
I have been playing around with custom complex modifications!
I am running into a weird issue with a custom rule.
There seems to be some complication with "left_control + a".
What's weird is if I duplicate the rule but use "left_control + d" everything works as expected.
I was wondering if somehow a built in macos keyboard shortcut "Control+A" from https://support.apple.com/en-us/HT201236 was somehow blocking karabiner elements, but I do not see a Control+A keyboard shortcut in System Preferences > Keyboard > Shortcuts

My rules are:
"L_Control + i/j/k/l to arrows",        (works)
"L_Control + u/o to pageup/pagedown",   (works)
"L_CONTROL + a = L_Control + L_option", (issue)
"L_CONTROL + d = L_Control + L_option", (works)
"L_CONTROL + s = L_Control + L_shift",    (works)

a weird quirk is "L_CONTROL + a = L_Control + L_option" doesn't seem to work with key presses of (lower) J, K, L, semicolon

I've confirmed this strange behavior in Karabiner EventViewer
Attached is my eventviewer log,
holding left_control+a,
then pressing in order: h j k l ; '
then releasing left_control+a

Weirder, doing the same thing, but with left_control+d, works as expected.

Would love any help?

Below is the "rules" field of my  ~/config/karabiner.json
{
                        "description": "L_Control + i/j/k/l to arrows",
                        "manipulators": [
                            { "from": { "key_code": "j", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "left_arrow"}],
                                "type": "basic"
                            },
                            { "from": { "key_code": "i", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "up_arrow"}],
                                "type": "basic"
                            },
                            { "from": { "key_code": "k", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "down_arrow"}],
                                "type": "basic"
                            },
                            { "from": { "key_code": "l", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "right_arrow"}],
                                "type": "basic"
                            }
                        ]
                    },
                    {
                        "description": "L_Control + u/o to pageup/pagedown",
                        "manipulators": [
                            { "from": { "key_code": "u", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "page_up"}],
                                "type": "basic"
                            },
                            { "from": { "key_code": "o", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "page_down"}],
                                "type": "basic"
                            }
                        ]
                    },
                    {
                        "description": "L_CONTROL + a = L_Control + L_option",
                        "manipulators": [
                            { "from": { "key_code": "a", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "left_option","modifiers": ["left_control"]}],
                                "type": "basic"
                            }
                        ]
                    },
                    {
                        "description": "L_CONTROL + d = L_Control + L_option",
                        "manipulators": [
                            { "from": { "key_code": "d", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "left_option","modifiers": ["left_control"]}],
                                "type": "basic"
                            }
                        ]
                    },
                    {
                        "description": "L_CONTROL + s = L_Control + L_shift",
                        "manipulators": [
                            { "from": { "key_code": "s", "modifiers": { "mandatory": [ "left_control"], "optional": ["any" ] } },
                                "to": [{"key_code": "left_shift","modifiers": ["left_control"]}],
                                "type": "basic"
                            }
                        ]
                    }
karabiner_eventviewer_log.json
Reply all
Reply to author
Forward
0 new messages