According to this blog post, you can create a file called ~/Library/KeyBindings/DefaultKeyBinding.Dict
(you might have to create the KeyBindings folder in your Library folder).
In that file, you need the following content:
{
"@\UF702" = "moveWordBackward:";
"@\UF703" = "moveWordForward:";
}
(see the linked blog post for other Windows features you might want to recreate)
Not all programs that use text fields will use the default keybindings, but this will help with many programs.
If you REALLY use Mission Control a lot there IS a workaround that must be configured individually:
[EDIT:] I wrote an "elaborate" Karabiner Elements script (json); it's linked at the bottom of this post.
The very commendable 3rd party software "Karabiner Elements" (interim version) allows to simulate mouse movements in a "general" way, meaning: no exact positioning to screen coordinates, but just movements to left/right/bottom/top (or combinations of these).
Moreover its "mouse moves" depend on your System-Preferences' mouse velocity settings.
But still, if you invest a little time for finding ideal values for your own mouse, you'll be rewarded by a shortcut "script" that allows to (e.g.:) move between visible apps' windows through arrow-key-directing.
A typical code particle looks like this:
{"mouse_key": {"x": 3072}
which moves a mouse cursor "fast" to right, "y" values moving up/down ("3072" = max. value; depending on your mouse settings one click would "call" this code several times).
Here arrow keys
move cursor, return/enter
take a selected window back to your space.
An over-simplified "script" would look like this:
{"title": "Mission control, navigation",
"rules":[
{"description": "Mission control, navigation",
"manipulators": [
{ "from": { "key_code": "right_arrow"},
"to": [ {"mouse_key": {"x": 3072}} ] },
{ "from": { "key_code": "left_arrow"},
"to": [ {"mouse_key": {"x": -3072}} ] },
{ "from": { "key_code": "down_arrow"},
"to": [ {"mouse_key": {"y": 3072}} ] },
{ "from": { "key_code": "up_arrow"},
"to": [ {"mouse_key": {"y": -3072}} ] },
{ "from": { "key_code": "return_or_enter"},
"to": [ {"pointing_button": "button1"] },
"type": "basic" } ]
} ] }
As mentioned: this code lacks essential ingredients, is even dangerous:
E.g., in every app you use a "return" or "enter" would be replaced by a mouse click!
So firstly: it is NOT restricted to the "Mission Control" view; reason is: there is no actual app to aim at! … MC's "frontmost_application" is the top one in "normal" view, e.g. Finder or Safari.
This MUST be handled by calling "mandatory" modifiers (I recommend/use: Control & Shift
).
Next: above, you have to keep arrow keys pressed while the cursor "rolls" across your screen.
This is improved by making "multiple" (= farther) "jumps" in one key press AND preventing key repetitions.
About 4 to 8 "moves" (= times "arrow" pressed) to get from one end of your screen to the other seems practical to me; the return key will select an app's window and "go back".
I installed a much more elaborated code version on my MacBook-Air – and it works quite nicely.
Maybe, if somebody's interested, I'll post a json file here, once I optimised all facets of it …
Here is my code for a "realistic" mouse jump behaviour:
https://gist.github.com/clemsam/ef03ed5127fd9783267b60065c70fc17
Best Answer
Doh! It turns out there was a custom keyboard shortcut defined in BetterTouchTool. Problem solved.