Run
Run

Reputation: 896

Key mapping has two definitions in vim?

When I type :imap <BS> in my vim editor, it outputs two lines:

i  <BS>        *@<C-R>=AutoPairsDelete()<CR>
i  <BS>        * neocomplete#smart_close_popup()."\<C-H>"

The first line starts with '*@' and the second one starts with '*', can one key mapping has over than one definition in vim?

PS: maybe you know, I use spf-vim-13 configurations.

Upvotes: 2

Views: 42

Answers (1)

statox
statox

Reputation: 2886

From :h map-listing:

Just before the {rhs} a special character can appear:
  *   indicates that it is not remappable
  &   indicates that only script-local mappings are remappable
  @   indicates a buffer-local mapping

So what you are seeing this that in general <BS> is mapped to neocomplete#smart_close_popup()."\<C-H>" but in your current buffer only <BS> is mapped to <C-R>=AutoPairsDelete()<CR>

You probably have a plugin or a ftplugin which remaps <BS> for your current buffer depending on its filetype.

Upvotes: 2

Related Questions