Loading ...
Sorry, an error occurred while loading the content.
 

Re: map ZZ

Expand Messages
  • ZyX
    ... 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
    Message 1 of 5 , Apr 2, 2013
      > > 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 vim_dev+unsubscribe@....
      For more options, visit https://groups.google.com/groups/opt_out.
    Your message has been successfully submitted and would be delivered to recipients shortly.