> > Implementation really does not switch any modes, it just instead of
> > using something like a list of mapping tables {builtin_commands,
> > global_mappings, local_mappings} special-cases all built-ins and uses
> > plain_vgetc function in C code unconditionally waiting for next
> > character.
>
> Maybe I missed something in your explanation, but I still doesn't
> understand why first Z mapped from Russian char but not second Z.
> Or special-case handling begins _after_ entering first Z, so first and
> second Z read by Vim using different implementations? Sounds like a bug.
After first Z it uses plain_vgetc to get next character (which is a
special-case because all user mappings use different method). plain_vgetc does
not do any remapping.
> Anyway, if no one bothers fixing this, where I can find list of all such
> special-case key combinations, to manually add mapping for them all in my
> plugin?
`:h normal-index`. Note that you have to remap also m…/`…/'… (ьф…ья → ma…mz,
ьФ…ьЯ → mA…mZ, same for other), @… (accepts A-Z and all other register names in
addition to a-z listed in `:h normal-index`), f…/F…/t…/T… (accepts anything),
r… (accepts anything), do/dp, maybe something else in addition to commands
listed under `:h g`, `:h z` and `:h [`.
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.