Vim:领导不工作

时间:2012-07-19 11:53:16

标签: vim leader

尝试使用vim-latexsuite的映射时,使用Leader的映射无效:

:nmap
----------------------------------------
n  <Leader>rf   @<Plug>Tex_RefreshFolds
n  <Leader>ls   @<Plug>Tex_ForwardSearch
n  <Leader>lv   @<Plug>Tex_View
n  <Leader>ll   @<Plug>Tex_Compile

此插件的所有其他映射都有效,因此插件正确加载。如果未设置mapleader,则Leader应默认为\(反斜杠)。

在命令模式下键入\ll时,光标会向右移动2个字符,因为只需键入ll即可。所以反斜杠似乎被忽略了。 Vim不会发出哔声或显示任何错误,而ll的时间早于1000毫秒,即timeoutlen

我还尝试了.vimrc/etc/vimrc中的以下设置(虽然我假设只需要在此处设置mapleader):

let mapleader = ","
let maplocalleader = ","

在此之后,Vim的行为方式相同:没有哔声,没有错误,键入,ll后,光标向右移动2个字符。

任何想法如何解决这个问题?

4 个答案:

答案 0 :(得分:4)

尝试清除〜/ .viminfo文件的内容,如果您使用的是会话插件,请清除生成的文件中的会话数据。然后重启Vim。当我尝试不同的设置,映射等时,它有时会帮助我。

答案 1 :(得分:1)

卸载Vim后,删除所有插件和配置文件并重新安装,Leader工作正常。不幸的是,我不知道究竟是什么导致Vim无视领袖。

答案 2 :(得分:0)

如果您的.vimrc

中有这样的映射
nmap <Leader>rf @<Plug>Tex_RefreshFolds

然后nmap(不带参数)的输出应为:

n  \rf   @<Plug>Tex_RefreshFolds

换句话说,&#34;&lt; Leader&gt;&#34;应该扩展到&#34; \&#34;。 由于您不是这种情况,因此您的映射会出现问题。这可能是由于&#34;&lt;&#34;在你的cpoptions中。请尝试set cpoptions?进行检查。

答案 3 :(得分:0)

如果您缩短timeoutlen,则无法快速输入内容。如果你看:help 'ttimeoutlen',你会看到它暗示:

:set timeout timeoutlen=3000 ttimeoutlen=100