pqrs-org / Karabiner-Elements

Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra (10.12) or later.
https://pqrs.org/osx/karabiner/
The Unlicense
18.28k stars 830 forks source link

right_option not working properly #3062

Open szakoba opened 2 years ago

szakoba commented 2 years ago

Hi there,

This is my first GitHub post, so I don't know how the community works here, but maybe you will be able to help me.

I recently purchased a Keychron K4 and wanted to program some simple modifications to my liking. Everything works fine but for one thing which happens to be the most important for me. I am a Polish language speaker and we have a lot of diacritic letters. I always had both [option] keys on my keyboard, left and right. Right option is not on the keyboard, so I removed the [right_control] cap, because I don't really need it on Mac, replaced it with the [fn] cap and put the [right_option] cap in place of [fn].

So on my keyboard initially the keys on the right side of spacebar looked like this: [command] [fn] [control] And I replaced the keycaps to this order: [command] [option] [fn]

My modifications in Karabiner Elements looks like this: From key ---> To key [fn] ---> [right_option] [right_control] ---> [fn]

And finally here is my issue: the [right_option] key doesn't work properly. It doesn't work with any keyboard shortcuts and produces only some of the diacritic letters: (ą) (ę) (ń) with uppercase, but I'm unable to do (ć) (ł) (ó) (ś) (ż) (ź).

When I check in Karabiner EventViewer it all looks alright, and when I press the new [right_option] it shows as [right_option]. When compared to the Apple Magic Keyboard (which works properly), it produces the exact same events in the Viewer program.

I've found a workaround: instead of modifying [fn] ---> [right_option] I can do [fn] ---> [sticky right_option], but it doesn't satisfy me because it is really tiresome and unnatural in practice.

I would be grateful if anyone would provide me with the solution to my issue. All the best,

Szakoba

macOS version: macOS 12.4 Karabiner version: Karabiner-Elements 14.4.0 Mac hardware: iMac (Retina 4K, 21.5-inch, 2019) Keyboard hardware: Keychron K4 Wireless Mechanical Keyboard (Version 2)

Bashwy commented 2 years ago

could you make a paste bin of your code so I can see it?

szakoba commented 2 years ago

Hey, I don't know what code you are referring to (I'm a computer dummy), so I paste here the only code I could find associated with Karabiner, which is in ~/.config/karabiner/karabiner.json Is it the one? Thanks

{
"global": {
    "check_for_updates_on_startup": true,
    "show_in_menu_bar": true,
    "show_profile_name_in_menu_bar": false
},
"profiles": [
    {
        "complex_modifications": {
            "parameters": {
                "basic.simultaneous_threshold_milliseconds": 50,
                "basic.to_delayed_action_delay_milliseconds": 500,
                "basic.to_if_alone_timeout_milliseconds": 1000,
                "basic.to_if_held_down_threshold_milliseconds": 500,
                "mouse_motion_to_scroll.speed": 100
            },
            "rules": []
        },
        "devices": [
            {
                "disable_built_in_keyboard_if_exists": false,
                "fn_function_keys": [],
                "identifiers": {
                    "is_keyboard": true,
                    "is_pointing_device": false,
                    "product_id": 591,
                    "vendor_id": 1452
                },
                "ignore": false,
                "manipulate_caps_lock_led": true,
                "simple_modifications": [
                    {
                        "from": {
                            "apple_vendor_top_case_key_code": "keyboard_fn"
                        },
                        "to": [
                            {
                                "key_code": "right_option"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "keypad_1"
                        },
                        "to": [
                            {
                                "key_code": "keypad_7"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "keypad_2"
                        },
                        "to": [
                            {
                                "key_code": "keypad_8"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "keypad_3"
                        },
                        "to": [
                            {
                                "key_code": "keypad_9"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "keypad_7"
                        },
                        "to": [
                            {
                                "key_code": "keypad_1"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "keypad_8"
                        },
                        "to": [
                            {
                                "key_code": "keypad_2"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "keypad_9"
                        },
                        "to": [
                            {
                                "key_code": "keypad_3"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "keypad_num_lock"
                        },
                        "to": [
                            {
                                "consumer_key_code": "eject"
                            }
                        ]
                    },
                    {
                        "from": {
                            "key_code": "right_control"
                        },
                        "to": [
                            {
                                "apple_vendor_top_case_key_code": "keyboard_fn"
                            }
                        ]
                    }
                ]
            }
        ],
        "fn_function_keys": [
            {
                "from": {
                    "key_code": "f1"
                },
                "to": [
                    {
                        "consumer_key_code": "display_brightness_decrement"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f2"
                },
                "to": [
                    {
                        "consumer_key_code": "display_brightness_increment"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f3"
                },
                "to": [
                    {
                        "apple_vendor_keyboard_key_code": "mission_control"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f4"
                },
                "to": [
                    {
                        "apple_vendor_keyboard_key_code": "spotlight"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f5"
                },
                "to": [
                    {
                        "consumer_key_code": "dictation"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f6"
                },
                "to": [
                    {
                        "key_code": "f6"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f7"
                },
                "to": [
                    {
                        "consumer_key_code": "rewind"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f8"
                },
                "to": [
                    {
                        "consumer_key_code": "play_or_pause"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f9"
                },
                "to": [
                    {
                        "consumer_key_code": "fast_forward"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f10"
                },
                "to": [
                    {
                        "consumer_key_code": "mute"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f11"
                },
                "to": [
                    {
                        "consumer_key_code": "volume_decrement"
                    }
                ]
            },
            {
                "from": {
                    "key_code": "f12"
                },
                "to": [
                    {
                        "consumer_key_code": "volume_increment"
                    }
                ]
            }
        ],
        "name": "Default profile",
        "parameters": {
            "delay_milliseconds_before_open_device": 1000
        },
        "selected": true,
        "simple_modifications": [],
        "virtual_hid_keyboard": {
            "country_code": 0,
            "indicate_sticky_modifier_keys_state": true,
            "mouse_key_xy_scale": 100
        }
    }
]
}
rejnowskimikolaj commented 2 years ago

Hey! I have the same issue. Did you guys find anything out?

szakoba commented 2 years ago

Hey, unfortunately not…. Im starting to getting used to using only the left one…

rejnowskimikolaj commented 2 years ago

What a piece of crap

Wasiollo commented 1 year ago

It is also strange that this only happens for the fn mapping to right_option. Mapping, for example, right_command to right_option does not generate such problems.

EDIT: In my case, this is because the keyboard does not send the fn key event to the operating system and handles it internally.

Apologies for updating issue without deep verification.

kagiura commented 5 months ago

Any updates? I've also just resorted to using just the left one, but it's been this way for years and it's kinda getting annoying :,)