Vim'钥匙坏了

时间:2017-01-18 01:58:21

标签: macos vim macvim

命令模式下的

(function ($) { $.fn.rowHighlighter = function (options) { // Establish our default settings options = $.extend({ text: 'Hello, World!', color: null, fontStyle: null, tableClass: null, // tableClass = '.cardNumbers', columnValue = 'cardNo' columnValue: null, rows: null }, options); return $(this).each(function (i,table) { var trs = $(table).find('tr'); $(trs).on('click',function(){ $(trs).removeClass('highlighted-cell'); $(this).addClass('highlighted-cell'); }); }); }; })(jQuery); 通常会删除光标下的字符并进入插入模式。但是现在输入s会打开一个这样的提示(位于左下角)

>

而不是通常的替代模式。

我检查了什么:

  • .vimrc

  • 中没有重新映射任何键
  • s显示:

    x  s             <Plug>Sneak_s
    n  s             <Plug>Sneak_s

重映射x-s还是s?

可能导致此行为的原因是什么?

编辑:我正在使用vundle插件管理器。从.vimrc中删除这一行解决了这个问题。

:map s

不是吗?

编辑2:正如@yolenoyer所说,vundle#end()是必需的,或所有插件都被禁用。使用该建议,将其缩小到vim-sneak插件,甚至可以在其中提供文档:

  

How dare you remap s

2 个答案:

答案 0 :(得分:1)

  • 除了映射以改变s普通命令的行为之外,我没有看到任何其他方法。 你真的确定没有映射吗?请通过运行以下命令再次检查映射:

    :map s
    
  • 请勿删除call vundle#end()中的.vimrc行:它会停用您安装的所有插件。

    相反,尝试评论此行前面列出的每个插件(以Plugin开头的行),每次再次启动vim以检查行为是否发生了变化。

关于模式的一些说明

在正常模式下键入s时,您不会进入任何“替换”模式,而是插入 删除光标前面的一个(或多个)字符后的模式。

您使用“替换”一词(在标题和问题内容中)所造成的混淆是 有问题,因为它让人们认为你在谈论:s命令(这可能是真的 叫...替代命令!)

答案 1 :(得分:0)

Vim的搜索和替换(替换)不需要.vimrc中的任何其他模块或映射。您只需使用:%s/foo/bar/gfoo的任何实例替换为bar即可。有关结帐here的更多信息。

请注意,替换命令s而不是:(正常命令),可以使用数字x作为前缀,删除x个字符并切换到插入模式。