我们可以在Vimrc中定义多个<leader>键吗?

时间:2015-05-26 19:52:02

标签: vim vi

如果我们想在我们的vimrc文件中分配更多的快捷方式,那么我们有哪些选项? 我们可以多个领导者密钥吗?

1 个答案:

答案 0 :(得分:5)

更改mapleader

由于在定义映射时使用mapleader的值,您确实可以在加载插件时更改它。为此,您必须明确:runtime ~/.vimrc中的插件(依靠规范包含警卫以防止以后重新定义):

let mapleader = ','
runtime! plugin/NERD_commenter.vim
runtime! ...
let mapleader = '\'
runime! plugin/mark.vim
...

个人映射配置

但是,由于大多数插件允许通过<Plug>...映射(或类似g:{pluginname}_mapleader变量)自定义映射,因此不需要这种粗略的隔离。您可以在插件来源之前单独配置映射(即在~/.vimrc中):

nmap ,cc <Plug>NERDCommenterComment
xmap ,cc <Plug>NERDCommenterComment
nmap <Leader>m <Plug>MarkSet

合适的密钥

由于大多数密钥被采用,因此没有太多替代方案。我想最常见的前缀是:

  • \
  • 空间

请注意,使用单独的映射配置,一个前缀键就足够了;只需添加其他键即可消除歧义。当然,这意味着所有(现在是两个,甚至三个键)的调用时间会更长。我通常会在<Leader>之后为名称空间保留第一个密钥(例如<Leader>c...用于评论,<Leader>s...用于替换),但这是纯粹的个人偏好。