При следующих определениях
au CursorMoved * call Speak()
fu! Test()
normal j
echom "after j"
endf
fu! Speak()
echom "CursorMoved"
endf
, введя :call Test()
и затем проверяя сообщения с помощью :mess
, выявляется, что сообщение after j
предшествует сообщению CursorMoved
.Почему?Если событие CursorMoved
не произойдет как раз в момент выполнения normal j
(я не знаю, будет ли событие счастливым, когда normal j
начнется или закончится, но я ожидаю, что это произойдет до следующей команды echom
).