【问题标题】:Inserting text through vim mapping is slow通过vim映射插入文本很慢
【发布时间】:2015-09-16 17:33:11
【问题描述】:

在我的.vimrc 中,我创建了以下映射。基本上我希望 VIM 在按下<leader>c 时插入一些文本。

映射定义如下:

map <leader>c iHELLO WORLD<Esc>;w<CR>

地图的第二部分有效(它正确退出插入模式),但它需要大约一秒钟才能真正从正常模式进入插入模式并插入文本。

我想这可能与我的.vimrc 中的设置有关。你可以看看here

【问题讨论】:

  • :verbose map &lt;leader&gt;c 给你什么?一次映射还是多次映射?

标签: vim


【解决方案1】:

您可能有另一个共享公共前缀 (&lt;leader&gt;c) 的映射,因此 Vim 会在假设您的意思是“只是 &lt;leader&gt;c”之前等待看看您是否要输入任何消除歧义的字符。

您可以通过选择明确的映射、更改其他映射或将 'timeoutlen' 从其默认值 1000 (ms) 减少来避免这种情况。

要找出冲突的映射可能是什么,请尝试:map &lt;leader&gt;c 并检查输出。

【讨论】:

    【解决方案2】:

    您必须有多个&lt;leader&gt;c-mappings。 Vim 必须等待 timeoutlen 毫秒来消除歧义,看看你是否要输入 &lt;leader&gt;cx(其中 x 是任何东西`)。

    您可以使用verbose map &lt;leader&gt;c 查看您的相关映射。然后要么删除其他的,要么将你的扩展为类似&lt;leader&gt;chh 作为“Hello”助记符)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-12
      • 2015-10-03
      • 1970-01-01
      • 1970-01-01
      • 2011-10-30
      • 1970-01-01
      • 2012-01-12
      • 1970-01-01
      相关资源
      最近更新 更多