我希望有一个左右手领导键。如果我希望默认的 \
和 ,
都成为我的领导键,我认为只需在我的 .vimrc
中添加 nnoremap , \
或 nnoremap , <leader>
就可以了。但显然不是这样。我该如何做?
我希望有一个左右手领导键。如果我希望默认的 \
和 ,
都成为我的领导键,我认为只需在我的 .vimrc
中添加 nnoremap , \
或 nnoremap , <leader>
就可以了。但显然不是这样。我该如何做?
我的<leader>
绑定到,
,这对我有效:
:nmap \ ,
现在可以使用\
或,
作为我的所有leader mappings,我认为让您感到困惑的可能是nnoremap
。
您可以将一个 leader key 映射到另一个 leader key,就像被接受的答案一样,但是如果您首先使用 <leader>
,则应该将绑定设置为 <leader>
本身。这样,如果您更改(或删除)第一个 leader key,则绑定仍将起作用。
map , <leader>
\
作为领导者,因为没有“官方”领导者(即mapleader
变量的有效值)。 (这对于OP来说不是问题,但对其他人可能会有影响。)<leader>
很方便,但是你可以创建像,mm
或\mm
这样的映射而不使用它。只需复制所有的<leader>something
并直接使用'
和\
重新映射它们:
nnoremap <leader>d "_d
将会变成
nnoremap ,d "_d
nnoremap \d "_d
那会是怎样的工作方式呢?当Vim遇到<leader>
时,它会将其替换为映射键。如果您使用两个(键用于<leader>
),它将如何知道要用哪一个来替换<leader>
?
但是,您可以使用<leader>
和<localleader>
,但这只是两个单独的leader,而不是将两个键映射到其中一个。
所以,不行......你不能。
不过,您可以明确地映射您的快捷方式。