This is mainly subject to speed-type-buffer and speed-type-region
I would like to explore the possibility to have the speed-type-mode as minor mode.
Defining the speed-type-mode only as minor mode while typing would make it possible to use cursor-motion from the major mode the speed-type-typing-session was started from.
Maybe multiple speed-type-modes are needed:
- One for the typing session (minor mode)
- One for the end-menu (major mode)
- Side-comment: The end-menu could also be realized using transient as an alternative.
Maybe it's possible to take over all the key-bindings from the major-mode when starting a speed-type-typing-session. This way the speed-type-major-mode would be curated with the functionality of the major-mode it was started from. This seems like the most lightweight solution. It would need to be removed after closing/completing the session. This would make it possible to also support major modes which require a file ref.
Maybe https://github.com/polymode has useful code for this problem