Подтвердить что ты не робот

Как отменить выбор только в том случае, если в Vim существует сопоставление

В качестве продолжения принятого ответа в Как переопределить gf с 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

Как я могу избежать этой ошибки путем unmapping, только если отображение уже существует?

(Примечание. Редактирование одного и того же файла несколько раз может показаться странным, но я считаю, что это происходит как побочный эффект поиска с помощью ack.vim или ag.vim)

4b9b3361

Ответ 1

Вы можете проверить соответствие с помощью if ! empty(maparg('gf', 'n')) ..., но обычным решением является просто подавить ошибку, добавив silent! перед командой nunmap <buffer> gf.