[英]Vim 's' Key Broken
命令模式下的s
通常会删除光标下的字符并进入插入模式。 但是现在输入s
打开这样的提示(在左下角)
>
而不是通常的替换模式。
我检查的内容:
.vimrc 中没有键被重新映射
:map s
显示:
x s <Plug>Sneak_s n s <Plug>Sneak_s
那是重新映射 xs 还是 s?
编辑:我正在使用 vundle 插件管理器。 从 .vimrc 中删除这一行可以解决问题。
call vundle#end()
编辑 2:正如@yolenoyer 所指出的,需要 vundle#end(),或者禁用所有插件。 使用该建议,将其范围缩小到 vim-sneak 插件,该插件甚至在其文档中说:
我没有看到比映射任何其他方式改变的行为s
正常命令。 你真的确定没有映射吗? 请通过运行以下命令再次检查您的映射:
:map s
不要删除.vimrc
中的call vundle#end()
行:它会禁用您安装的所有插件。
相反,尝试注释此行之前列出的每个插件(以Plugin
开头的行),每次再次启动 vim 以检查行为是否发生变化。
当您在正常模式下键入s
时,您不会进入任何“替换”模式,而是在删除光标前的一个(或多个)字符后进入插入模式。
您使用“替换”一词(在您的标题和问题内容中)造成的混淆是有问题的,因为它使人们认为您在谈论:s
命令(它实际上可以称为......替换命令!)
Vim 的搜索和替换(替换)不需要在.vimrc
添加任何模块或映射。 您可以简单地使用:%s/foo/bar/g
将foo
任何实例替换为bar
。 欲了解更多信息,请点击此处。
请注意,不带:
普通命令)的替换命令s
可能以数字x
为前缀,删除x
字符并切换到插入模式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.