【问题标题】:Unidentifiable Vim Keymap无法识别的 Vim 键盘映射
【发布时间】:2010-03-15 19:17:53
【问题描述】:

我正在尝试摆脱 vim 中令人讨厌的键盘映射,即

\c

映射只为latex文件加载,所以它应该与latex-suite有关。这很烦人,因为它不能键入\cite 而没有这个键盘映射会破坏一切。我可以通过键入“手动”取消映射:

:unmap! \c

但是当我将它放入我的~/.vimrc 文件时这不起作用,因为它说没有这样的键盘映射。 我认为这是因为键盘映射是在.vimrc 之后加载的,虽然我不确定。

我已经尝试在 bash 中使用 locate 来定位我系统上所有开始时在其文件中包含“vim”的文件 文件名,然后grep keyword $filename 以查找对应该相关的关键字的所有引用。

我搜索的关键字是“Traditional”,因为这就是映射的名称(这就是我在 vim 正常模式下键入 :map! 找到的)。它会找到一些包含“Traditional”但没有与\c 对应的条目,文件中除外:

~/.gnome2/gvim-sA9LOO-session.vim

但据我所知,vim在启动时不使用这个文件。

有人知道解决办法吗?

【问题讨论】:

    标签: linux vim keymapping


    【解决方案1】:

    试试:verbose map \c。这将告诉您地图是在哪个文件中定义的。

    【讨论】:

      【解决方案2】:

      兰迪·莫里斯:

      :verbose map \c
      

      谢谢。这正是我可以使用的命令。不幸的是,我无法通过谷歌找到它。

      无论如何使用它都会产生以下结果:

      v  \c            <Plug>VisualTraditionalj
          Last set from ~/.vim/plugin/EnhancedCommentify.vim
      n  \c            <Plug>Traditionalj
          Last set from ~/.vim/plugin/EnhancedCommentify.vim  
      

      这也是我通过很长的locate和grep $keyword方法找到的一些条目。

      但是当我在文件 (EnhancedCommentify.vim) 中搜索这些映射时,即搜索“Traditionalj”或“\c”时,我没有得到任何结果。我也无法识别与文件中的映射相对应的任何其他内容。

      【讨论】:

      • \ 是默认的 mapleader,所以你可能想用 grep 代替 c。
      • 谢谢兰迪,成功了。似乎有一些更复杂的映射需要不同的处理,所以我的搜索失败了。我只需要注释掉引用这些映射的各个部分。尽管我在在这里发布问题之前努力想出解决方案,但我发现我仍然需要学习很多关于 vim 的知识。
      猜你喜欢
      • 2015-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多