| To: vim_dev@googlegroups.com |
| Subject: Patch 7.4.387 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.4.387 |
| Problem: "4gro" replaces one character then executes "ooo". (Urtica Dioica) |
| Solution: Write the ESC in the second stuff buffer. |
| Files: src/getchar.c, src/proto/getchar.pro, src/edit.c, |
| src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak, |
| src/testdir/Make_ming.mak, src/testdir/Make_os2.mak, |
| src/testdir/Make_vms.mms, src/testdir/Makefile, |
| src/testdir/test_insertcount.in, src/testdir/test_insertcount.ok |
| |
| |
| |
| |
| |
| *** 678,683 **** |
| --- 678,694 ---- |
| add_buff(&readbuf1, s, -1L); |
| } |
| |
| + /* |
| + * Append string "s" to the redo stuff buffer. |
| + * CSI and K_SPECIAL must already have been escaped. |
| + */ |
| + void |
| + stuffRedoReadbuff(s) |
| + char_u *s; |
| + { |
| + add_buff(&readbuf2, s, -1L); |
| + } |
| + |
| void |
| stuffReadbuffLen(s, len) |
| char_u *s; |
| |
| |
| |
| *** 15,20 **** |
| --- 15,21 ---- |
| void AppendCharToRedobuff __ARGS((int c)); |
| void AppendNumberToRedobuff __ARGS((long n)); |
| void stuffReadbuff __ARGS((char_u *s)); |
| + void stuffRedoReadbuff __ARGS((char_u *s)); |
| void stuffReadbuffLen __ARGS((char_u *s, long len)); |
| void stuffReadbuffSpec __ARGS((char_u *s)); |
| void stuffcharReadbuff __ARGS((int c)); |
| |
| |
| |
| *** 8389,8395 **** |
| |
| (void)start_redo_ins(); |
| if (cmdchar == 'r' || cmdchar == 'v') |
| ! stuffReadbuff(ESC_STR); /* no ESC in redo buffer */ |
| ++RedrawingDisabled; |
| disabled_redraw = TRUE; |
| return FALSE; /* repeat the insert */ |
| --- 8389,8395 ---- |
| |
| (void)start_redo_ins(); |
| if (cmdchar == 'r' || cmdchar == 'v') |
| ! stuffRedoReadbuff(ESC_STR); /* no ESC in redo buffer */ |
| ++RedrawingDisabled; |
| disabled_redraw = TRUE; |
| return FALSE; /* repeat the insert */ |
| |
| |
| |
| *** 43,48 **** |
| --- 43,49 ---- |
| test_qf_title.out \ |
| test_changelist.out \ |
| test_eval.out \ |
| + test_insertcount.out \ |
| test_options.out |
| |
| .SUFFIXES: .in .out |
| |
| *** 174,177 **** |
| --- 175,179 ---- |
| test_qf_title.out: test_qf_title.in |
| test_changelist.out: test_changelist.in |
| test_eval.out: test_eval.in |
| + test_insertcount.out: test_insertcount.in |
| test_options.out: test_options.in |
| |
| |
| |
| *** 42,47 **** |
| --- 42,48 ---- |
| test_qf_title.out \ |
| test_changelist.out \ |
| test_eval.out \ |
| + test_insertcount.out \ |
| test_options.out |
| |
| SCRIPTS32 = test50.out test70.out |
| |
| |
| |
| *** 62,67 **** |
| --- 62,68 ---- |
| test_qf_title.out \ |
| test_changelist.out \ |
| test_eval.out \ |
| + test_insertcount.out \ |
| test_options.out |
| |
| SCRIPTS32 = test50.out test70.out |
| |
| |
| |
| *** 40,45 **** |
| --- 40,46 ---- |
| test_autoformat_join.out \ |
| test_changelist.out \ |
| test_eval.out \ |
| + test_insertcount.out \ |
| test_breakindent.out \ |
| test_listlbr.out \ |
| test_listlbr_utf8.out \ |
| |
| |
| |
| *** 103,108 **** |
| --- 103,109 ---- |
| test_qf_title.out \ |
| test_changelist.out \ |
| test_eval.out \ |
| + test_insertcount.out \ |
| test_options.out |
| |
| # Known problems: |
| |
| |
| |
| *** 40,45 **** |
| --- 40,46 ---- |
| test_qf_title.out \ |
| test_changelist.out \ |
| test_eval.out \ |
| + test_insertcount.out \ |
| test_options.out |
| |
| SCRIPTS_GUI = test16.out |
| |
| |
| |
| |
| --- 1,14 ---- |
| + Tests for repeating insert and replace. |
| + |
| + STARTTEST |
| + :so small.vim |
| + :/Second |
| + 4gro |
| + :/^First/,$wq! test.out |
| + :" get here when failed and in Insert mode |
| + :.wq! test.out |
| + ENDTEST |
| + |
| + First line |
| + Second line |
| + Last line |
| |
| |
| |
| |
| --- 1,3 ---- |
| + First line |
| + ooooecond line |
| + Last line |
| |
| |
| |
| *** 736,737 **** |
| --- 736,739 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 387, |
| /**/ |
| |
| -- |
| If your company is not involved in something called "ISO 9000" you probably |
| have no idea what it is. If your company _is_ involved in ISO 9000 then you |
| definitely have no idea what it is. |
| (Scott Adams - The Dilbert principle) |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |