To: vim_dev@googlegroups.com Subject: Patch 8.2.3977 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.3977 Problem: Error messages are spread out. Solution: Move more error messages to errors.h. Files: src/errors.h, src/change.c, src/clientserver.c, src/eval.c, src/gui_xim.c, src/if_cscope.c, src/if_py_both.h, src/if_python.c, src/if_python3.c, src/if_ruby.c, src/if_tcl.c, src/main.c, src/mark.c, src/match.c, src/memfile.c, src/memline.c, src/terminal.c, src/textprop.c, src/userfunc.c *** ../vim-8.2.3976/src/errors.h 2022-01-01 19:33:46.769076797 +0000 --- src/errors.h 2022-01-01 21:57:04.742812219 +0000 *************** *** 592,602 **** EXTERN char e_no_matches_found_for_cscope_query_str_of_str[] INIT(= N_("E259: no matches found for cscope query %s of %s")); #endif ! #ifdef FEAT_EVAL EXTERN char e_no_white_space_allowed_before_parenthesis[] INIT(= N_("E274: No white space allowed before parenthesis")); #endif #ifdef FEAT_MENU EXTERN char e_menu_only_exists_in_another_mode[] --- 592,708 ---- EXTERN char e_no_matches_found_for_cscope_query_str_of_str[] INIT(= N_("E259: no matches found for cscope query %s of %s")); #endif ! #ifdef FEAT_EVAL ! EXTERN char e_missing_name_after_method[] ! INIT(= N_("E260: Missing name after ->")); ! #endif ! #ifdef FEAT_CSCOPE ! EXTERN char e_cscope_connection_str_not_founc[] ! INIT(= N_("E261: cscope connection %s not found")); ! EXTERN char e_error_reading_cscope_connection_nr[] ! INIT(= N_("E262: error reading cscope connection %d")); ! #endif ! #ifdef DYNAMIC_PYTHON ! EXTERN char e_sorry_this_command_is_disabled_python_library_could_not_be_found[] ! INIT(= N_("E263: Sorry, this command is disabled, the Python library could not be loaded.")); ! #endif ! #if defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) ! EXTERN char e_python_error_initialising_io_object[] ! INIT(= N_("E264: Python: Error initialising I/O objects")); ! #endif ! #ifdef FEAT_RUBY ! EXTERN char e_dollar_must_be_an_instance_of_string[] ! INIT(= N_("E265: $_ must be an instance of String")); ! #endif ! #ifdef DYNAMIC_RUBY ! EXTERN char e_sorry_this_command_is_disabled_the_ruby_library_could_not_be_loaded[] ! INIT(= N_("E266: Sorry, this command is disabled, the Ruby library could not be loaded.")); ! #endif ! #ifdef FEAT_RUBY ! EXTERN char e_unexpected_return[] ! INIT(= N_("E267: unexpected return")); ! EXTERN char e_unexpected_next[] ! INIT(= N_("E268: unexpected next")); ! EXTERN char e_unexpected_break[] ! INIT(= N_("E269: unexpected break")); ! EXTERN char e_unexpected_redo[] ! INIT(= N_("E270: unexpected redo")); ! EXTERN char e_retry_outside_of_rescue_clause[] ! INIT(= N_("E271: retry outside of rescue clause")); ! EXTERN char e_unhandled_exception[] ! INIT(= N_("E272: unhandled exception")); ! EXTERN char e_unknown_longjmp_status_nr[] ! INIT(= N_("E273: unknown longjmp status %d")); ! #endif #ifdef FEAT_EVAL EXTERN char e_no_white_space_allowed_before_parenthesis[] INIT(= N_("E274: No white space allowed before parenthesis")); #endif + #ifdef FEAT_PROP_POPUP + EXTERN char e_cannot_add_text_property_to_unloaded_buffer[] + INIT(= N_("E275: Cannot add text property to unloaded buffer")); + #endif + #ifdef FEAT_EVAL + EXTERN char e_cannot_use_function_as_method_str[] + INIT(= N_("E276: Cannot use function as a method: %s")); + #endif + #ifdef FEAT_CLIENTSERVER + EXTERN char e_unable_to_read_server_reply[] + INIT(= N_("E277: Unable to read a server reply")); + #endif + #ifdef FEAT_TERMINAL + EXTERN char e_sorry_plusplusshell_not_supported_on_this_system[] + INIT(= N_("E279: Sorry, ++shell is not supported on this system")); + #endif + #ifdef FEAT_TCL + EXTERN char e_tcl_fatal_error_reflist_corrupt_please_report_this[] + INIT(= N_("E280: TCL FATAL ERROR: reflist corrupt!? Please report this to vim-dev@vim.org")); + #endif + // E281 unused + EXTERN char e_cannot_read_from_str_2[] + INIT(= N_("E282: Cannot read from \"%s\"")); + EXTERN char e_no_marks_matching_str[] + INIT(= N_("E283: No marks matching \"%s\"")); + #ifdef FEAT_XIM + EXTERN char e_cannot_set_ic_values[] + INIT(= N_("E284: Cannot set IC values")); + # if defined(FEAT_GUI_X11) + EXTERN char e_failed_to_create_input_context[] + INIT(= N_("E285: Failed to create input context")); + # endif + EXTERN char e_failed_to_open_input_method[] + INIT(= N_("E286: Failed to open input method")); + EXTERN char e_warning_could_not_set_destroy_callback_to_im[] + INIT(= N_("E287: Warning: Could not set destroy callback to IM")); + EXTERN char e_input_method_doesnt_support_any_style[] + INIT(= N_("E288: input method doesn't support any style")); + EXTERN char e_input_method_doesnt_support_my_preedit_type[] + INIT(= N_("E289: input method doesn't support my preedit type")); + #endif + #ifdef FEAT_SEARCH_EXTRA + EXTERN char e_list_or_number_required[] + INIT(= N_("E290: List or number required")); + #endif + // E291 unused + EXTERN char e_invalid_count_for_del_bytes_nr[] + INIT(= N_("E292: Invalid count for del_bytes(): %ld")); + EXTERN char e_block_was_not_locked[] + INIT(= N_("E293: block was not locked")); + EXTERN char e_seek_error_in_swap_file_read[] + INIT(= N_("E294: Seek error in swap file read")); + EXTERN char e_read_error_in_swap_file[] + INIT(= N_("E295: Read error in swap file")); + EXTERN char e_seek_error_in_swap_file_write[] + INIT(= N_("E296: Seek error in swap file write")); + EXTERN char e_write_error_in_swap_file[] + INIT(= N_("E297: Write error in swap file")); + EXTERN char e_didnt_get_block_nr_zero[] + INIT(= N_("E298: Didn't get block nr 0?")); + EXTERN char e_didnt_get_block_nr_one[] + INIT(= N_("E298: Didn't get block nr 1?")); + EXTERN char e_didnt_get_block_nr_two[] + INIT(= N_("E298: Didn't get block nr 2?")); + // E299 unused #ifdef FEAT_MENU EXTERN char e_menu_only_exists_in_another_mode[] *** ../vim-8.2.3976/src/change.c 2021-12-29 15:15:44.059212358 +0000 --- src/change.c 2022-01-01 21:46:29.276269754 +0000 *************** *** 1247,1253 **** // If "count" is negative the caller must be doing something wrong. if (count < 1) { ! siemsg("E292: Invalid count for del_bytes(): %ld", count); return FAIL; } --- 1247,1253 ---- // If "count" is negative the caller must be doing something wrong. if (count < 1) { ! siemsg(e_invalid_count_for_del_bytes_nr, count); return FAIL; } *** ../vim-8.2.3976/src/clientserver.c 2022-01-01 19:33:46.769076797 +0000 --- src/clientserver.c 2022-01-01 21:33:22.738050574 +0000 *************** *** 929,935 **** || serverReadReply(X_DISPLAY, serverStrToWin(serverid), &r, FALSE, timeout) < 0) # endif ! emsg(_("E277: Unable to read a server reply")); } #endif rettv->v_type = VAR_STRING; --- 929,935 ---- || serverReadReply(X_DISPLAY, serverStrToWin(serverid), &r, FALSE, timeout) < 0) # endif ! emsg(_(e_unable_to_read_server_reply)); } #endif rettv->v_type = VAR_STRING; *** ../vim-8.2.3976/src/eval.c 2022-01-01 16:20:56.896401505 +0000 --- src/eval.c 2022-01-01 21:21:53.067659066 +0000 *************** *** 3936,3942 **** if (len <= 0) { if (verbose) ! emsg(_("E260: Missing name after ->")); ret = FAIL; } else --- 3936,3942 ---- if (len <= 0) { if (verbose) ! emsg(_(e_missing_name_after_method)); ret = FAIL; } else *** ../vim-8.2.3976/src/gui_xim.c 2021-12-12 16:26:35.864627610 +0000 --- src/gui_xim.c 2022-01-01 21:42:30.044815933 +0000 *************** *** 1324,1338 **** XNLineSpace, line_space, NULL); if (XSetICValues(xic, XNPreeditAttributes, attr_list, NULL)) ! emsg(_("E284: Cannot set IC values")); XFree(attr_list); } } - # if defined(FEAT_GUI_X11) - static char e_xim[] = N_("E285: Failed to create input context"); - # endif - # if defined(FEAT_GUI_X11) || defined(PROTO) # if defined(XtSpecificationRelease) && XtSpecificationRelease >= 6 && !defined(SUN_SYSTEM) # define USE_X11R6_XIM --- 1324,1334 ---- XNLineSpace, line_space, NULL); if (XSetICValues(xic, XNPreeditAttributes, attr_list, NULL)) ! emsg(_(e_cannot_set_ic_values)); XFree(attr_list); } } # if defined(FEAT_GUI_X11) || defined(PROTO) # if defined(XtSpecificationRelease) && XtSpecificationRelease >= 6 && !defined(SUN_SYSTEM) # define USE_X11R6_XIM *************** *** 1483,1489 **** if (p_verbose > 0) { verbose_enter(); ! emsg(_("E286: Failed to open input method")); verbose_leave(); } return FALSE; --- 1479,1485 ---- if (p_verbose > 0) { verbose_enter(); ! emsg(_(e_failed_to_open_input_method)); verbose_leave(); } return FALSE; *************** *** 1496,1508 **** destroy_cb.callback = xim_destroy_cb; destroy_cb.client_data = NULL; if (XSetIMValues(xim, XNDestroyCallback, &destroy_cb, NULL)) ! emsg(_("E287: Warning: Could not set destroy callback to IM")); } # endif if (XGetIMValues(xim, XNQueryInputStyle, &xim_styles, NULL) || !xim_styles) { ! emsg(_("E288: input method doesn't support any style")); XCloseIM(xim); return FALSE; } --- 1492,1504 ---- destroy_cb.callback = xim_destroy_cb; destroy_cb.client_data = NULL; if (XSetIMValues(xim, XNDestroyCallback, &destroy_cb, NULL)) ! emsg(_(e_warning_could_not_set_destroy_callback_to_im)); } # endif if (XGetIMValues(xim, XNQueryInputStyle, &xim_styles, NULL) || !xim_styles) { ! emsg(_(e_input_method_doesnt_support_any_style)); XCloseIM(xim); return FALSE; } *************** *** 1561,1567 **** if (p_verbose > 0) { verbose_enter(); ! emsg(_("E289: input method doesn't support my preedit type")); verbose_leave(); } XCloseIM(xim); --- 1557,1563 ---- if (p_verbose > 0) { verbose_enter(); ! emsg(_(e_input_method_doesnt_support_my_preedit_type)); verbose_leave(); } XCloseIM(xim); *************** *** 1625,1631 **** else { if (!is_not_a_term()) ! emsg(_(e_xim)); XCloseIM(xim); return FALSE; } --- 1621,1627 ---- else { if (!is_not_a_term()) ! emsg(_(e_failed_to_create_input_context)); XCloseIM(xim); return FALSE; } *** ../vim-8.2.3976/src/if_cscope.c 2022-01-01 19:33:46.773076795 +0000 --- src/if_cscope.c 2022-01-01 21:24:14.855316226 +0000 *************** *** 636,642 **** cs_reading_emsg( int idx) // connection index { ! semsg(_("E262: error reading cscope connection %d"), idx); } #define CSREAD_BUFSIZE 2048 --- 636,642 ---- cs_reading_emsg( int idx) // connection index { ! semsg(_(e_error_reading_cscope_connection_nr), idx); } #define CSREAD_BUFSIZE 2048 *************** *** 1497,1503 **** if ((i != -1) && (i >= csinfo_size || i < -1 || csinfo[i].fname == NULL)) { if (p_csverbose) ! (void)semsg(_("E261: cscope connection %s not found"), stok); } else { --- 1497,1503 ---- if ((i != -1) && (i >= csinfo_size || i < -1 || csinfo[i].fname == NULL)) { if (p_csverbose) ! (void)semsg(_(e_cscope_connection_str_not_founc), stok); } else { *** ../vim-8.2.3976/src/if_py_both.h 2021-07-22 13:58:43.473967313 +0100 --- src/if_py_both.h 2022-01-01 21:31:37.026284846 +0000 *************** *** 538,544 **** if (PyErr_Occurred()) { ! emsg(_("E264: Python: Error initialising I/O objects")); return -1; } --- 538,544 ---- if (PyErr_Occurred()) { ! emsg(_(e_python_error_initialising_io_object)); return -1; } *** ../vim-8.2.3976/src/if_python.c 2022-01-01 14:19:44.044353848 +0000 --- src/if_python.c 2022-01-01 21:25:17.291166419 +0000 *************** *** 919,925 **** #ifdef DYNAMIC_PYTHON if (!python_enabled(TRUE)) { ! emsg(_("E263: Sorry, this command is disabled, the Python library could not be loaded.")); goto fail; } #endif --- 919,925 ---- #ifdef DYNAMIC_PYTHON if (!python_enabled(TRUE)) { ! emsg(_(e_sorry_this_command_is_disabled_python_library_could_not_be_found)); goto fail; } #endif *** ../vim-8.2.3976/src/if_python3.c 2022-01-01 14:19:44.044353848 +0000 --- src/if_python3.c 2022-01-01 21:25:41.663108081 +0000 *************** *** 1071,1077 **** #ifdef DYNAMIC_PYTHON3 if (!python3_enabled(TRUE)) { ! emsg(_("E263: Sorry, this command is disabled, the Python library could not be loaded.")); goto fail; } #endif --- 1071,1077 ---- #ifdef DYNAMIC_PYTHON3 if (!python3_enabled(TRUE)) { ! emsg(_(e_sorry_this_command_is_disabled_python_library_could_not_be_found)); goto fail; } #endif *** ../vim-8.2.3976/src/if_ruby.c 2022-01-01 14:19:44.044353848 +0000 --- src/if_ruby.c 2022-01-01 21:34:26.225909018 +0000 *************** *** 978,984 **** { if (TYPE(line) != T_STRING) { ! emsg(_("E265: $_ must be an instance of String")); return; } ml_replace(i, (char_u *) StringValuePtr(line), 1); --- 978,984 ---- { if (TYPE(line) != T_STRING) { ! emsg(_(e_dollar_must_be_an_instance_of_string)); return; } ml_replace(i, (char_u *) StringValuePtr(line), 1); *************** *** 1077,1083 **** } else { ! emsg(_("E266: Sorry, this command is disabled, the Ruby library could not be loaded.")); return 0; } #endif --- 1077,1083 ---- } else { ! emsg(_(e_sorry_this_command_is_disabled_the_ruby_library_could_not_be_loaded)); return 0; } #endif *************** *** 1112,1130 **** switch (state) { case TAG_RETURN: ! emsg(_("E267: unexpected return")); break; case TAG_NEXT: ! emsg(_("E268: unexpected next")); break; case TAG_BREAK: ! emsg(_("E269: unexpected break")); break; case TAG_REDO: ! emsg(_("E270: unexpected redo")); break; case TAG_RETRY: ! emsg(_("E271: retry outside of rescue clause")); break; case TAG_RAISE: case TAG_FATAL: --- 1112,1130 ---- switch (state) { case TAG_RETURN: ! emsg(_(e_unexpected_return)); break; case TAG_NEXT: ! emsg(_(e_unexpected_next)); break; case TAG_BREAK: ! emsg(_(e_unexpected_break)); break; case TAG_REDO: ! emsg(_(e_unexpected_redo)); break; case TAG_RETRY: ! emsg(_(e_retry_outside_of_rescue_clause)); break; case TAG_RAISE: case TAG_FATAL: *************** *** 1137,1143 **** einfo = rb_obj_as_string(error); if (eclass == rb_eRuntimeError && RSTRING_LEN(einfo) == 0) { ! emsg(_("E272: unhandled exception")); } else { --- 1137,1143 ---- einfo = rb_obj_as_string(error); if (eclass == rb_eRuntimeError && RSTRING_LEN(einfo) == 0) { ! emsg(_(e_unhandled_exception)); } else { *************** *** 1164,1170 **** #endif break; default: ! vim_snprintf(buff, BUFSIZ, _("E273: unknown longjmp status %d"), state); emsg(buff); break; } --- 1164,1170 ---- #endif break; default: ! vim_snprintf(buff, BUFSIZ, _(e_unknown_longjmp_status_nr), state); emsg(buff); break; } *** ../vim-8.2.3976/src/if_tcl.c 2022-01-01 14:19:44.044353848 +0000 --- src/if_tcl.c 2022-01-01 21:43:45.640643655 +0000 *************** *** 1541,1547 **** reflist = reflist->next; } // This should never happen. Famous last word? ! iemsg(_("E280: TCL FATAL ERROR: reflist corrupt!? Please report this to vim-dev@vim.org")); Tcl_SetResult(interp, _("cannot register callback command: buffer/window reference not found"), TCL_STATIC); return TCL_ERROR; } --- 1541,1547 ---- reflist = reflist->next; } // This should never happen. Famous last word? ! iemsg(_(e_tcl_fatal_error_reflist_corrupt_please_report_this)); Tcl_SetResult(interp, _("cannot register callback command: buffer/window reference not found"), TCL_STATIC); return TCL_ERROR; } *** ../vim-8.2.3976/src/main.c 2022-01-01 14:19:44.048353841 +0000 --- src/main.c 2022-01-01 21:44:33.708533930 +0000 *************** *** 3141,3147 **** else { if (do_source(parmp->use_vimrc, FALSE, DOSO_NONE, NULL) != OK) ! semsg(_("E282: Cannot read from \"%s\""), parmp->use_vimrc); } } else if (!silent_mode) --- 3141,3147 ---- else { if (do_source(parmp->use_vimrc, FALSE, DOSO_NONE, NULL) != OK) ! semsg(_(e_cannot_read_from_str_2), parmp->use_vimrc); } } else if (!silent_mode) *** ../vim-8.2.3976/src/mark.c 2021-12-31 22:48:56.583368902 +0000 --- src/mark.c 2022-01-01 21:45:08.148455265 +0000 *************** *** 732,738 **** if (arg == NULL) msg(_("No marks set")); else ! semsg(_("E283: No marks matching \"%s\""), arg); } } // don't output anything if 'q' typed at --more-- prompt --- 732,738 ---- if (arg == NULL) msg(_("No marks set")); else ! semsg(_(e_no_marks_matching_str), arg); } } // don't output anything if 'q' typed at --more-- prompt *** ../vim-8.2.3976/src/match.c 2022-01-01 16:20:56.900401501 +0000 --- src/match.c 2022-01-01 21:47:08.292180469 +0000 *************** *** 165,171 **** } else { ! emsg(_("E290: List or number required")); goto fail; } if (toplnum == 0 || lnum < toplnum) --- 165,171 ---- } else { ! emsg(_(e_list_or_number_required)); goto fail; } if (toplnum == 0 || lnum < toplnum) *** ../vim-8.2.3976/src/memfile.c 2021-12-05 21:46:31.172891155 +0000 --- src/memfile.c 2022-01-01 21:49:48.671813094 +0000 *************** *** 477,483 **** flags = hp->bh_flags; if ((flags & BH_LOCKED) == 0) ! iemsg(_("E293: block was not locked")); flags &= ~BH_LOCKED; if (dirty) { --- 477,483 ---- flags = hp->bh_flags; if ((flags & BH_LOCKED) == 0) ! iemsg(_(e_block_was_not_locked)); flags &= ~BH_LOCKED; if (dirty) { *************** *** 945,956 **** size = page_size * hp->bh_page_count; if (vim_lseek(mfp->mf_fd, offset, SEEK_SET) != offset) { ! PERROR(_("E294: Seek error in swap file read")); return FAIL; } if ((unsigned)read_eintr(mfp->mf_fd, hp->bh_data, size) != size) { ! PERROR(_("E295: Read error in swap file")); return FAIL; } --- 945,956 ---- size = page_size * hp->bh_page_count; if (vim_lseek(mfp->mf_fd, offset, SEEK_SET) != offset) { ! PERROR(_(e_seek_error_in_swap_file_read)); return FAIL; } if ((unsigned)read_eintr(mfp->mf_fd, hp->bh_data, size) != size) { ! PERROR(_(e_read_error_in_swap_file)); return FAIL; } *************** *** 1021,1027 **** { if (vim_lseek(mfp->mf_fd, offset, SEEK_SET) != offset) { ! PERROR(_("E296: Seek error in swap file write")); return FAIL; } if (mf_write_block(mfp, --- 1021,1027 ---- { if (vim_lseek(mfp->mf_fd, offset, SEEK_SET) != offset) { ! PERROR(_(e_seek_error_in_swap_file_write)); return FAIL; } if (mf_write_block(mfp, *************** *** 1046,1052 **** // successful write or when hitting a key. We keep on trying, // in case some space becomes available. if (!did_swapwrite_msg) ! emsg(_("E297: Write error in swap file")); did_swapwrite_msg = TRUE; return FAIL; } --- 1046,1052 ---- // successful write or when hitting a key. We keep on trying, // in case some space becomes available. if (!did_swapwrite_msg) ! emsg(_(e_write_error_in_swap_file)); did_swapwrite_msg = TRUE; return FAIL; } *** ../vim-8.2.3976/src/memline.c 2021-12-27 17:21:38.012449123 +0000 --- src/memline.c 2022-01-01 21:51:09.999626534 +0000 *************** *** 327,333 **** goto error; if (hp->bh_bnum != 0) { ! iemsg(_("E298: Didn't get block nr 0?")); goto error; } b0p = (ZERO_BL *)(hp->bh_data); --- 327,333 ---- goto error; if (hp->bh_bnum != 0) { ! iemsg(_(e_didnt_get_block_nr_zero)); goto error; } b0p = (ZERO_BL *)(hp->bh_data); *************** *** 377,383 **** goto error; if (hp->bh_bnum != 1) { ! iemsg(_("E298: Didn't get block nr 1?")); goto error; } pp = (PTR_BL *)(hp->bh_data); --- 377,383 ---- goto error; if (hp->bh_bnum != 1) { ! iemsg(_(e_didnt_get_block_nr_one)); goto error; } pp = (PTR_BL *)(hp->bh_data); *************** *** 395,401 **** goto error; if (hp->bh_bnum != 2) { ! iemsg(_("E298: Didn't get block nr 2?")); goto error; } --- 395,401 ---- goto error; if (hp->bh_bnum != 2) { ! iemsg(_(e_didnt_get_block_nr_two)); goto error; } *** ../vim-8.2.3976/src/terminal.c 2022-01-01 14:19:44.056353820 +0000 --- src/terminal.c 2022-01-01 21:35:12.581805307 +0000 *************** *** 935,941 **** vim_snprintf((char *)newcmd, cmdlen, "%s %s %s", p_sh, p_shcf, cmd); cmd = newcmd; # else ! emsg(_("E279: Sorry, ++shell is not supported on this system")); goto theend; # endif #endif --- 935,941 ---- vim_snprintf((char *)newcmd, cmdlen, "%s %s %s", p_sh, p_shcf, cmd); cmd = newcmd; # else ! emsg(_(e_sorry_plusplusshell_not_supported_on_this_system)); goto theend; # endif #endif *** ../vim-8.2.3976/src/textprop.c 2022-01-01 14:19:44.056353820 +0000 --- src/textprop.c 2022-01-01 21:36:18.181658106 +0000 *************** *** 222,228 **** if (buf->b_ml.ml_mfp == NULL) { ! emsg(_("E275: Cannot add text property to unloaded buffer")); return FAIL; } --- 222,228 ---- if (buf->b_ml.ml_mfp == NULL) { ! emsg(_(e_cannot_add_text_property_to_unloaded_buffer)); return FAIL; } *** ../vim-8.2.3976/src/userfunc.c 2022-01-01 15:58:19.122486356 +0000 --- src/userfunc.c 2022-01-01 21:37:06.777548705 +0000 *************** *** 3268,3274 **** break; case FCERR_NOTMETHOD: emsg_funcname( ! N_("E276: Cannot use function as a method: %s"), name); break; case FCERR_DELETED: emsg_funcname(e_function_was_deleted_str, name); --- 3268,3274 ---- break; case FCERR_NOTMETHOD: emsg_funcname( ! N_(e_cannot_use_function_as_method_str), name); break; case FCERR_DELETED: emsg_funcname(e_function_was_deleted_str, name); *** ../vim-8.2.3976/src/version.c 2022-01-01 19:42:11.108600753 +0000 --- src/version.c 2022-01-01 21:58:39.122595280 +0000 *************** *** 751,752 **** --- 751,754 ---- { /* Add new patch number below this line */ + /**/ + 3977, /**/ -- hundred-and-one symptoms of being an internet addict: 183. You move your coffeemaker next to your computer. /// 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 ///