我在.vimrc
中有一个映射与插件中的另一个映射冲突。
nnoremap <leader>p some fancy command here
当我运行VIM时,我收到警告:
E227: mapping already exists for ,p
如何静默覆盖有问题的映射?
修改:
nmap
答案 0 :(得分:5)
这可能会压制警告:
:nnoremap <silent> <leader>p some fancy command here
但我怀疑警告实际上并非来自您的映射。我怀疑冲突映射是用<unique>
定义的,并且在映射之后映射。如果已存在冲突地图,<unique>
将发出E227
。请参阅:h E227
。
挖掘第二个映射源(可能是插件)并查看是否是这种情况。大多数编写良好的插件为您提供了一种使用自己的映射或覆盖它们的方法,通过设置全局标志来完全禁用映射,或者将检测到您已将其他映射映射到特定函数(通过hasmapto
)
您可以通过以下方式查看哪个插件/脚本设置了映射:
:verbose map <leader>p
这应该有助于追踪来源。