I made this! It's not perfect but it's most of the way there in terms of Vim motions and operators, and works in any text field. It uses the Accessibility API when available, and then falls back to raw keypresses (like alt + right arrow to simulate `w`, etc).
In the fallback mode, not all motions are available, because we can't read cursor position or text field value without accessibility support.
In the fallback mode, not all motions are available, because we can't read cursor position or text field value without accessibility support.
https://github.com/dbalatero/VimMode.spoon