【问题标题】:How to debug vim mapping overlaps?如何调试vim映射重叠?
【发布时间】:2012-01-22 16:58:52
【问题描述】:

一般如何调试和解决键绑定重叠的问题? 我有这个问题.. 最近我将vim-latex 插件添加到我的vim 目录中。 之后我注意到我的 ctrl-j 绑定与 vim-latex/plugin/imaps.vim 重叠,并且在解决之前浪费了很多时间。

顺便说一句:我认为 imaps.vim 中有一个错误,因为写有“只有在没有映射的情况下才映射”,而我的示例显示相反。

【问题讨论】:

    标签: vim latex mapping


    【解决方案1】:

    您可以通过:map 命令获取细粒度信息:

    仅显示与特定键相关的映射(在本例中为 ctrl-J):

    :map <c-j>
    

    或者,更好的是,显示特定键的映射以及设置映射的脚本:

    :verbose map <c-j>
    

    【讨论】:

    • 尤其是'verbose'很有用。谢谢。
    【解决方案2】:

    这是对其他人答案的补充,而不是答案本身。

    顺便说一句:我认为 imaps.vim 中有一个错误,因为写有“只有在没有映射的情况下才映射”,而我的示例显示相反。

    你误解了这里的“映射”是什么意思。如果您查看imaps.vim 的代码,您会发现如果有到&lt;Plug&gt;IMAP_JumpForward ({rhs}) 的映射,它不会创建映射,如果有&lt;C-j&gt; 映射({ lhs})。因此你应该使用

    nnoremap <SID>I_won’t_ever_type_this <Plug>IMAP_JumpForward
    

    如果您不需要 &lt;C-j&gt; 重新映射以禁用它(当然,如果您想使用此功能,您可以将 &lt;SID&gt;... 部分替换为更有意义的部分)。

    【讨论】:

      【解决方案3】:
      :map
      

      显示您当前地图的列表。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-06-09
        • 1970-01-01
        • 2013-04-13
        • 2014-12-30
        • 2014-06-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多