只有当Vim中存在映射时,我该如何取消映射

作为How do I override gf with vim-rails中接受的答案的后续操作,多次编辑相同的文件会导致以下错误:

Error detected while processing User Auto commands for "Rails.javascript.coffee*":
E31 : No such mapping

我的vimrc中的违规行是

:autocmd User Rails.javascript.coffee* nunmap <buffer> gf

如果映射已经存在,我该如何避免这个错误?

(注意:多次编辑相同的文件可能看起来像是一件奇怪的事情,但我相信它会发生在用ack.vim或ag.vim搜索的副作用)

你可以使用if来检查映射空(maparg(‘gf’,’n’))…,但通常的解决办法是通过前置静音来抑制错误!在nunmap< buffer>之前gf命令.
翻译自:https://stackoverflow.com/questions/16218151/how-do-i-unmap-only-when-a-mapping-exists-in-vim

转载注明原文:只有当Vim中存在映射时,我该如何取消映射