To: vim_dev@googlegroups.com Subject: Patch 9.0.0828 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 9.0.0828 Problem: Various typos. Solution: Correct typos. (closes #11432) Files: src/GvimExt/Make_ming.mak, src/INSTALLpc.txt, src/blob.c, src/bufwrite.c, src/change.c, src/charset.c, src/config.h.in, src/dict.c, src/drawline.c, src/errors.h, src/eval.c, src/getchar.c, src/gui_gtk_x11.c, src/gui_w32.c, src/highlight.c, src/message_test.c, src/os_macosx.m, src/os_win32.c, src/proto/usercmd.pro, src/proto/vim9execute.pro, src/regexp.c, src/register.c, src/screen.c, src/scriptfile.c, src/spell.c, src/spell.h, src/spellfile.c, src/structs.h, src/tag.c, src/term.c, src/terminal.c, src/textprop.c, src/typval.c, src/usercmd.c src/userfunc.c, src/vim9cmds.c, src/vim9execute.c, src/vim9expr.c, src/testdir/test_channel.vim, src/testdir/test_channel_lsp.py, src/testdir/test_cmdmods.vim src/testdir/test_expr.vim, src/testdir/test_fold.vim, src/testdir/test_langmap.vim, src/testdir/test_map_functions.vim, src/testdir/test_options.vim, src/testdir/test_popupwin.vim, src/testdir/test_termcodes.vim, src/testdir/test_textprop.vim, src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_script.vim, src/testdir/test_vimscript.vim, src/testdir/test_visual.vim, src/testdir/test_winbar.vim, src/testdir/test_window_cmd.vim *** ../vim-9.0.0827/src/GvimExt/Make_ming.mak 2022-06-14 12:28:13.000000000 +0100 --- src/GvimExt/Make_ming.mak 2022-11-02 12:40:40.634379093 +0000 *************** *** 3,9 **** # To be used with MingW and Cygwin. # # Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000 ! # Now it is allocated dymanically by the linker by evaluating all DLLs # already loaded in memory. The binary image contains as well information # for automatic pseudo-rebasing, if needed by the system. ALV 2004-02-29 --- 3,9 ---- # To be used with MingW and Cygwin. # # Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000 ! # Now it is allocated dynamically by the linker by evaluating all DLLs # already loaded in memory. The binary image contains as well information # for automatic pseudo-rebasing, if needed by the system. ALV 2004-02-29 *** ../vim-9.0.0827/src/INSTALLpc.txt 2022-10-16 19:45:24.558960645 +0100 --- src/INSTALLpc.txt 2022-11-02 12:40:40.634379093 +0000 *************** *** 72,78 **** Visual Studio installed a batch file called vcvarsall.bat, which you must run to set up paths for nmake and MSVC. We provide a batch file ! "msvc2015.bat" for this. You may need to edit it if you didn't instal Visual Studio in the standard location. If you use VS2017 or later, you can use "msvc-latest.bat" (or "msvc2017.bat" and so on for the specific version). You must specify the architecture (e.g. --- 72,78 ---- Visual Studio installed a batch file called vcvarsall.bat, which you must run to set up paths for nmake and MSVC. We provide a batch file ! "msvc2015.bat" for this. You may need to edit it if you didn't install Visual Studio in the standard location. If you use VS2017 or later, you can use "msvc-latest.bat" (or "msvc2017.bat" and so on for the specific version). You must specify the architecture (e.g. *** ../vim-9.0.0827/src/blob.c 2022-10-21 11:25:25.689652476 +0100 --- src/blob.c 2022-11-02 12:40:40.634379093 +0000 *************** *** 716,722 **** } /* ! * Implementaion of reduce() for Blob "argvars[0]" using the function "expr" * starting with the optional initial value "argvars[2]" and return the result * in "rettv". */ --- 716,722 ---- } /* ! * Implementation of reduce() for Blob "argvars[0]" using the function "expr" * starting with the optional initial value "argvars[2]" and return the result * in "rettv". */ *** ../vim-9.0.0827/src/bufwrite.c 2022-11-01 20:33:39.991400397 +0000 --- src/bufwrite.c 2022-11-02 12:45:17.346047264 +0000 *************** *** 1475,1481 **** { if (buf_write_bytes(&write_info) == FAIL) { ! errmsg = (char_u *)_(e_canot_write_to_backup_file_add_bang_to_override); break; } ui_breakcheck(); --- 1475,1481 ---- { if (buf_write_bytes(&write_info) == FAIL) { ! errmsg = (char_u *)_(e_cant_write_to_backup_file_add_bang_to_override); break; } ui_breakcheck(); *** ../vim-9.0.0827/src/change.c 2022-10-29 19:54:03.849448379 +0100 --- src/change.c 2022-11-02 12:40:40.634379093 +0000 *************** *** 1378,1384 **** * "second_line_indent": indent for after ^^D in Insert mode or if flag * OPENLINE_COM_LIST * "did_do_comment" is set to TRUE when intentionally putting the comment ! * leader in fromt of the new line. * * Return OK for success, FAIL for failure */ --- 1378,1384 ---- * "second_line_indent": indent for after ^^D in Insert mode or if flag * OPENLINE_COM_LIST * "did_do_comment" is set to TRUE when intentionally putting the comment ! * leader in front of the new line. * * Return OK for success, FAIL for failure */ *** ../vim-9.0.0827/src/charset.c 2022-10-14 20:09:00.895207512 +0100 --- src/charset.c 2022-11-02 12:40:40.634379093 +0000 *************** *** 2291,2297 **** } else { ! // prevent a larg unsigned number to become negative if (un > VARNUM_MAX) un = VARNUM_MAX; *nptr = (varnumber_T)un; --- 2291,2297 ---- } else { ! // prevent a large unsigned number to become negative if (un > VARNUM_MAX) un = VARNUM_MAX; *nptr = (varnumber_T)un; *** ../vim-9.0.0827/src/config.h.in 2022-10-08 19:26:35.698195391 +0100 --- src/config.h.in 2022-11-02 12:40:40.634379093 +0000 *************** *** 135,141 **** /* Define if struct sigcontext is present */ #undef HAVE_SIGCONTEXT ! /* Define if touuper/tolower only work on lower/upercase characters */ #undef BROKEN_TOUPPER /* Define if stat() ignores a trailing slash */ --- 135,141 ---- /* Define if struct sigcontext is present */ #undef HAVE_SIGCONTEXT ! /* Define if toupper/tolower only work on lower/uppercase characters */ #undef BROKEN_TOUPPER /* Define if stat() ignores a trailing slash */ *** ../vim-9.0.0827/src/dict.c 2022-09-28 16:16:10.256335629 +0100 --- src/dict.c 2022-11-02 12:40:40.634379093 +0000 *************** *** 1016,1022 **** item = dict_find(d, key, -1); if (item != NULL) { ! semsg(_(e_duplicate_key_in_dicitonary), key); clear_tv(&tvkey); clear_tv(&tv); goto failret; --- 1016,1022 ---- item = dict_find(d, key, -1); if (item != NULL) { ! semsg(_(e_duplicate_key_in_dictionary), key); clear_tv(&tvkey); clear_tv(&tv); goto failret; *** ../vim-9.0.0827/src/drawline.c 2022-10-17 18:54:41.680610638 +0100 --- src/drawline.c 2022-11-02 12:40:40.634379093 +0000 *************** *** 2041,2047 **** text_prop_follows = TRUE; // When 'wrap' is off then for "below" we need ! // to start a new line explictly. if (start_line) { draw_screen_line(wp, &wlv); --- 2041,2047 ---- text_prop_follows = TRUE; // When 'wrap' is off then for "below" we need ! // to start a new line explicitly. if (start_line) { draw_screen_line(wp, &wlv); *** ../vim-9.0.0827/src/errors.h 2022-10-31 12:24:04.098680850 +0000 --- src/errors.h 2022-11-02 12:45:24.946038977 +0000 *************** *** 1056,1062 **** INIT(= N_("E432: Tags file not sorted: %s")); EXTERN char e_no_tags_file[] INIT(= N_("E433: No tags file")); ! EXTERN char e_canot_find_tag_pattern[] INIT(= N_("E434: Can't find tag pattern")); EXTERN char e_couldnt_find_tag_just_guessing[] INIT(= N_("E435: Couldn't find tag, just guessing!")); --- 1056,1062 ---- INIT(= N_("E432: Tags file not sorted: %s")); EXTERN char e_no_tags_file[] INIT(= N_("E433: No tags file")); ! EXTERN char e_cannot_find_tag_pattern[] INIT(= N_("E434: Can't find tag pattern")); EXTERN char e_couldnt_find_tag_just_guessing[] INIT(= N_("E435: Couldn't find tag, just guessing!")); *************** *** 1261,1267 **** INIT(= N_("is read-only (add ! to override)")); EXTERN char e_str_is_read_only_add_bang_to_override[] INIT(= N_("E505: \"%s\" is read-only (add ! to override)")); ! EXTERN char e_canot_write_to_backup_file_add_bang_to_override[] INIT(= N_("E506: Can't write to backup file (add ! to override)")); EXTERN char e_close_error_for_backup_file_add_bang_to_write_anyway[] INIT(= N_("E507: Close error for backup file (add ! to write anyway)")); --- 1261,1267 ---- INIT(= N_("is read-only (add ! to override)")); EXTERN char e_str_is_read_only_add_bang_to_override[] INIT(= N_("E505: \"%s\" is read-only (add ! to override)")); ! EXTERN char e_cant_write_to_backup_file_add_bang_to_override[] INIT(= N_("E506: Can't write to backup file (add ! to override)")); EXTERN char e_close_error_for_backup_file_add_bang_to_write_anyway[] INIT(= N_("E507: Close error for backup file (add ! to write anyway)")); *************** *** 1808,1814 **** INIT(= N_("E719: Cannot slice a Dictionary")); EXTERN char e_missing_colon_in_dictionary[] INIT(= N_("E720: Missing colon in Dictionary: %s")); ! EXTERN char e_duplicate_key_in_dicitonary[] INIT(= N_("E721: Duplicate key in Dictionary: \"%s\"")); EXTERN char e_missing_comma_in_dictionary[] INIT(= N_("E722: Missing comma in Dictionary: %s")); --- 1808,1814 ---- INIT(= N_("E719: Cannot slice a Dictionary")); EXTERN char e_missing_colon_in_dictionary[] INIT(= N_("E720: Missing colon in Dictionary: %s")); ! EXTERN char e_duplicate_key_in_dictionary[] INIT(= N_("E721: Duplicate key in Dictionary: \"%s\"")); EXTERN char e_missing_comma_in_dictionary[] INIT(= N_("E722: Missing comma in Dictionary: %s")); *************** *** 2890,2896 **** #endif EXTERN char e_cmd_mapping_must_end_with_cr_before_second_cmd[] INIT(= N_("E1136: mapping must end with before second ")); ! EXTERN char e_cmd_maping_must_not_include_str_key[] INIT(= N_("E1137: mapping must not include %s key")); #ifdef FEAT_EVAL EXTERN char e_using_bool_as_number[] --- 2890,2896 ---- #endif EXTERN char e_cmd_mapping_must_end_with_cr_before_second_cmd[] INIT(= N_("E1136: mapping must end with before second ")); ! EXTERN char e_cmd_mapping_must_not_include_str_key[] INIT(= N_("E1137: mapping must not include %s key")); #ifdef FEAT_EVAL EXTERN char e_using_bool_as_number[] *************** *** 3262,3268 **** #ifdef FEAT_EVAL EXTERN char e_bitshift_ops_must_be_number[] INIT(= N_("E1282: Bitshift operands must be numbers")); ! EXTERN char e_bitshift_ops_must_be_postive[] INIT(= N_("E1283: Bitshift amount must be a positive number")); #endif #if defined(FEAT_PROP_POPUP) --- 3262,3268 ---- #ifdef FEAT_EVAL EXTERN char e_bitshift_ops_must_be_number[] INIT(= N_("E1282: Bitshift operands must be numbers")); ! EXTERN char e_bitshift_ops_must_be_positive[] INIT(= N_("E1283: Bitshift amount must be a positive number")); #endif #if defined(FEAT_PROP_POPUP) *** ../vim-9.0.0827/src/eval.c 2022-10-20 14:17:14.620460233 +0100 --- src/eval.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 3269,3275 **** if (var2.v_type != VAR_NUMBER) emsg(_(e_bitshift_ops_must_be_number)); else ! emsg(_(e_bitshift_ops_must_be_postive)); clear_tv(rettv); clear_tv(&var2); return FAIL; --- 3269,3275 ---- if (var2.v_type != VAR_NUMBER) emsg(_(e_bitshift_ops_must_be_number)); else ! emsg(_(e_bitshift_ops_must_be_positive)); clear_tv(rettv); clear_tv(&var2); return FAIL; *** ../vim-9.0.0827/src/getchar.c 2022-10-21 13:03:29.179682686 +0100 --- src/getchar.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 3942,3948 **** ga_concat(&line_ga, (char_u *)""); else { ! semsg(e_cmd_maping_must_not_include_str_key, get_special_key_name(c1, cmod)); aborted = TRUE; } --- 3942,3948 ---- ga_concat(&line_ga, (char_u *)""); else { ! semsg(e_cmd_mapping_must_not_include_str_key, get_special_key_name(c1, cmod)); aborted = TRUE; } *** ../vim-9.0.0827/src/gui_gtk_x11.c 2022-10-04 16:23:39.014042183 +0100 --- src/gui_gtk_x11.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 5772,5778 **** * String received to output to screen can print using pre-cached glyphs * (fast) or Pango (slow). Ligatures and multibype utf-8 must use Pango. * Since we receive mixed content string, split it into logical segments ! * that are guaranteed to go trough glyphs as much as possible. Since * single ligature char prints as ascii, print it that way. */ len_sum = 0; // return value needs to add up since we are printing --- 5772,5778 ---- * String received to output to screen can print using pre-cached glyphs * (fast) or Pango (slow). Ligatures and multibype utf-8 must use Pango. * Since we receive mixed content string, split it into logical segments ! * that are guaranteed to go through glyphs as much as possible. Since * single ligature char prints as ascii, print it that way. */ len_sum = 0; // return value needs to add up since we are printing *************** *** 5781,5787 **** cs = s; // First char decides starting needs_pango mode, 0=ascii 1=utf8/ligatures. // Even if it is ligature char, two chars or more make ligature. ! // Ascii followed by utf8 is also going trough pango. is_utf8 = (*cs & 0x80); is_ligature = gui.ligatures_map[*cs] && (len > 1); if (is_ligature) --- 5781,5787 ---- cs = s; // First char decides starting needs_pango mode, 0=ascii 1=utf8/ligatures. // Even if it is ligature char, two chars or more make ligature. ! // Ascii followed by utf8 is also going through pango. is_utf8 = (*cs & 0x80); is_ligature = gui.ligatures_map[*cs] && (len > 1); if (is_ligature) *************** *** 5808,5814 **** } is_utf8 = *(cs + slen) & 0x80; // ascii followed by utf8 could be combining ! // if so send it trough pango if ((!is_utf8) && ((slen + 1) < (len - byte_sum))) is_utf8 = (*(cs + slen + 1) & 0x80); should_need_pango = (is_ligature || is_utf8); --- 5808,5814 ---- } is_utf8 = *(cs + slen) & 0x80; // ascii followed by utf8 could be combining ! // if so send it through pango if ((!is_utf8) && ((slen + 1) < (len - byte_sum))) is_utf8 = (*(cs + slen + 1) & 0x80); should_need_pango = (is_ligature || is_utf8); *** ../vim-9.0.0827/src/gui_w32.c 2022-10-07 16:28:43.522256458 +0100 --- src/gui_w32.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 1973,1979 **** if (dead_key != DEAD_KEY_OFF) { /* ! * Expell the dead key pressed with Ctrl in a special way. * * After dead key was pressed with Ctrl in some cases, ESC was * artificially injected and handled by _OnChar(), now we are --- 1973,1979 ---- if (dead_key != DEAD_KEY_OFF) { /* ! * Expel the dead key pressed with Ctrl in a special way. * * After dead key was pressed with Ctrl in some cases, ESC was * artificially injected and handled by _OnChar(), now we are *************** *** 2160,2166 **** ) { // post WM_CHAR='[' - which will be interpreted with CTRL ! // stil hold as ESC PostMessageW(msg.hwnd, WM_CHAR, '[', msg.lParam); // ask _OnChar() to not touch this state, wait for next key // press and maintain knowledge that we are "poisoned" with --- 2160,2166 ---- ) { // post WM_CHAR='[' - which will be interpreted with CTRL ! // still hold as ESC PostMessageW(msg.hwnd, WM_CHAR, '[', msg.lParam); // ask _OnChar() to not touch this state, wait for next key // press and maintain knowledge that we are "poisoned" with *** ../vim-9.0.0827/src/highlight.c 2022-09-03 10:52:18.395075356 +0100 --- src/highlight.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 634,640 **** /* * Link highlight group 'from_hg' to 'to_hg'. * 'dodefault' is set to TRUE for ":highlight default link". ! * 'forceit' is set to TRUE for ":higlight! link" * 'init' is set to TRUE when initializing all the highlight groups. */ static void --- 634,640 ---- /* * Link highlight group 'from_hg' to 'to_hg'. * 'dodefault' is set to TRUE for ":highlight default link". ! * 'forceit' is set to TRUE for ":highlight! link" * 'init' is set to TRUE when initializing all the highlight groups. */ static void *** ../vim-9.0.0827/src/message_test.c 2022-09-17 21:07:52.099993159 +0100 --- src/message_test.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 154,160 **** /* * Test vim_snprintf() with a focus on checking that truncation is * correct when buffer is small, since it cannot be tested from ! * vim scrip tests. Check that: * - no buffer overflows happens (with valgrind or asan) * - output string is always NUL terminated. * --- 154,160 ---- /* * Test vim_snprintf() with a focus on checking that truncation is * correct when buffer is small, since it cannot be tested from ! * vim script tests. Check that: * - no buffer overflows happens (with valgrind or asan) * - output string is always NUL terminated. * *** ../vim-9.0.0827/src/os_macosx.m 2022-10-08 13:49:41.889378451 +0100 --- src/os_macosx.m 2022-11-02 12:40:40.638379088 +0000 *************** *** 334,340 **** * * The limitations and differences include: * ! * - The flags argument is ignored. The supplied new_value is therfore * always treated as a relative time. * - The old_value argument is ignored. */ --- 334,340 ---- * * The limitations and differences include: * ! * - The flags argument is ignored. The supplied new_value is therefore * always treated as a relative time. * - The old_value argument is ignored. */ *** ../vim-9.0.0827/src/os_win32.c 2022-10-20 13:11:12.234206115 +0100 --- src/os_win32.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 1307,1313 **** else direction = zDelta >= 0 ? KE_MOUSEDOWN : KE_MOUSEUP; ! // Decode the win32 console key modifers into Vim mouse modifers. if (pmer->dwControlKeyState & SHIFT_PRESSED) modifiers |= MOD_MASK_SHIFT; // MOUSE_SHIFT; if (pmer->dwControlKeyState & (RIGHT_CTRL_PRESSED | LEFT_CTRL_PRESSED)) --- 1307,1313 ---- else direction = zDelta >= 0 ? KE_MOUSEDOWN : KE_MOUSEUP; ! // Decode the win32 console key modifiers into Vim mouse modifiers. if (pmer->dwControlKeyState & SHIFT_PRESSED) modifiers |= MOD_MASK_SHIFT; // MOUSE_SHIFT; if (pmer->dwControlKeyState & (RIGHT_CTRL_PRESSED | LEFT_CTRL_PRESSED)) *** ../vim-9.0.0827/src/proto/usercmd.pro 2022-06-27 23:15:28.000000000 +0100 --- src/proto/usercmd.pro 2022-11-02 12:40:40.638379088 +0000 *************** *** 18,24 **** void ex_comclear(exarg_T *eap); void uc_clear(garray_T *gap); void ex_delcommand(exarg_T *eap); ! size_t add_win_cmd_modifers(char_u *buf, cmdmod_T *cmod, int *multi_mods); size_t produce_cmdmods(char_u *buf, cmdmod_T *cmod, int quote); void do_ucmd(exarg_T *eap); /* vim: set ft=c : */ --- 18,24 ---- void ex_comclear(exarg_T *eap); void uc_clear(garray_T *gap); void ex_delcommand(exarg_T *eap); ! size_t add_win_cmd_modifiers(char_u *buf, cmdmod_T *cmod, int *multi_mods); size_t produce_cmdmods(char_u *buf, cmdmod_T *cmod, int quote); void do_ucmd(exarg_T *eap); /* vim: set ft=c : */ *** ../vim-9.0.0827/src/proto/vim9execute.pro 2022-09-19 15:54:29.539117880 +0100 --- src/proto/vim9execute.pro 2022-11-02 12:40:40.638379088 +0000 *************** *** 4,10 **** int funcstack_check_refcount(funcstack_T *funcstack); int set_ref_in_funcstacks(int copyID); int in_def_function(void); ! ectx_T *clear_currrent_ectx(void); void restore_current_ectx(ectx_T *ectx); int add_defer_function(char_u *name, int argcount, typval_T *argvars); char_u *char_from_string(char_u *str, varnumber_T index); --- 4,10 ---- int funcstack_check_refcount(funcstack_T *funcstack); int set_ref_in_funcstacks(int copyID); int in_def_function(void); ! ectx_T *clear_current_ectx(void); void restore_current_ectx(ectx_T *ectx); int add_defer_function(char_u *name, int argcount, typval_T *argvars); char_u *char_from_string(char_u *str, varnumber_T index); *** ../vim-9.0.0827/src/regexp.c 2022-10-01 19:43:48.610494062 +0100 --- src/regexp.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 1890,1896 **** * vim_regexec_multi() match. * * If "flags" has REGSUB_COPY really copy into "dest[destlen]". ! * Oterwise nothing is copied, only compue the length of the result. * * If "flags" has REGSUB_MAGIC then behave like 'magic' is set. * --- 1890,1896 ---- * vim_regexec_multi() match. * * If "flags" has REGSUB_COPY really copy into "dest[destlen]". ! * Otherwise nothing is copied, only compute the length of the result. * * If "flags" has REGSUB_MAGIC then behave like 'magic' is set. * *** ../vim-9.0.0827/src/register.c 2022-10-15 19:03:57.548589509 +0100 --- src/register.c 2022-11-02 12:40:40.638379088 +0000 *************** *** 1857,1863 **** shortline = (vcol < col) || (vcol == col && !*ptr) ; ! if (vcol < col) // line too short, padd with spaces bd.startspaces = col - vcol; else if (vcol > col) { --- 1857,1863 ---- shortline = (vcol < col) || (vcol == col && !*ptr) ; ! if (vcol < col) // line too short, pad with spaces bd.startspaces = col - vcol; else if (vcol > col) { *** ../vim-9.0.0827/src/screen.c 2022-10-13 22:12:07.168673806 +0100 --- src/screen.c 2022-11-02 12:40:40.642379083 +0000 *************** *** 2287,2293 **** if (off + 1 >= (unsigned)(screen_Rows * screen_Columns)) return; ! // Outputting the last character on the screen may scrollup the screen. // Don't to it! Mark the character invalid (update it when scrolled up) if (row == screen_Rows - 1 && col >= screen_Columns - 2) { --- 2287,2293 ---- if (off + 1 >= (unsigned)(screen_Rows * screen_Columns)) return; ! // Outputting the last character on the screen may scroll the screen up. // Don't to it! Mark the character invalid (update it when scrolled up) if (row == screen_Rows - 1 && col >= screen_Columns - 2) { *************** *** 2734,2740 **** if (enc_dbcs == DBCS_JPNU) new_ScreenLines2 = LALLOC_MULT(schar_T, (Rows + 1) * Columns); new_ScreenAttrs = LALLOC_MULT(sattr_T, (Rows + 1) * Columns); ! // Clear ScreenCols to avoid a warning for unitialized memory in // jump_to_mouse(). new_ScreenCols = LALLOC_CLEAR_MULT(colnr_T, (Rows + 1) * Columns); new_LineOffset = LALLOC_MULT(unsigned, Rows); --- 2734,2740 ---- if (enc_dbcs == DBCS_JPNU) new_ScreenLines2 = LALLOC_MULT(schar_T, (Rows + 1) * Columns); new_ScreenAttrs = LALLOC_MULT(sattr_T, (Rows + 1) * Columns); ! // Clear ScreenCols to avoid a warning for uninitialized memory in // jump_to_mouse(). new_ScreenCols = LALLOC_CLEAR_MULT(colnr_T, (Rows + 1) * Columns); new_LineOffset = LALLOC_MULT(unsigned, Rows); *** ../vim-9.0.0827/src/scriptfile.c 2022-10-01 19:43:48.610494062 +0100 --- src/scriptfile.c 2022-11-02 12:40:40.642379083 +0000 *************** *** 1201,1207 **** int multi_mods = 0; buf[0] = NUL; ! (void)add_win_cmd_modifers(buf, &cmdmod, &multi_mods); vim_setenv((char_u *)"OPTWIN_CMD", buf); cmd_source((char_u *)SYS_OPTWIN_FILE, NULL); --- 1201,1207 ---- int multi_mods = 0; buf[0] = NUL; ! (void)add_win_cmd_modifiers(buf, &cmdmod, &multi_mods); vim_setenv((char_u *)"OPTWIN_CMD", buf); cmd_source((char_u *)SYS_OPTWIN_FILE, NULL); *** ../vim-9.0.0827/src/spell.c 2022-10-13 22:12:07.168673806 +0100 --- src/spell.c 2022-11-02 12:40:40.642379083 +0000 *************** *** 111,117 **** win_T *mi_win; // buffer being checked // for NOBREAK ! int mi_result2; // "mi_resul" without following word char_u *mi_end2; // "mi_end" without following word } matchinf_T; --- 111,117 ---- win_T *mi_win; // buffer being checked // for NOBREAK ! int mi_result2; // "mi_result" without following word char_u *mi_end2; // "mi_end" without following word } matchinf_T; *** ../vim-9.0.0827/src/spell.h 2022-03-27 19:58:48.000000000 +0100 --- src/spell.h 2022-11-02 12:40:40.642379083 +0000 *************** *** 17,26 **** # define SPELL_PRINTTREE #endif ! // Use SPELL_COMPRESS_ALLWAYS for debugging: compress the word tree after // adding a word. Only use it for small word lists! #if 0 ! # define SPELL_COMPRESS_ALLWAYS #endif // Use DEBUG_TRIEWALK to print the changes made in suggest_trie_walk() for a --- 17,26 ---- # define SPELL_PRINTTREE #endif ! // Use SPELL_COMPRESS_ALWAYS for debugging: compress the word tree after // adding a word. Only use it for small word lists! #if 0 ! # define SPELL_COMPRESS_ALWAYS #endif // Use DEBUG_TRIEWALK to print the changes made in suggest_trie_walk() for a *** ../vim-9.0.0827/src/spellfile.c 2022-09-05 11:04:10.687888165 +0100 --- src/spellfile.c 2022-11-02 12:40:40.642379083 +0000 *************** *** 4588,4594 **** * (si_compress_cnt == 1) and the number of free nodes drops below the * maximum word length. */ ! #ifndef SPELL_COMPRESS_ALLWAYS if (spin->si_compress_cnt == 1 ? spin->si_free_count < MAXWLEN : spin->si_blocks_cnt >= compress_start) --- 4588,4594 ---- * (si_compress_cnt == 1) and the number of free nodes drops below the * maximum word length. */ ! #ifndef SPELL_COMPRESS_ALWAYS if (spin->si_compress_cnt == 1 ? spin->si_free_count < MAXWLEN : spin->si_blocks_cnt >= compress_start) *** ../vim-9.0.0827/src/structs.h 2022-10-29 19:54:03.849448379 +0100 --- src/structs.h 2022-11-02 12:40:40.642379083 +0000 *************** *** 823,829 **** // text is truncated #define TP_FLAG_START_INCL 0x100 // "start_incl" copied from proptype ! #define PROP_TEXT_MIN_CELLS 4 // minimun number of cells to use for // the text, even when truncating /* --- 823,829 ---- // text is truncated #define TP_FLAG_START_INCL 0x100 // "start_incl" copied from proptype ! #define PROP_TEXT_MIN_CELLS 4 // minimum number of cells to use for // the text, even when truncating /* *************** *** 1884,1890 **** #define IMP_FLAGS_AUTOLOAD 4 // script still needs to be loaded /* ! * Info about an encoutered script. * When sn_state has the SN_STATE_NOT_LOADED is has not been sourced yet. */ typedef struct --- 1884,1890 ---- #define IMP_FLAGS_AUTOLOAD 4 // script still needs to be loaded /* ! * Info about an encountered script. * When sn_state has the SN_STATE_NOT_LOADED is has not been sourced yet. */ typedef struct *************** *** 2095,2101 **** }; /* ! * Structure to hold the variables declared in a loop that are possiblly used * in a closure. */ typedef struct loopvars_S loopvars_T; --- 2095,2101 ---- }; /* ! * Structure to hold the variables declared in a loop that are possibly used * in a closure. */ typedef struct loopvars_S loopvars_T; *** ../vim-9.0.0827/src/tag.c 2022-09-05 19:51:09.221360577 +0100 --- src/tag.c 2022-11-02 12:40:40.642379083 +0000 *************** *** 3954,3960 **** } if (found == 0) { ! emsg(_(e_canot_find_tag_pattern)); curwin->w_cursor.lnum = save_lnum; } else --- 3954,3960 ---- } if (found == 0) { ! emsg(_(e_cannot_find_tag_pattern)); curwin->w_cursor.lnum = save_lnum; } else *** ../vim-9.0.0827/src/term.c 2022-11-01 22:04:31.082780034 +0000 --- src/term.c 2022-11-02 12:40:40.642379083 +0000 *************** *** 155,161 **** // received. To avoid redrawing too often, only redraw when t_8u is not reset // and it was supposed to be written. Unless t_8u was set explicitly. // FALSE -> don't output t_8u yet ! // MAYBE -> tried outputing t_8u while FALSE // OK -> can write t_8u int write_t_8u_state = FALSE; # endif --- 155,161 ---- // received. To avoid redrawing too often, only redraw when t_8u is not reset // and it was supposed to be written. Unless t_8u was set explicitly. // FALSE -> don't output t_8u yet ! // MAYBE -> tried outputting t_8u while FALSE // OK -> can write t_8u int write_t_8u_state = FALSE; # endif *** ../vim-9.0.0827/src/terminal.c 2022-10-16 19:26:31.680328579 +0100 --- src/terminal.c 2022-11-02 12:40:40.642379083 +0000 *************** *** 2396,2402 **** } /* ! * Return the highight group ID for the terminal and the window. */ static int term_get_highlight_id(term_T *term, win_T *wp) --- 2396,2402 ---- } /* ! * Return the highlight group ID for the terminal and the window. */ static int term_get_highlight_id(term_T *term, win_T *wp) *** ../vim-9.0.0827/src/textprop.c 2022-10-13 14:34:39.577698160 +0100 --- src/textprop.c 2022-11-02 12:40:40.646379078 +0000 *************** *** 900,906 **** if (ht == NULL || ht->ht_used == 0) return NULL; ! // Make the loopup faster by creating an array with pointers to // hashtable entries, sorted on pt_id. if (*array == NULL) { --- 900,906 ---- if (ht == NULL || ht->ht_used == 0) return NULL; ! // Make the lookup faster by creating an array with pointers to // hashtable entries, sorted on pt_id. if (*array == NULL) { *** ../vim-9.0.0827/src/typval.c 2022-10-10 16:08:12.478393959 +0100 --- src/typval.c 2022-11-02 12:40:40.646379078 +0000 *************** *** 1407,1413 **** } /* ! * Compare "tv1" to "tv2" as lists acording to "type" and "ic". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ --- 1407,1413 ---- } /* ! * Compare "tv1" to "tv2" as lists according to "type" and "ic". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ *************** *** 1489,1495 **** } /* ! * Compare "tv1" to "tv2" as blobs acording to "type". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ --- 1489,1495 ---- } /* ! * Compare "tv1" to "tv2" as blobs according to "type". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ *************** *** 1529,1535 **** } /* ! * Compare "tv1" to "tv2" as dictionaries acording to "type" and "ic". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ --- 1529,1535 ---- } /* ! * Compare "tv1" to "tv2" as dictionaries according to "type" and "ic". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ *************** *** 1570,1576 **** } /* ! * Compare "tv1" to "tv2" as funcrefs acording to "type" and "ic". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ --- 1570,1576 ---- } /* ! * Compare "tv1" to "tv2" as funcrefs according to "type" and "ic". * Put the result, false or true, in "res". * Return FAIL and give an error message when the comparison can't be done. */ *** ../vim-9.0.0827/src/usercmd.c 2022-10-18 13:11:18.466896436 +0100 --- src/usercmd.c 2022-11-02 12:40:40.646379078 +0000 *************** *** 1420,1426 **** * was added. Return the number of bytes added. */ size_t ! add_win_cmd_modifers(char_u *buf, cmdmod_T *cmod, int *multi_mods) { size_t result = 0; --- 1420,1426 ---- * was added. Return the number of bytes added. */ size_t ! add_win_cmd_modifiers(char_u *buf, cmdmod_T *cmod, int *multi_mods) { size_t result = 0; *************** *** 1537,1543 **** } } // flags from cmod->cmod_split ! result += add_win_cmd_modifers(buf, cmod, &multi_mods); if (quote && buf != NULL) { --- 1537,1543 ---- } } // flags from cmod->cmod_split ! result += add_win_cmd_modifiers(buf, cmod, &multi_mods); if (quote && buf != NULL) { *** ../vim-9.0.0827/src/userfunc.c 2022-10-01 15:32:42.535442251 +0100 --- src/userfunc.c 2022-11-02 12:40:40.646379078 +0000 *************** *** 2921,2927 **** // If called from a compiled :def function the execution context must be // hidden, any deferred functions need to be added to the function being // executed here. ! save_current_ectx = clear_currrent_ectx(); save_current_sctx = current_sctx; current_sctx = fp->uf_script_ctx; --- 2921,2927 ---- // If called from a compiled :def function the execution context must be // hidden, any deferred functions need to be added to the function being // executed here. ! save_current_ectx = clear_current_ectx(); save_current_sctx = current_sctx; current_sctx = fp->uf_script_ctx; *************** *** 5064,5070 **** if (is_export) { fp->uf_flags |= FC_EXPORT; ! // let ex_export() know the export worked. is_export = FALSE; } --- 5064,5070 ---- if (is_export) { fp->uf_flags |= FC_EXPORT; ! // let do_one_cmd() know the export worked. is_export = FALSE; } *** ../vim-9.0.0827/src/vim9cmds.c 2022-10-13 16:12:51.748207004 +0100 --- src/vim9cmds.c 2022-11-02 12:40:40.646379078 +0000 *************** *** 1438,1444 **** if (try_scopes > 0) // Inside one or more try/catch blocks we first need to jump to the // "finally" or "endtry" to cleanup. Then come to the next JUMP ! // intruction, which we don't know the index of yet. generate_TRYCONT(cctx, try_scopes, cctx->ctx_instr.ga_len + 1); // Jump to the end of the FOR or WHILE loop. The instruction index will be --- 1438,1444 ---- if (try_scopes > 0) // Inside one or more try/catch blocks we first need to jump to the // "finally" or "endtry" to cleanup. Then come to the next JUMP ! // instruction, which we don't know the index of yet. generate_TRYCONT(cctx, try_scopes, cctx->ctx_instr.ga_len + 1); // Jump to the end of the FOR or WHILE loop. The instruction index will be *** ../vim-9.0.0827/src/vim9execute.c 2022-10-07 14:31:04.324852691 +0100 --- src/vim9execute.c 2022-11-02 12:40:40.650379073 +0000 *************** *** 234,240 **** item = dict_find(dict, key, -1); if (item != NULL) { ! semsg(_(e_duplicate_key_in_dicitonary), key); dict_unref(dict); return MAYBE; } --- 234,240 ---- item = dict_find(dict, key, -1); if (item != NULL) { ! semsg(_(e_duplicate_key_in_dictionary), key); dict_unref(dict); return MAYBE; } *************** *** 866,872 **** * a user function. */ ectx_T * ! clear_currrent_ectx(void) { ectx_T *r = current_ectx; --- 866,872 ---- * a user function. */ ectx_T * ! clear_current_ectx(void) { ectx_T *r = current_ectx; *************** *** 4523,4529 **** if (arg2 < 0) { SOURCING_LNUM = iptr->isn_lnum; ! emsg(_(e_bitshift_ops_must_be_postive)); goto on_error; } } --- 4523,4529 ---- if (arg2 < 0) { SOURCING_LNUM = iptr->isn_lnum; ! emsg(_(e_bitshift_ops_must_be_positive)); goto on_error; } } *************** *** 5929,5935 **** } /* ! * Invoke any deffered functions for the top function in "ectx". */ void may_invoke_defer_funcs(ectx_T *ectx) --- 5929,5935 ---- } /* ! * Invoke any deferred functions for the top function in "ectx". */ void may_invoke_defer_funcs(ectx_T *ectx) *** ../vim-9.0.0827/src/vim9expr.c 2022-10-19 18:04:45.787713555 +0100 --- src/vim9expr.c 2022-11-02 12:40:40.650379073 +0000 *************** *** 1242,1248 **** item = dict_find(d, key, -1); if (item != NULL) { ! semsg(_(e_duplicate_key_in_dicitonary), key); goto failret; } item = dictitem_alloc(key); --- 1242,1248 ---- item = dict_find(d, key, -1); if (item != NULL) { ! semsg(_(e_duplicate_key_in_dictionary), key); goto failret; } item = dictitem_alloc(key); *************** *** 2725,2731 **** if (tv2->v_type != VAR_NUMBER) emsg(_(e_bitshift_ops_must_be_number)); else ! emsg(_(e_bitshift_ops_must_be_postive)); return FAIL; } --- 2725,2731 ---- if (tv2->v_type != VAR_NUMBER) emsg(_(e_bitshift_ops_must_be_number)); else ! emsg(_(e_bitshift_ops_must_be_positive)); return FAIL; } *** ../vim-9.0.0827/src/testdir/test_channel.vim 2022-09-25 11:20:59.688270261 +0100 --- src/testdir/test_channel.vim 2022-11-02 12:40:40.642379083 +0000 *************** *** 2563,2573 **** " Test for using a one time callback function to process a response let g:lspOtMsgs = [] ! let r = ch_sendexpr(ch, #{method: 'msg-specifc-cb', params: {}}, \ #{callback: 'LspOtCb'}) call assert_equal(9, r.id) call assert_equal('alive', ch_evalexpr(ch, #{method: 'ping'}).result) ! call assert_equal([#{id: 9, jsonrpc: '2.0', result: 'msg-specifc-cb'}], \ g:lspOtMsgs) " Test for generating a request message from the other end (server) --- 2563,2573 ---- " Test for using a one time callback function to process a response let g:lspOtMsgs = [] ! let r = ch_sendexpr(ch, #{method: 'msg-specific-cb', params: {}}, \ #{callback: 'LspOtCb'}) call assert_equal(9, r.id) call assert_equal('alive', ch_evalexpr(ch, #{method: 'ping'}).result) ! call assert_equal([#{id: 9, jsonrpc: '2.0', result: 'msg-specific-cb'}], \ g:lspOtMsgs) " Test for generating a request message from the other end (server) *** ../vim-9.0.0827/src/testdir/test_channel_lsp.py 2022-04-19 10:21:27.000000000 +0100 --- src/testdir/test_channel_lsp.py 2022-11-02 12:40:40.642379083 +0000 *************** *** 164,170 **** self.send_lsp_msg(payload['id'], 'msg-with-id') def do_msg_specific_cb(self, payload): ! self.send_lsp_msg(payload['id'], 'msg-specifc-cb') def do_server_req(self, payload): self.send_lsp_msg(201, {'method': 'checkhealth', 'params': {'a': 20}}) --- 164,170 ---- self.send_lsp_msg(payload['id'], 'msg-with-id') def do_msg_specific_cb(self, payload): ! self.send_lsp_msg(payload['id'], 'msg-specific-cb') def do_server_req(self, payload): self.send_lsp_msg(201, {'method': 'checkhealth', 'params': {'a': 20}}) *************** *** 205,211 **** 'simple-notif': self.do_simple_notif, 'multi-notif': self.do_multi_notif, 'msg-with-id': self.do_msg_with_id, ! 'msg-specifc-cb': self.do_msg_specific_cb, 'server-req': self.do_server_req, 'extra-hdr-fields': self.do_extra_hdr_fields, 'delayed-payload': self.do_delayad_payload, --- 205,211 ---- 'simple-notif': self.do_simple_notif, 'multi-notif': self.do_multi_notif, 'msg-with-id': self.do_msg_with_id, ! 'msg-specific-cb': self.do_msg_specific_cb, 'server-req': self.do_server_req, 'extra-hdr-fields': self.do_extra_hdr_fields, 'delayed-payload': self.do_delayad_payload, *** ../vim-9.0.0827/src/testdir/test_cmdmods.vim 2022-09-09 13:27:40.403539790 +0100 --- src/testdir/test_cmdmods.vim 2022-11-02 12:40:40.642379083 +0000 *************** *** 1,4 **** ! " Test for all comand modifiers in def Test_cmdmods_array() # Get all the command modifiers from ex_cmds.h. --- 1,4 ---- ! " Test for all command modifiers in def Test_cmdmods_array() # Get all the command modifiers from ex_cmds.h. *** ../vim-9.0.0827/src/testdir/test_expr.vim 2022-10-20 14:17:14.620460233 +0100 --- src/testdir/test_expr.vim 2022-11-02 12:40:40.642379083 +0000 *************** *** 35,41 **** call assert_true(has('patch-6.9.999')) call assert_true(has('patch-7.1.999')) call assert_true(has('patch-7.4.123')) ! call assert_true(has('patch-7.4.123 ')) " Traling space can be allowed. call assert_false(has('patch-7')) call assert_false(has('patch-7.4')) --- 35,41 ---- call assert_true(has('patch-6.9.999')) call assert_true(has('patch-7.1.999')) call assert_true(has('patch-7.4.123')) ! call assert_true(has('patch-7.4.123 ')) " Trailing space can be allowed. call assert_false(has('patch-7')) call assert_false(has('patch-7.4')) *** ../vim-9.0.0827/src/testdir/test_fold.vim 2022-10-01 15:32:42.539442245 +0100 --- src/testdir/test_fold.vim 2022-11-02 12:40:40.642379083 +0000 *************** *** 1342,1348 **** " Test for merging two recursive folds when an intermediate line with no fold " is removed ! func Test_fold_merge_recrusive() new call setline(1, [' one', ' two', 'xxxx', ' three', \ ' four', "\tfive"]) --- 1342,1348 ---- " Test for merging two recursive folds when an intermediate line with no fold " is removed ! func Test_fold_merge_recursive() new call setline(1, [' one', ' two', 'xxxx', ' three', \ ' four', "\tfive"]) *** ../vim-9.0.0827/src/testdir/test_langmap.vim 2022-10-20 17:59:34.610510336 +0100 --- src/testdir/test_langmap.vim 2022-11-02 12:40:40.642379083 +0000 *************** *** 52,58 **** set langmap=RL let g:counter = 0 nnoremap L;L let g:counter += 1 ! nnoremap throw 'This mapping shoud not be triggered' " 'langmap' is applied to keys without modifiers when matching a mapping call feedkeys('R;R', 'tx') --- 52,58 ---- set langmap=RL let g:counter = 0 nnoremap L;L let g:counter += 1 ! nnoremap throw 'This mapping should not be triggered' " 'langmap' is applied to keys without modifiers when matching a mapping call feedkeys('R;R', 'tx') *** ../vim-9.0.0827/src/testdir/test_map_functions.vim 2022-08-31 16:40:14.250932016 +0100 --- src/testdir/test_map_functions.vim 2022-11-02 12:40:40.642379083 +0000 *************** *** 559,565 **** assert_equal(len(maps_maplist), len(map_set)) # For everything returned by maplist, should be the same as from maparg. ! # Except for "map dup", bacause maparg returns the version for d in maps_maplist if d.lhs == 'dup' && d.buffer == 0 continue --- 559,565 ---- assert_equal(len(maps_maplist), len(map_set)) # For everything returned by maplist, should be the same as from maparg. ! # Except for "map dup", because maparg returns the version for d in maps_maplist if d.lhs == 'dup' && d.buffer == 0 continue *** ../vim-9.0.0827/src/testdir/test_options.vim 2022-10-03 11:22:59.217008645 +0100 --- src/testdir/test_options.vim 2022-11-02 12:40:40.642379083 +0000 *************** *** 274,280 **** call feedkeys(":setglobal di\\\"\", 'tx') call assert_equal('"setglobal dictionary diff diffexpr diffopt digraph directory display', @:) ! " Expand boolan options. When doing :set no " vim displays the options names without "no" but completion uses "no...". call feedkeys(":set nodi\\\"\", 'tx') call assert_equal('"set nodiff digraph', @:) --- 274,280 ---- call feedkeys(":setglobal di\\\"\", 'tx') call assert_equal('"setglobal dictionary diff diffexpr diffopt digraph directory display', @:) ! " Expand boolean options. When doing :set no " vim displays the options names without "no" but completion uses "no...". call feedkeys(":set nodi\\\"\", 'tx') call assert_equal('"set nodiff digraph', @:) *** ../vim-9.0.0827/src/testdir/test_popupwin.vim 2022-10-02 14:28:08.142530572 +0100 --- src/testdir/test_popupwin.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 4124,4131 **** fixed: false, }) END ! call writefile(lines, 'XtestPropNotVisble', 'D') ! let buf = RunVimInTerminal('-S XtestPropNotVisble', #{rows: 10}) call VerifyScreenDump(buf, 'Test_popup_prop_not_visible_01', {}) " check that hiding and unhiding the popup works --- 4124,4131 ---- fixed: false, }) END ! call writefile(lines, 'XtestPropNotVisible', 'D') ! let buf = RunVimInTerminal('-S XtestPropNotVisible', #{rows: 10}) call VerifyScreenDump(buf, 'Test_popup_prop_not_visible_01', {}) " check that hiding and unhiding the popup works *** ../vim-9.0.0827/src/testdir/test_termcodes.vim 2022-11-01 18:34:02.783964409 +0000 --- src/testdir/test_termcodes.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 1222,1228 **** call assert_equal(5, col("'<")) call assert_equal(12, col("'>")) ! " Multi-line selection. Right click inside thse selection. call setline(1, repeat(['aaaaaa'], 7)) call test_setmouse(3, 1) exe "normal ggVG\y" --- 1222,1228 ---- call assert_equal(5, col("'<")) call assert_equal(12, col("'>")) ! " Multi-line selection. Right click inside the selection. call setline(1, repeat(['aaaaaa'], 7)) call test_setmouse(3, 1) exe "normal ggVG\y" *** ../vim-9.0.0827/src/testdir/test_textprop.vim 2022-10-17 18:54:41.680610638 +0100 --- src/testdir/test_textprop.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 1896,1902 **** try :2 del catch ! assert_report('Line delete should have workd, but it raised an error.') endtry # The property for line 2 (was 3) should no longer extend into the previous --- 1896,1902 ---- try :2 del catch ! assert_report('Line delete should have worked, but it raised an error.') endtry # The property for line 2 (was 3) should no longer extend into the previous *************** *** 1910,1916 **** try :3 del catch ! assert_report('Line delete should have workd, but it raised an error.') endtry # The property for line 2 (originally 3) should no longer extend into the next --- 1910,1916 ---- try :3 del catch ! assert_report('Line delete should have worked, but it raised an error.') endtry # The property for line 2 (originally 3) should no longer extend into the next *************** *** 2405,2411 **** exec 'setlocal fileformat=' . a:ff " Fill the buffer with varying length lines. We need a suitably large number ! " to force Vim code through paths wehere previous error have occurred. This " is more 'art' than 'science'. let text = 'a' call setline(1, text) --- 2405,2411 ---- exec 'setlocal fileformat=' . a:ff " Fill the buffer with varying length lines. We need a suitably large number ! " to force Vim code through paths where previous error have occurred. This " is more 'art' than 'science'. let text = 'a' call setline(1, text) *************** *** 2448,2454 **** setlocal fileformat=unix " Fill the buffer with varying length lines. We need a suitably large number ! " to force Vim code through paths wehere previous error have occurred. This " is more 'art' than 'science'. let text = 'aa' call setline(1, text) --- 2448,2454 ---- setlocal fileformat=unix " Fill the buffer with varying length lines. We need a suitably large number ! " to force Vim code through paths where previous error have occurred. This " is more 'art' than 'science'. let text = 'aa' call setline(1, text) *** ../vim-9.0.0827/src/testdir/test_vim9_cmd.vim 2022-10-15 20:06:30.284328833 +0100 --- src/testdir/test_vim9_cmd.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 126,132 **** END v9.CheckScriptSuccess(lines) ! # "legacy" does not aply to a called function lines =<< trim END vim9script --- 126,132 ---- END v9.CheckScriptSuccess(lines) ! # "legacy" does not apply to a called function lines =<< trim END vim9script *** ../vim-9.0.0827/src/testdir/test_vim9_script.vim 2022-10-21 12:05:41.918401161 +0100 --- src/testdir/test_vim9_script.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 4366,4372 **** g:StopVimInTerminal(buf) enddef ! def Test_ambigous_command_error() var lines =<< trim END vim9script command CmdA echomsg 'CmdA' --- 4366,4372 ---- g:StopVimInTerminal(buf) enddef ! def Test_ambiguous_command_error() var lines =<< trim END vim9script command CmdA echomsg 'CmdA' *** ../vim-9.0.0827/src/testdir/test_vimscript.vim 2022-10-15 21:35:51.195403809 +0100 --- src/testdir/test_vimscript.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 6882,6888 **** " Undefined behavior was detected by ubsan with line continuation " after an empty line. "------------------------------------------------------------------------------- ! func Test_script_emty_line_continuation() \ endfunc --- 6882,6888 ---- " Undefined behavior was detected by ubsan with line continuation " after an empty line. "------------------------------------------------------------------------------- ! func Test_script_empty_line_continuation() \ endfunc *** ../vim-9.0.0827/src/testdir/test_visual.vim 2022-10-15 21:35:51.195403809 +0100 --- src/testdir/test_visual.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 1289,1295 **** endfunc func Test_visual_block_ctrl_w_f() ! " Emtpy block selected in new buffer should not result in an error. au! BufNew foo sil norm f edit foo --- 1289,1295 ---- endfunc func Test_visual_block_ctrl_w_f() ! " Empty block selected in new buffer should not result in an error. au! BufNew foo sil norm f edit foo *** ../vim-9.0.0827/src/testdir/test_winbar.vim 2022-10-15 22:06:02.730483280 +0100 --- src/testdir/test_winbar.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 132,139 **** wincmd j wincmd _ END ! call writefile(lines, 'XtestWinbarNotVisble', 'D') ! let buf = RunVimInTerminal('-S XtestWinbarNotVisble', #{rows: 10}) call VerifyScreenDump(buf, 'Test_winbar_not_visible', {}) " clean up --- 132,139 ---- wincmd j wincmd _ END ! call writefile(lines, 'XtestWinbarNotVisible', 'D') ! let buf = RunVimInTerminal('-S XtestWinbarNotVisible', #{rows: 10}) call VerifyScreenDump(buf, 'Test_winbar_not_visible', {}) " clean up *************** *** 151,158 **** wincmd j wincmd _ END ! call writefile(lines, 'XtestWinbarNotVisble', 'D') ! let buf = RunVimInTerminal('-S XtestWinbarNotVisble', #{rows: 10}) call VerifyScreenDump(buf, 'Test_winbar_not_visible_custom_statusline', {}) " clean up --- 151,158 ---- wincmd j wincmd _ END ! call writefile(lines, 'XtestWinbarNotVisible', 'D') ! let buf = RunVimInTerminal('-S XtestWinbarNotVisible', #{rows: 10}) call VerifyScreenDump(buf, 'Test_winbar_not_visible_custom_statusline', {}) " clean up *** ../vim-9.0.0827/src/testdir/test_window_cmd.vim 2022-11-01 11:44:12.690558580 +0000 --- src/testdir/test_window_cmd.vim 2022-11-02 12:40:40.646379078 +0000 *************** *** 1267,1273 **** " Test for jumping to a vertical/horizontal neighbor window based on the " current cursor position ! func Test_window_goto_neightbor() %bw! " Vertical window movement --- 1267,1273 ---- " Test for jumping to a vertical/horizontal neighbor window based on the " current cursor position ! func Test_window_goto_neighbor() %bw! " Vertical window movement *** ../vim-9.0.0827/src/version.c 2022-11-01 22:04:31.082780034 +0000 --- src/version.c 2022-11-02 13:29:27.206062462 +0000 *************** *** 697,698 **** --- 697,700 ---- { /* Add new patch number below this line */ + /**/ + 828, /**/ -- The goal of science is to build better mousetraps. The goal of nature is to build better mice. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// \\\ \\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///