Karabiner
Fast change language without switch popup.
Install Karabiner-Elements. Create Complex Modification rule:
{
"manipulators": [
{
"description": "fn -> previous input source.",
"from": { "key_code": "fn" },
"to": [
{
"key_code": "spacebar",
"modifiers": ["left_control"]
}
],
"type": "basic"
}
]
}
Got ot Parameters tab and set value of to_if_alone_timeout_milliseconds to 0.
Final config file will be:
karabiner.json
{
"profiles": [
{
"complex_modifications": {
"parameters": { "basic.to_if_alone_timeout_milliseconds": 0 },
"rules": [
{
"manipulators": [
{
"description": "fn -> previous input source.",
"from": { "key_code": "fn" },
"to": [
{
"key_code": "spacebar",
"modifiers": ["left_control"]
}
],
"type": "basic"
}
]
}
]
},
"name": "Default profile",
"selected": true,
"virtual_hid_keyboard": {
"country_code": 0,
"keyboard_type_v2": "iso"
}
}
]
}