On Fr, 31 Jan 2014, Liang Li wrote:

> On Friday, January 31, 2014 4:46:58 PM UTC-5, Charles Cooper wrote:

>>> the :sleep command mispositions cursor when there are splits. From
>>> vim -u NONE,
>>> :vsp|vsp|vsp|vsp|wincmd w|wincmd w
>>> :sleep 2 "cursor will shift to the first split

>> Just to clarify, when trying it looked to me like the cursor jumped
>> to the first split during the sleep and then jumped back to its
>> starting position.

> Right I saw the jump. If you have no splits and call sleep, the cursor
> stays where it is. If you have more than one cursor, the cursor will
> jump to the virtual column number from the left edge of the screen.
> So, for example, if you are in virtcol 17 in split 3, it will jump to
> the 17th block of the screen. This can cause, for example, the cursor
> to be positioned dead on the split itself.
> 
> (... the fact that sleep draws the cursor is part of my separate and
> mostly unrelated strategy to get getchar() to not change the cursor
> position. Either a patch to the sleep but or to have getchar simply
> not move the cursor would solve all my woes. :D)

Can you see, if this patch fixes it for you?

diff --git a/src/ex_docmd.c b/src/ex_docmd.c
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -8371,7 +8371,7 @@
     {
        n = W_WINROW(curwin) + curwin->w_wrow - msg_scrolled;
        if (n >= 0)
-           windgoto((int)n, curwin->w_wcol);
+           windgoto((int)n, W_WINCOL(curwin) + curwin->w_wcol);
     }
 
     len = eap->line2;

Best,
Christian
-- 
Reality always seems harsher in the early morning.

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Raspunde prin e-mail lui