是否可以在gVIM中清除消息历史记录?

时间:2011-12-25 11:48:31

标签: vim

在gVIM中,我使用echomsg命令从我的脚本输出调试消息(用于调试目的)和messages命令来查看它们。一切正常,但vim messanging工具显示所有消息 - 来自所有脚本,系统,通知等。是否有一些方法来清除消息列表(手动之前我执行我要调试的操作)所以我可以很容易看到我的脚本中的消息?或者也许我可以使用一些过滤器来查看我的消息?

3 个答案:

答案 0 :(得分:13)

从vim 7.4.1735开始,您可以:messages clear清除历史记录。

答案 1 :(得分:6)

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

答案 2 :(得分:-1)

此命令填写空消息以清除消息历史记录。

command! MessageClear for n in range(200) | echom "" | endfor

Source