缓存Vim中的本地映射:<buffer>与<localleader> </localleader> </buffer>

时间:2011-11-02 18:54:33

标签: vim

有一件事让我感兴趣。如果想要映射特定于某个缓冲区的映射,可以采用任何一种方式 a)用

nnoremap <buffer> d dd

b)或

nnoremap <localleader>d dd

这将有效,因为localleader特定于该缓冲区,也使该映射特定于该缓冲区。

在某种程度上,似乎是两种重叠的方式来做同样的事情。有没有理由使用一种方式而不是另一种方式?出于某种原因可能是一种优先于另一种方式吗?

1 个答案:

答案 0 :(得分:10)

据我所知,maplocalleader在缓冲区之间共享。这意味着您的第二张地图不会特定于缓冲区。

实际上,如果你要定义一个特定于缓冲区的地图(例如地图只涉及特定的文件类型),我认为惯例是同时使用<buffer><localleader>。如果您要定义的地图并非特定于缓冲区,则应使用<leader>