Hi Bram, Christian and Vimmers,

I received a bug report from Taro Muraoka.
This bug occurd in 7.4.085 or later.

--------
How to reproduce.

1. Open new buffer and input below and cursor on the '2'.

123
4567

2. Input <C-v>j$Aab<Esc>

--------
Actual behavior
- "23" in the second line is strange obviously.

123ab
45623ab7

--------
Expected behavior
- I don't know :-) 
  But I think that may be to bypass the process that was added in 7.4.085 when
  used '$' in visual mode.

I wrote a patch.
Please check.

Best regards,
Hirohito Higashi

-- 
-- 
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 vim_dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
diff -r 58bcf8fa172f src/ops.c
--- a/src/ops.c	Sun Nov 17 20:32:54 2013 +0100
+++ b/src/ops.c	Tue Nov 19 02:45:50 2013 +0900
@@ -2556,9 +2556,12 @@
     char_u		*firstline, *ins_text;
     struct block_def	bd;
     int			i;
+    int			doller_used;
 
     /* edit() changes this - record it for OP_APPEND */
     bd.is_MAX = (curwin->w_curswant == MAXCOL);
+    /* used '$' to select the Visual mode */
+    doller_used = (curwin->w_curswant == MAXCOL);
 
     /* vis block is still marked. Get rid of it now. */
     curwin->w_cursor.lnum = oap->start.lnum;
@@ -2637,7 +2640,7 @@
     if (curwin->w_cursor.lnum != oap->start.lnum || got_int)
 	return;
 
-    if (oap->block_mode)
+    if (oap->block_mode && !doller_used)
     {
 	struct block_def	bd2;
 

Raspunde prin e-mail lui