diff options
Diffstat (limited to 'data/vim/patches/8.1.0020')
-rw-r--r-- | data/vim/patches/8.1.0020 | 519 |
1 files changed, 0 insertions, 519 deletions
diff --git a/data/vim/patches/8.1.0020 b/data/vim/patches/8.1.0020 deleted file mode 100644 index 3685bee38..000000000 --- a/data/vim/patches/8.1.0020 +++ /dev/null @@ -1,519 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 8.1.0020 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 8.1.0020 -Problem: Cannot tell whether a register is being used for executing or - recording. -Solution: Add reg_executing() and reg_recording(). (Hirohito Higashi, - closes #2745) Rename the global variables for consistency. Store - the register name in reg_executing. -Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c, - src/testdir/test_functions.vim, src/getchar.c, src/normal.c, - src/ops.c, src/globals.h, src/edit.c, src/fileio.c, src/message.c, - src/screen.c - - -*** ../vim-8.1.0019/runtime/doc/eval.txt 2018-05-17 15:06:48.000000000 +0200 ---- runtime/doc/eval.txt 2018-05-22 20:25:41.869831935 +0200 -*************** -*** 2302,2307 **** ---- 2302,2309 ---- - List items from {expr} to {max} - readfile({fname} [, {binary} [, {max}]]) - List get list of lines from file {fname} -+ reg_executing() Number get the executing register name -+ reg_recording() String get the recording register name - reltime([{start} [, {end}]]) List get time value - reltimefloat({time}) Float turn the time value into a Float - reltimestr({time}) String turn time value into a String -*************** -*** 6558,6563 **** ---- 6562,6576 ---- - the result is an empty list. - Also see |writefile()|. - -+ reg_executing() *reg_executing()* -+ Returns the single letter name of the register being executed. -+ Returns an empty string when no register is being executed. -+ See |@|. -+ -+ reg_recording() *reg_recording()* -+ Returns the single letter name of the register being recorded. -+ Returns an empty string string when not recording. See |q|. -+ - reltime([{start} [, {end}]]) *reltime()* - Return an item that represents a time value. The format of - the item depends on the system. It can be passed to -*** ../vim-8.1.0019/runtime/doc/usr_41.txt 2018-05-17 13:42:03.000000000 +0200 ---- runtime/doc/usr_41.txt 2018-05-22 20:26:30.025880034 +0200 -*************** -*** 1018,1023 **** ---- 1018,1025 ---- - getreg() get contents of a register - getregtype() get type of a register - setreg() set contents and type of a register -+ reg_executing() return the name of the register being executed -+ reg_recording() return the name of the register being recorded - - shiftwidth() effective value of 'shiftwidth' - -*** ../vim-8.1.0019/src/evalfunc.c 2018-05-21 13:28:40.320041589 +0200 ---- src/evalfunc.c 2018-05-22 20:32:33.566027870 +0200 -*************** -*** 306,311 **** ---- 306,313 ---- - #endif - static void f_range(typval_T *argvars, typval_T *rettv); - static void f_readfile(typval_T *argvars, typval_T *rettv); -+ static void f_reg_executing(typval_T *argvars, typval_T *rettv); -+ static void f_reg_recording(typval_T *argvars, typval_T *rettv); - static void f_reltime(typval_T *argvars, typval_T *rettv); - #ifdef FEAT_FLOAT - static void f_reltimefloat(typval_T *argvars, typval_T *rettv); -*************** -*** 754,759 **** ---- 756,763 ---- - #endif - {"range", 1, 3, f_range}, - {"readfile", 1, 3, f_readfile}, -+ {"reg_executing", 0, 0, f_reg_executing}, -+ {"reg_recording", 0, 0, f_reg_recording}, - {"reltime", 0, 2, f_reltime}, - #ifdef FEAT_FLOAT - {"reltimefloat", 1, 1, f_reltimefloat}, -*************** -*** 8697,8702 **** ---- 8701,8734 ---- - fclose(fd); - } - -+ static void -+ return_register(int regname, typval_T *rettv) -+ { -+ char_u buf[2] = {0, 0}; -+ -+ buf[0] = (char_u)regname; -+ rettv->v_type = VAR_STRING; -+ rettv->vval.v_string = vim_strsave(buf); -+ } -+ -+ /* -+ * "reg_executing()" function -+ */ -+ static void -+ f_reg_executing(typval_T *argvars UNUSED, typval_T *rettv) -+ { -+ return_register(reg_executing, rettv); -+ } -+ -+ /* -+ * "reg_recording()" function -+ */ -+ static void -+ f_reg_recording(typval_T *argvars UNUSED, typval_T *rettv) -+ { -+ return_register(reg_recording, rettv); -+ } -+ - #if defined(FEAT_RELTIME) - static int list2proftime(typval_T *arg, proftime_T *tm); - -*** ../vim-8.1.0019/src/testdir/test_functions.vim 2018-05-20 14:11:07.125342749 +0200 ---- src/testdir/test_functions.vim 2018-05-22 20:27:42.625937524 +0200 -*************** -*** 923,925 **** ---- 923,950 ---- - let chars = join(map(range(1, 0x20) + [0xa0], {n -> nr2char(n)}), '') - call assert_equal("x", trim(chars . "x" . chars)) - endfunc -+ -+ " Test for reg_recording() and reg_executing() -+ func Test_reg_executing_and_recording() -+ let s:reg_stat = '' -+ func s:save_reg_stat() -+ let s:reg_stat = reg_recording() . ':' . reg_executing() -+ return '' -+ endfunc -+ -+ new -+ call s:save_reg_stat() -+ call assert_equal(':', s:reg_stat) -+ call feedkeys("qa\"=s:save_reg_stat()\<CR>pq", 'xt') -+ call assert_equal('a:', s:reg_stat) -+ call feedkeys("@a", 'xt') -+ call assert_equal(':a', s:reg_stat) -+ call feedkeys("qb@aq", 'xt') -+ call assert_equal('b:a', s:reg_stat) -+ call feedkeys("q\"\"=s:save_reg_stat()\<CR>pq", 'xt') -+ call assert_equal('":', s:reg_stat) -+ -+ bwipe! -+ delfunc s:save_reg_stat -+ unlet s:reg_stat -+ endfunc -*** ../vim-8.1.0019/src/getchar.c 2018-05-13 18:25:53.000000000 +0200 ---- src/getchar.c 2018-05-22 20:21:55.241805765 +0200 -*************** -*** 1244,1250 **** - int todo = len; - - /* remember how many chars were last recorded */ -! if (Recording) - last_recorded_len += len; - - buf[1] = NUL; ---- 1244,1250 ---- - int todo = len; - - /* remember how many chars were last recorded */ -! if (reg_recording != 0) - last_recorded_len += len; - - buf[1] = NUL; -*************** -*** 1254,1260 **** - c = *s++; - updatescript(c); - -! if (Recording) - { - buf[0] = c; - add_buff(&recordbuff, buf, 1L); ---- 1254,1260 ---- - c = *s++; - updatescript(c); - -! if (reg_recording != 0) - { - buf[0] = c; - add_buff(&recordbuff, buf, 1L); -*************** -*** 2007,2013 **** - init_typebuf(); - start_stuff(); - if (advance && typebuf.tb_maplen == 0) -! Exec_reg = FALSE; - do - { - /* ---- 2007,2013 ---- - init_typebuf(); - start_stuff(); - if (advance && typebuf.tb_maplen == 0) -! reg_executing = 0; - do - { - /* -*** ../vim-8.1.0019/src/normal.c 2018-05-10 15:04:13.000000000 +0200 ---- src/normal.c 2018-05-22 20:22:01.537798525 +0200 -*************** -*** 871,878 **** - || (nv_cmds[idx].cmd_flags & NV_NCH_ALW) == NV_NCH_ALW - || (ca.cmdchar == 'q' - && oap->op_type == OP_NOP -! && !Recording -! && !Exec_reg) - || ((ca.cmdchar == 'a' || ca.cmdchar == 'i') - && (oap->op_type != OP_NOP || VIsual_active)))) - { ---- 871,878 ---- - || (nv_cmds[idx].cmd_flags & NV_NCH_ALW) == NV_NCH_ALW - || (ca.cmdchar == 'q' - && oap->op_type == OP_NOP -! && reg_recording == 0 -! && reg_executing == 0) - || ((ca.cmdchar == 'a' || ca.cmdchar == 'i') - && (oap->op_type != OP_NOP || VIsual_active)))) - { -*************** -*** 9324,9330 **** - #endif - /* (stop) recording into a named register, unless executing a - * register */ -! if (!Exec_reg && do_record(cap->nchar) == FAIL) - clearopbeep(cap->oap); - } - } ---- 9324,9330 ---- - #endif - /* (stop) recording into a named register, unless executing a - * register */ -! if (reg_executing == 0 && do_record(cap->nchar) == FAIL) - clearopbeep(cap->oap); - } - } -*** ../vim-8.1.0019/src/ops.c 2018-05-01 19:10:26.000000000 +0200 ---- src/ops.c 2018-05-22 20:22:13.973784219 +0200 -*************** -*** 1091,1104 **** - yankreg_T *old_y_previous, *old_y_current; - int retval; - -! if (Recording == FALSE) /* start recording */ - { - /* registers 0-9, a-z and " are allowed */ - if (c < 0 || (!ASCII_ISALNUM(c) && c != '"')) - retval = FAIL; - else - { -! Recording = c; - showmode(); - regname = c; - retval = OK; ---- 1091,1104 ---- - yankreg_T *old_y_previous, *old_y_current; - int retval; - -! if (reg_recording == 0) /* start recording */ - { - /* registers 0-9, a-z and " are allowed */ - if (c < 0 || (!ASCII_ISALNUM(c) && c != '"')) - retval = FAIL; - else - { -! reg_recording = c; - showmode(); - regname = c; - retval = OK; -*************** -*** 1111,1117 **** - * needs to be removed again to put it in a register. exec_reg then - * adds the escaping back later. - */ -! Recording = FALSE; - MSG(""); - p = get_recorded(); - if (p == NULL) ---- 1111,1117 ---- - * needs to be removed again to put it in a register. exec_reg then - * adds the escaping back later. - */ -! reg_recording = 0; - MSG(""); - p = get_recorded(); - if (p == NULL) -*************** -*** 1318,1324 **** - == FAIL) - return FAIL; - } -! Exec_reg = TRUE; /* disable the 'q' command */ - } - return retval; - } ---- 1318,1324 ---- - == FAIL) - return FAIL; - } -! reg_executing = regname == 0 ? '"' : regname; // disable "q" command - } - return retval; - } -*** ../vim-8.1.0019/src/globals.h 2018-05-01 15:29:24.000000000 +0200 ---- src/globals.h 2018-05-22 20:22:30.453765251 +0200 -*************** -*** 933,940 **** - EXTERN int exmode_active INIT(= 0); /* zero, EXMODE_NORMAL or EXMODE_VIM */ - EXTERN int ex_no_reprint INIT(= FALSE); /* no need to print after z or p */ - -! EXTERN int Recording INIT(= FALSE); /* TRUE when recording into a reg. */ -! EXTERN int Exec_reg INIT(= FALSE); /* TRUE when executing a register */ - - EXTERN int no_mapping INIT(= FALSE); /* currently no mapping allowed */ - EXTERN int no_zero_mapping INIT(= 0); /* mapping zero not allowed */ ---- 933,940 ---- - EXTERN int exmode_active INIT(= 0); /* zero, EXMODE_NORMAL or EXMODE_VIM */ - EXTERN int ex_no_reprint INIT(= FALSE); /* no need to print after z or p */ - -! EXTERN int reg_recording INIT(= 0); /* register for recording or zero */ -! EXTERN int reg_executing INIT(= 0); /* register being executed or zero */ - - EXTERN int no_mapping INIT(= FALSE); /* currently no mapping allowed */ - EXTERN int no_zero_mapping INIT(= 0); /* mapping zero not allowed */ -*** ../vim-8.1.0019/src/edit.c 2018-05-10 15:03:58.000000000 +0200 ---- src/edit.c 2018-05-22 20:19:41.393959222 +0200 -*************** -*** 8698,8704 **** - * When recording or for CTRL-O, need to display the new mode. - * Otherwise remove the mode message. - */ -! if (Recording || restart_edit != NUL) - showmode(); - else if (p_smd) - MSG(""); ---- 8698,8704 ---- - * When recording or for CTRL-O, need to display the new mode. - * Otherwise remove the mode message. - */ -! if (reg_recording != 0 || restart_edit != NUL) - showmode(); - else if (p_smd) - MSG(""); -*** ../vim-8.1.0019/src/fileio.c 2018-05-21 13:39:36.047906786 +0200 ---- src/fileio.c 2018-05-22 20:19:50.201949153 +0200 -*************** -*** 9274,9280 **** - - if (!did_cursorhold - && has_cursorhold() -! && !Recording - && typebuf.tb_len == 0 - #ifdef FEAT_INS_EXPAND - && !ins_compl_active() ---- 9274,9280 ---- - - if (!did_cursorhold - && has_cursorhold() -! && reg_recording == 0 - && typebuf.tb_len == 0 - #ifdef FEAT_INS_EXPAND - && !ins_compl_active() -*** ../vim-8.1.0019/src/message.c 2018-04-29 12:18:04.000000000 +0200 ---- src/message.c 2018-05-22 20:20:24.417909998 +0200 -*************** -*** 1025,1031 **** - int oldState; - int tmpState; - int had_got_int; -! int save_Recording; - FILE *save_scriptout; - - if (redraw == TRUE) ---- 1025,1031 ---- - int oldState; - int tmpState; - int had_got_int; -! int save_reg_recording; - FILE *save_scriptout; - - if (redraw == TRUE) -*************** -*** 1103,1118 **** - /* Temporarily disable Recording. If Recording is active, the - * character will be recorded later, since it will be added to the - * typebuf after the loop */ -! save_Recording = Recording; - save_scriptout = scriptout; -! Recording = FALSE; - scriptout = NULL; - c = safe_vgetc(); - if (had_got_int && !global_busy) - got_int = FALSE; - --no_mapping; - --allow_keys; -! Recording = save_Recording; - scriptout = save_scriptout; - - #ifdef FEAT_CLIPBOARD ---- 1103,1118 ---- - /* Temporarily disable Recording. If Recording is active, the - * character will be recorded later, since it will be added to the - * typebuf after the loop */ -! save_reg_recording = reg_recording; - save_scriptout = scriptout; -! reg_recording = 0; - scriptout = NULL; - c = safe_vgetc(); - if (had_got_int && !global_busy) - got_int = FALSE; - --no_mapping; - --allow_keys; -! reg_recording = save_reg_recording; - scriptout = save_scriptout; - - #ifdef FEAT_CLIPBOARD -*** ../vim-8.1.0019/src/screen.c 2018-05-19 14:43:26.775509740 +0200 ---- src/screen.c 2018-05-22 20:20:50.233880413 +0200 -*************** -*** 10255,10261 **** - && ((State & INSERT) - || restart_edit - || VIsual_active)); -! if (do_mode || Recording) - { - /* - * Don't show mode right now, when not redrawing or inside a mapping. ---- 10255,10261 ---- - && ((State & INSERT) - || restart_edit - || VIsual_active)); -! if (do_mode || reg_recording != 0) - { - /* - * Don't show mode right now, when not redrawing or inside a mapping. -*************** -*** 10414,10420 **** - - need_clear = TRUE; - } -! if (Recording - #ifdef FEAT_INS_EXPAND - && edit_submode == NULL /* otherwise it gets too long */ - #endif ---- 10414,10420 ---- - - need_clear = TRUE; - } -! if (reg_recording != 0 - #ifdef FEAT_INS_EXPAND - && edit_submode == NULL /* otherwise it gets too long */ - #endif -*************** -*** 10489,10495 **** - int save_msg_col = msg_col; - - msg_pos_mode(); -! if (Recording) - recording_mode(HL_ATTR(HLF_CM)); - msg_clr_eos(); - ---- 10489,10495 ---- - int save_msg_col = msg_col; - - msg_pos_mode(); -! if (reg_recording != 0) - recording_mode(HL_ATTR(HLF_CM)); - msg_clr_eos(); - -*************** -*** 10504,10510 **** - if (!shortmess(SHM_RECORDING)) - { - char_u s[4]; -! sprintf((char *)s, " @%c", Recording); - MSG_PUTS_ATTR(s, attr); - } - } ---- 10504,10510 ---- - if (!shortmess(SHM_RECORDING)) - { - char_u s[4]; -! sprintf((char *)s, " @%c", reg_recording); - MSG_PUTS_ATTR(s, attr); - } - } -*** ../vim-8.1.0019/src/version.c 2018-05-22 18:31:30.001365739 +0200 ---- src/version.c 2018-05-22 20:33:34.882025227 +0200 -*************** -*** 763,764 **** ---- 763,766 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 20, - /**/ - --- - | - -Ceci n'est pas une pipe. - - /// 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 /// |