Dead key input treated as insertion in normal mode
In case of using a keyboard layout with dead keys, e.g. the russian mnemonic keyboard, input in normal mode might be treated like input in insert mode.
On the mnemonic Russian keyboard, pressing the dead key j twice (which corresponds to "йй") results in "йй" being inserted. It would be expected for the cursor to move down twice instead.
One of the two things could be done:
- Research if it's possible to handle dead keys as normal keypresses (dubitable)
- Remove the limitation of input length for normal mode as described here (Supposedly that can interfere with Japanese IME and spellcheck, I'm not yet sure how to reproduce a possible bug.)
Looks like it might be possible to detect those dead keys after all: https://stackoverflow.com/a/51413620/9597790
Trying the mnemonic russian layout in the provided example does indeed print a character code for each distinct keypress.
It might make sense to break those keypresses up into singular keys in normal mode. I'm unsure how viable this is in the scope of codemirror-vim though. Perhaps I'd need to go upstream with this request.
I just created a pull request #246 dealing with this issue. If you want, you can check out if it works in your case. Maybe it will only move down one line, or in the case that nothing happens, one maybe needs to map "й" explicitly to "j" in normal mode.