vim: <silent>nmap - PullRequest
       13

vim: <silent>nmap

3 голосов
/ 29 августа 2011

В VIM у меня есть этот Nmap

nmap <silent> ,mu : marks ABCDEFGHIJKLMNOPQRSTUVWXYZ<CR>

Если у меня нет высших отметок и попробуйте ,mu я получу

E283: No marks matching "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

почему не отображается вывод ошибок?

1 Ответ

5 голосов
/ 29 августа 2011

Попробуйте

 nnoremap <silent> ,mu :execute "try\nmarks ABCDEFGHIJKLMNOPQRSTUVWXYZ\ncatch /\\V\\^Vim(marks):E283:/\nendtry"<CR>

Кстати, есть ли причина писать :nmap вместо :nnoremap?Вам не следует делать это, если у вас нет причины, если вы не хотите работать в ситуации, когда вы не можете предсказать, что будет результатом добавления другого сопоставления (непосредственно в vimrc или путем установки плагина).

Редактировать (sehe)

Чтобы сделать вещи более читабельными, я бы предложил использовать такой фрагмент в вашем $MYVIMRC:

function! ShowGlobalMarks()
    try
        marks ABCDEFGHIJKLMNOPQRSTUVWXYZ
    catch /E283:/
    endtry
endfu

nnoremap <silent> ,mu :call ShowGlobalMarks()<CR>
...