vim-patch:7.4.407

Problem:    Inserting text for Visual block mode, with cursor movement,
            repeats the wrong text. (Aleksandar Ivanov)
Solution:   Reset the update_Insstart_orig flag. (Christian Brabandt)

https://code.google.com/p/vim/source/detail?r=v7-4-407
This commit is contained in:
André Twupack 2014-09-19 21:12:47 +02:00
parent 6cc6b0ff9e
commit ea492696cf
4 changed files with 17 additions and 3 deletions

View File

@ -5610,12 +5610,18 @@ static void spell_back_to_badword(void)
int stop_arrow(void) int stop_arrow(void)
{ {
if (arrow_used) { if (arrow_used) {
Insstart = curwin->w_cursor; //new insertion starts here
if (Insstart.col > Insstart_orig.col && !ins_need_undo) {
// Don't update the original insert position when moved to the
// right, except when nothing was inserted yet.
update_Insstart_orig = FALSE;
}
Insstart_textlen = (colnr_T)linetabsize(get_cursor_line_ptr());
if (u_save_cursor() == OK) { if (u_save_cursor() == OK) {
arrow_used = FALSE; arrow_used = FALSE;
ins_need_undo = FALSE; ins_need_undo = FALSE;
} }
Insstart = curwin->w_cursor; /* new insertion starts here */
Insstart_textlen = (colnr_T)linetabsize(get_cursor_line_ptr());
ai_col = 0; ai_col = 0;
if (State & VREPLACE_FLAG) { if (State & VREPLACE_FLAG) {
orig_line_count = curbuf->b_ml.ml_line_count; orig_line_count = curbuf->b_ml.ml_line_count;

View File

@ -23,6 +23,9 @@ G$khhhhhkkcmno
/^aaaa/ /^aaaa/
:exe ":norm! l\<C-V>jjjlllI\<Right>\<Right> \<Esc>" :exe ":norm! l\<C-V>jjjlllI\<Right>\<Right> \<Esc>"
:/^aa/,/^$/w >> test.out :/^aa/,/^$/w >> test.out
/xaaa$/
:exe ":norm! \<C-V>jjjI<>\<Left>p\<Esc>"
:/xaaa$/,/^$/w >> test.out
:" Test for Visual block was created with the last <C-v>$ :" Test for Visual block was created with the last <C-v>$
/^A23$/ /^A23$/
:exe ":norm! l\<C-V>j$Aab\<Esc>" :exe ":norm! l\<C-V>j$Aab\<Esc>"
@ -77,6 +80,11 @@ bbbbbb
cccccc cccccc
dddddd dddddd
xaaa
bbbb
cccc
dddd
A23 A23
4567 4567

Binary file not shown.

View File

@ -188,7 +188,7 @@ static int included_patches[] = {
//410, //410,
//409 NA //409 NA
//408, //408,
//407, 407,
//406, //406,
//405, //405,
//404 NA //404 NA