Problem: getchar_spec may fail when screen:expect_unchanged() doesn't
wait long enough.
Solution: Add poke_eventloop() before screen:expect_unchanged().
Problem: Cannot control cursor positioning of getchar().
Solution: Add "cursor" flag to {opts}, with possible values "hide",
"keep" and "msg".
related: vim/vim#10603closes: vim/vim#16569edf0f7db28