diff options
Diffstat (limited to 'source/ap/vim/patches/7.3.196')
-rw-r--r-- | source/ap/vim/patches/7.3.196 | 224 |
1 files changed, 0 insertions, 224 deletions
diff --git a/source/ap/vim/patches/7.3.196 b/source/ap/vim/patches/7.3.196 deleted file mode 100644 index 0d6be8c9f..000000000 --- a/source/ap/vim/patches/7.3.196 +++ /dev/null @@ -1,224 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 7.3.196 -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.3.196 -Problem: Can't intercept a character that is going to be inserted. -Solution: Add the InsertCharPre autocommand event. (Jakson A. Aquino) -Files: runtime/doc/autocmd.txt, runtime/doc/eval.txt, - runtime/doc/map.txt, src/edit.c, src/eval.c, src/fileio.c, - src/vim.h - - -*** ../mercurial/vim73/runtime/doc/autocmd.txt 2011-04-28 19:01:26.000000000 +0200 ---- runtime/doc/autocmd.txt 2011-05-19 17:12:17.000000000 +0200 -*************** -*** 299,304 **** ---- 299,306 ---- - |InsertEnter| starting Insert mode - |InsertChange| when typing <Insert> while in Insert or Replace mode - |InsertLeave| when leaving Insert mode -+ |InsertCharPre| when a character was typed in Insert mode, before -+ inserting it - - |ColorScheme| after loading a color scheme - -*************** -*** 657,662 **** ---- 659,675 ---- - indicates the new mode. - Be careful not to move the cursor or do - anything else that the user does not expect. -+ *InsertCharPre* -+ InsertCharPre When a character is typed in Insert mode, -+ before inserting the char. -+ The |v:char| variable indicates the char typed -+ and can be changed during the event to insert -+ a different character. When |v:char| is set -+ to more than one character this text is -+ inserted literally. -+ It is not allowed to change the text |textlock|. -+ The event is not triggered when 'paste' is -+ set. - *InsertEnter* - InsertEnter Just before starting Insert mode. Also for - Replace mode and Virtual Replace mode. The -*** ../mercurial/vim73/runtime/doc/eval.txt 2011-05-19 12:22:41.000000000 +0200 ---- runtime/doc/eval.txt 2011-05-19 16:55:58.000000000 +0200 -*************** -*** 1293,1298 **** ---- 1293,1299 ---- - *v:char* *char-variable* - v:char Argument for evaluating 'formatexpr' and used for the typed - character when using <expr> in an abbreviation |:map-<expr>|. -+ It is also used by the |InsertPreChar| event. - - *v:charconvert_from* *charconvert_from-variable* - v:charconvert_from -*** ../mercurial/vim73/runtime/doc/map.txt 2011-05-10 17:17:38.000000000 +0200 ---- runtime/doc/map.txt 2011-05-19 16:40:34.000000000 +0200 -*************** -*** 226,232 **** - - For abbreviations |v:char| is set to the character that was typed to trigger - the abbreviation. You can use this to decide how to expand the {lhs}. You -! can't change v:char and you should not insert it. - - Be very careful about side effects! The expression is evaluated while - obtaining characters, you may very well make the command dysfunctional. ---- 226,232 ---- - - For abbreviations |v:char| is set to the character that was typed to trigger - the abbreviation. You can use this to decide how to expand the {lhs}. You -! you should not either insert or change the v:char. - - Be very careful about side effects! The expression is evaluated while - obtaining characters, you may very well make the command dysfunctional. -*** ../mercurial/vim73/src/edit.c 2011-05-10 14:22:10.000000000 +0200 ---- src/edit.c 2011-05-19 17:20:53.000000000 +0200 -*************** -*** 1381,1390 **** - goto do_intr; - #endif - - /* - * Insert a nomal character. - */ -! normalchar: - #ifdef FEAT_SMARTINDENT - /* Try to perform smart-indenting. */ - ins_try_si(c); ---- 1381,1425 ---- - goto do_intr; - #endif - -+ normalchar: - /* - * Insert a nomal character. - */ -! #ifdef FEAT_AUTOCMD -! if (!p_paste) -! { -! /* Trigger the InsertCharPre event. Lock the text to avoid -! * weird things from happening. */ -! set_vim_var_char(c); -! ++textlock; -! if (apply_autocmds(EVENT_INSERTCHARPRE, NULL, NULL, -! FALSE, curbuf)) -! { -! /* Get the new value of v:char. If it is more than one -! * character insert it literally. */ -! char_u *s = get_vim_var_str(VV_CHAR); -! if (MB_CHARLEN(s) > 1) -! { -! if (stop_arrow() != FAIL) -! { -! ins_str(s); -! AppendToRedobuffLit(s, -1); -! } -! c = NUL; -! } -! else -! c = PTR2CHAR(s); -! } -! -! set_vim_var_string(VV_CHAR, NULL, -1); -! --textlock; -! -! /* If the new value is an empty string then don't insert a -! * char. */ -! if (c == NUL) -! break; -! } -! #endif - #ifdef FEAT_SMARTINDENT - /* Try to perform smart-indenting. */ - ins_try_si(c); -*************** -*** 3491,3501 **** - return; - } - p += len; -! #ifdef FEAT_MBYTE -! c = mb_ptr2char(p); -! #else -! c = *p; -! #endif - ins_compl_addleader(c); - } - ---- 3526,3532 ---- - return; - } - p += len; -! c = PTR2CHAR(p); - ins_compl_addleader(c); - } - -*** ../mercurial/vim73/src/eval.c 2011-05-19 14:59:07.000000000 +0200 ---- src/eval.c 2011-05-19 16:40:39.000000000 +0200 -*************** -*** 352,358 **** - {VV_NAME("swapname", VAR_STRING), VV_RO}, - {VV_NAME("swapchoice", VAR_STRING), 0}, - {VV_NAME("swapcommand", VAR_STRING), VV_RO}, -! {VV_NAME("char", VAR_STRING), VV_RO}, - {VV_NAME("mouse_win", VAR_NUMBER), 0}, - {VV_NAME("mouse_lnum", VAR_NUMBER), 0}, - {VV_NAME("mouse_col", VAR_NUMBER), 0}, ---- 352,358 ---- - {VV_NAME("swapname", VAR_STRING), VV_RO}, - {VV_NAME("swapchoice", VAR_STRING), 0}, - {VV_NAME("swapcommand", VAR_STRING), VV_RO}, -! {VV_NAME("char", VAR_STRING), 0}, - {VV_NAME("mouse_win", VAR_NUMBER), 0}, - {VV_NAME("mouse_lnum", VAR_NUMBER), 0}, - {VV_NAME("mouse_col", VAR_NUMBER), 0}, -*** ../mercurial/vim73/src/fileio.c 2011-05-10 16:41:13.000000000 +0200 ---- src/fileio.c 2011-05-19 16:40:39.000000000 +0200 -*************** -*** 7662,7667 **** ---- 7662,7668 ---- - {"InsertChange", EVENT_INSERTCHANGE}, - {"InsertEnter", EVENT_INSERTENTER}, - {"InsertLeave", EVENT_INSERTLEAVE}, -+ {"InsertCharPre", EVENT_INSERTCHARPRE}, - {"MenuPopup", EVENT_MENUPOPUP}, - {"QuickFixCmdPost", EVENT_QUICKFIXCMDPOST}, - {"QuickFixCmdPre", EVENT_QUICKFIXCMDPRE}, -*** ../mercurial/vim73/src/vim.h 2011-05-10 16:41:13.000000000 +0200 ---- src/vim.h 2011-05-19 16:40:39.000000000 +0200 -*************** -*** 1274,1279 **** ---- 1274,1280 ---- - EVENT_WINENTER, /* after entering a window */ - EVENT_WINLEAVE, /* before leaving a window */ - EVENT_ENCODINGCHANGED, /* after changing the 'encoding' option */ -+ EVENT_INSERTCHARPRE, /* before inserting a char */ - EVENT_CURSORHOLD, /* cursor in same position for a while */ - EVENT_CURSORHOLDI, /* idem, in Insert mode */ - EVENT_FUNCUNDEFINED, /* if calling a function which doesn't exist */ -*** ../vim-7.3.195/src/version.c 2011-05-19 16:35:05.000000000 +0200 ---- src/version.c 2011-05-19 17:15:41.000000000 +0200 -*************** -*** 711,712 **** ---- 711,714 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 196, - /**/ - --- -I AM THANKFUL... -...for the mess to clean after a party because it means I have -been surrounded by friends. - - /// 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 /// |