Patch 9.0.0828

7 views
Skip to first unread message

Bram Moolenaar

unread,
Nov 2, 2022, 9:33:01 AM11/2/22
to vim...@googlegroups.com

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: <Cmd> mapping must end with <CR> before second <Cmd>"));
! EXTERN char e_cmd_maping_must_not_include_str_key[]
INIT(= N_("E1137: <Cmd> 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: <Cmd> mapping must end with <CR> before second <Cmd>"));
! EXTERN char e_cmd_mapping_must_not_include_str_key[]
INIT(= N_("E1137: <Cmd> 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 *)"<SNR>");
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 *)"<SNR>");
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 <Cmd>let g:counter += 1<CR>
! nnoremap <C-L> <Cmd>throw 'This mapping shoud not be triggered'<CR>

" '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 <Cmd>let g:counter += 1<CR>
! nnoremap <C-L> <Cmd>throw 'This mapping should not be triggered'<CR>

" '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 <buffer> 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 <buffer> 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\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal('"setglobal dictionary diff diffexpr diffopt digraph directory display', @:)

! " Expand boolan options. When doing :set no<Tab>
" vim displays the options names without "no" but completion uses "no...".
call feedkeys(":set nodi\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal('"set nodiff digraph', @:)
--- 274,280 ----
call feedkeys(":setglobal di\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal('"setglobal dictionary diff diffexpr diffopt digraph directory display', @:)

! " Expand boolean options. When doing :set no<Tab>
" vim displays the options names without "no" but completion uses "no...".
call feedkeys(":set nodi\<C-A>\<C-B>\"\<CR>", '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\<RightMouse>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\<RightMouse>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 -- Br...@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 ///
Reply all
Reply to author
Forward
0 new messages