diff --git a/7.1.057 b/7.1.057 new file mode 100644 index 0000000..daa4ae8 --- /dev/null +++ b/7.1.057 @@ -0,0 +1,91 @@ +To: vim-dev@vim.org +Subject: patch 7.1.057 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.1.057 +Problem: Problem with CursorHoldI when using "r" in Visual mode (Max + Dyckhoff) +Solution: Ignore CursorHold(I) when getting a second character for a Normal + mode command. Also abort the "r" command in Visual when a special + key is typed. +Files: src/normal.c + + +*** ../vim-7.1.056/src/normal.c Tue Jul 10 14:02:51 2007 +--- src/normal.c Sun Aug 5 21:57:43 2007 +*************** +*** 889,894 **** +--- 889,899 ---- + + ++no_mapping; + ++allow_keys; /* no mapping for nchar, but allow key codes */ ++ #ifdef FEAT_AUTOCMD ++ /* Don't generate a CursorHold event here, most commands can't handle ++ * it, e.g., nv_replace(), nv_csearch(). */ ++ did_cursorhold = TRUE; ++ #endif + if (ca.cmdchar == 'g') + { + /* +*************** +*** 6662,6667 **** +--- 6668,6680 ---- + else + had_ctrl_v = NUL; + ++ /* Abort if the character is a special key. */ ++ if (IS_SPECIAL(cap->nchar)) ++ { ++ clearopbeep(cap->oap); ++ return; ++ } ++ + #ifdef FEAT_VISUAL + /* Visual mode "r" */ + if (VIsual_active) +*************** +*** 6688,6698 **** + } + #endif + +! /* +! * Check for a special key or not enough characters to replace. +! */ + ptr = ml_get_cursor(); +! if (IS_SPECIAL(cap->nchar) || STRLEN(ptr) < (unsigned)cap->count1 + #ifdef FEAT_MBYTE + || (has_mbyte && mb_charlen(ptr) < cap->count1) + #endif +--- 6701,6709 ---- + } + #endif + +! /* Abort if not enough characters to replace. */ + ptr = ml_get_cursor(); +! if (STRLEN(ptr) < (unsigned)cap->count1 + #ifdef FEAT_MBYTE + || (has_mbyte && mb_charlen(ptr) < cap->count1) + #endif +*** ../vim-7.1.056/src/version.c Tue Aug 7 21:59:26 2007 +--- src/version.c Wed Aug 8 21:39:43 2007 +*************** +*** 668,669 **** +--- 668,671 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 57, + /**/ + +-- +hundred-and-one symptoms of being an internet addict: +95. Only communication in your household is through email. + + /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ +/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ +\\\ download, build and distribute -- http://www.A-A-P.org /// + \\\ help me help AIDS victims -- http://ICCF-Holland.org ///