AFAIK, вы не можете очистить историю сообщений, но вы можете использовать собственную команду вместо :echom
, например:
command -nargs=1 -bar Echo :let g:messages=get(g:, 'messages', [])+[<q-args>]
или, может быть, лучше,
command -nargs=1 -bar Echo :let g:messages=get(g:, 'messages', [])+[eval(<args>)] | echom <args>
Первый не оценивает свой аргумент и, следовательно, не может быть заменой :echom
, второй есть, но учтите, что хотя при :echom
:echom 1 2
и :echom 1.' '.2
выдает тот же вывод, при :Echo
первый ошибка, заставляющая вас использовать вторую форму.
Обе команды будут помещать сообщения в переменную g:messages
, создавая ее при необходимости. Чтобы очистить историю просто используйте
unlet g:messages