On Saturday, February 1, 2014 9:11:51 AM UTC-5, Christian Brabandt wrote:
> 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.
Hey Christian, thanks for the patch, I've never compiled Vim but I would
imagine it a fairly straightfoward fix.
--
--
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.