如何仅在命令行栏中使用 vimscript 中的睡眠?
How use sleep in vimscript just for command-line bar?
我正在尝试用 vimscript
为 vim 编写一个插件,我想显示一些日志
具体时间。喜欢:
echo 'some log'
sleep 2
redraw!
当我使用 sleep
和 redraw
时,所有当前 window 都冻结了一段时间,但我只想为记录睡眠,而不是所有 vim window!
我该怎么做?
sleep
会一直阻塞。使用 VIM 版本 8,您可以改用 timer
。这是一个精简的示例,不应阻止 VIM:
echo 'some log'
let timer = timer_start(2000, 'LogTrigger', {})
func! LogTrigger(timer)
silent! redraw!
endfunc
我正在尝试用 vimscript
为 vim 编写一个插件,我想显示一些日志
具体时间。喜欢:
echo 'some log'
sleep 2
redraw!
当我使用 sleep
和 redraw
时,所有当前 window 都冻结了一段时间,但我只想为记录睡眠,而不是所有 vim window!
我该怎么做?
sleep
会一直阻塞。使用 VIM 版本 8,您可以改用 timer
。这是一个精简的示例,不应阻止 VIM:
echo 'some log'
let timer = timer_start(2000, 'LogTrigger', {})
func! LogTrigger(timer)
silent! redraw!
endfunc