# HG changeset patch # User Bram Moolenaar # Date 1641054602 -3600 # Node ID 6123396796167638d5b15a8974ae9e4387c24880 # Parent 8569717aef6a99ce416ba391dfdcec0d00f8d5a6 patch 8.2.3972: error messages are spread out Commit: https://github.com/vim/vim/commit/3a846e6bca25bd3d0addcd9ed3bdd9a6774adbe5 Author: Bram Moolenaar Date: Sat Jan 1 16:21:00 2022 +0000 patch 8.2.3972: error messages are spread out Problem: Error messages are spread out. Solution: Move the last errors from globals.h to errors.h. diff --git a/src/errors.h b/src/errors.h --- a/src/errors.h +++ b/src/errors.h @@ -528,7 +528,15 @@ EXTERN char e_cannot_allocate_color_str[ EXTERN char e_couldnt_read_in_sign_data[] INIT(= N_("E255: Couldn't read in sign data")); #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[] + INIT(= N_("E328: Menu only exists in another mode")); +#endif EXTERN char e_internal_error_lalloc_zero[] INIT(= N_("E341: Internal error: lalloc(0, )")); EXTERN char e_out_of_memory_allocating_nr_bytes[] @@ -668,6 +676,16 @@ EXTERN char e_not_allowed_to_change_text EXTERN char e_not_allowed_to_change_text_here[] INIT(= N_("E578: Not allowed to change text here")); #ifdef FEAT_EVAL +EXTERN char e_endif_without_if[] + INIT(= N_("E580: :endif without :if")); +EXTERN char e_else_without_if[] + INIT(= N_("E581: :else without :if")); +EXTERN char e_elseif_without_if[] + INIT(= N_("E582: :elseif without :if")); +EXTERN char e_continue_without_while_or_for[] + INIT(= N_("E586: :continue without :while or :for")); +EXTERN char e_break_without_while_or_for[] + INIT(= N_("E587: :break without :while or :for")); EXTERN char e_endwhile_without_while[] INIT(= N_("E588: :endwhile without :while")); EXTERN char e_endfor_without_for[] @@ -716,11 +734,17 @@ EXTERN char e_list_index_out_of_range_nr EXTERN char e_internal_error_str[] INIT(= N_("E685: Internal error: %s")); #ifdef FEAT_EVAL +EXTERN char e_argument_of_str_must_be_list[] + INIT(= N_("E686: Argument of %s must be a List")); +EXTERN char e_missing_in_after_for[] + INIT(= N_("E690: Missing \"in\" after :for")); +// E693 unused EXTERN char e_cannot_index_a_funcref[] INIT(= N_("E695: Cannot index a Funcref")); EXTERN char e_missing_end_of_list_rsb_str[] INIT(= N_("E697: Missing end of List ']': %s")); +// E706 unused EXTERN char e_list_value_has_more_items_than_targets[] INIT(= N_("E710: List value has more items than targets")); EXTERN char e_list_value_does_not_have_enough_items[] @@ -864,6 +888,10 @@ EXTERN char e_attempt_to_delete_buffer_t INIT(= N_("E937: Attempt to delete a buffer that is in use: %s")); EXTERN char e_positive_count_required[] INIT(= N_("E939: Positive count required")); +#ifdef FEAT_EVAL +EXTERN char e_cannot_lock_or_unlock_variable_str[] + INIT(= N_("E940: Cannot lock or unlock variable %s")); +#endif #ifdef FEAT_TERMINAL EXTERN char e_job_still_running[] INIT(= N_("E948: Job still running")); @@ -874,6 +902,8 @@ EXTERN char e_file_changed_while_writing INIT(= N_("E949: File changed while writing")); EXTERN char e_autocommand_caused_recursive_behavior[] INIT(= N_("E952: Autocommand caused recursive behavior")); +EXTERN char e_invalid_window_number[] + INIT(= N_("E957: Invalid window number")); EXTERN char_u e_invalid_column_number_nr[] INIT(= N_("E964: Invalid column number: %ld")); EXTERN char_u e_invalid_line_number_nr[] diff --git a/src/eval.c b/src/eval.c --- a/src/eval.c +++ b/src/eval.c @@ -1632,7 +1632,7 @@ eval_for_line( if (in_vim9script() && *expr == ':' && expr != var_list_end) semsg(_(e_no_white_space_allowed_before_colon_str), expr); else - emsg(_(e_missing_in)); + emsg(_(e_missing_in_after_for)); return fi; } @@ -3888,7 +3888,7 @@ eval_lambda( if (verbose) { if (*skipwhite(*arg) == '(') - emsg(_(e_nowhitespace)); + emsg(_(e_no_white_space_allowed_before_parenthesis)); else semsg(_(e_missing_parenthesis_str), "lambda"); } @@ -3951,7 +3951,7 @@ eval_method( else if (VIM_ISWHITE((*arg)[-1])) { if (verbose) - emsg(_(e_nowhitespace)); + emsg(_(e_no_white_space_allowed_before_parenthesis)); ret = FAIL; } else @@ -5948,7 +5948,7 @@ handle_subscript( { if (VIM_ISWHITE(**arg)) { - emsg(_(e_nowhitespace)); + emsg(_(e_no_white_space_allowed_before_parenthesis)); ret = FAIL; } else if ((**arg == '{' && !in_vim9script()) || **arg == '(') diff --git a/src/evalfunc.c b/src/evalfunc.c --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -3071,7 +3071,7 @@ get_optional_window(typval_T *argvars, i win = find_win_by_nr_or_id(&argvars[idx]); if (win == NULL) { - emsg(_(e_invalwindow)); + emsg(_(e_invalid_window_number)); return NULL; } } @@ -6570,7 +6570,7 @@ f_inputlist(typval_T *argvars, typval_T if (argvars[0].v_type != VAR_LIST || argvars[0].vval.v_list == NULL) { - semsg(_(e_listarg), "inputlist()"); + semsg(_(e_argument_of_str_must_be_list), "inputlist()"); return; } diff --git a/src/evalvars.c b/src/evalvars.c --- a/src/evalvars.c +++ b/src/evalvars.c @@ -1889,7 +1889,7 @@ do_lock_var( *name_end = NUL; if (*lp->ll_name == '$') { - semsg(_(e_lock_unlock), lp->ll_name); + semsg(_(e_cannot_lock_or_unlock_variable_str), lp->ll_name); ret = FAIL; } else @@ -1909,7 +1909,7 @@ do_lock_var( { // For historic reasons this error is not given for a list or // dict. E.g., the b: dict could be locked/unlocked. - semsg(_(e_lock_unlock), lp->ll_name); + semsg(_(e_cannot_lock_or_unlock_variable_str), lp->ll_name); ret = FAIL; } else diff --git a/src/evalwindow.c b/src/evalwindow.c --- a/src/evalwindow.c +++ b/src/evalwindow.c @@ -916,7 +916,7 @@ f_win_splitmove(typval_T *argvars, typva || !win_valid(wp) || !win_valid(targetwin) || win_valid_popup(wp) || win_valid_popup(targetwin)) { - emsg(_(e_invalwindow)); + emsg(_(e_invalid_window_number)); rettv->vval.v_number = -1; return; } diff --git a/src/ex_eval.c b/src/ex_eval.c --- a/src/ex_eval.c +++ b/src/ex_eval.c @@ -1316,7 +1316,7 @@ ex_continue(exarg_T *eap) cstack_T *cstack = eap->cstack; if (cstack->cs_looplevel <= 0 || cstack->cs_idx < 0) - eap->errmsg = _(e_continue); + eap->errmsg = _(e_continue_without_while_or_for); else { // Try to find the matching ":while". This might stop at a try @@ -1354,7 +1354,7 @@ ex_break(exarg_T *eap) cstack_T *cstack = eap->cstack; if (cstack->cs_looplevel <= 0 || cstack->cs_idx < 0) - eap->errmsg = _(e_break); + eap->errmsg = _(e_break_without_while_or_for); else { // Inactivate conditionals until the matching ":while" or a try diff --git a/src/globals.h b/src/globals.h --- a/src/globals.h +++ b/src/globals.h @@ -1600,36 +1600,15 @@ EXTERN int netbeansSuppressNoLines INIT( #endif /* - * Some error messages that can be shared are included here. - * They should be moved to errors.h. + * Some messages that can be shared are included here. */ -#ifdef FEAT_MENU -EXTERN char e_menuothermode[] INIT(= N_("E328: Menu only exists in another mode")); -#endif -EXTERN char e_invalwindow[] INIT(= N_("E957: Invalid window number")); -EXTERN char e_listarg[] INIT(= N_("E686: Argument of %s must be a List")); -#ifdef FEAT_EVAL -EXTERN char e_missing_in[] INIT(= N_("E690: Missing \"in\" after :for")); -EXTERN char e_else_without_if[] INIT(= N_("E581: :else without :if")); -EXTERN char e_elseif_without_if[] INIT(= N_("E582: :elseif without :if")); -EXTERN char e_endif_without_if[] INIT(= N_("E580: :endif without :if")); -EXTERN char e_continue[] INIT(= N_("E586: :continue without :while or :for")); -EXTERN char e_break[] INIT(= N_("E587: :break without :while or :for")); -EXTERN char e_nowhitespace[] INIT(= N_("E274: No white space allowed before parenthesis")); +EXTERN char top_bot_msg[] INIT(= N_("search hit TOP, continuing at BOTTOM")); +EXTERN char bot_top_msg[] INIT(= N_("search hit BOTTOM, continuing at TOP")); -EXTERN char e_lock_unlock[] INIT(= N_("E940: Cannot lock or unlock variable %s")); -#endif - -EXTERN char e_chan_or_job_req[] INIT(= N_("E706: Channel or Job required")); -EXTERN char e_jobreq[] INIT(= N_("E693: Job required")); - -EXTERN char top_bot_msg[] INIT(= N_("search hit TOP, continuing at BOTTOM")); -EXTERN char bot_top_msg[] INIT(= N_("search hit BOTTOM, continuing at TOP")); - -EXTERN char line_msg[] INIT(= N_(" line ")); +EXTERN char line_msg[] INIT(= N_(" line ")); #ifdef FEAT_CRYPT -EXTERN char need_key_msg[] INIT(= N_("Need encryption key for \"%s\"")); +EXTERN char need_key_msg[] INIT(= N_("Need encryption key for \"%s\"")); #endif /* diff --git a/src/list.c b/src/list.c --- a/src/list.c +++ b/src/list.c @@ -992,7 +992,7 @@ flatten_common(typval_T *argvars, typval if (argvars[0].v_type != VAR_LIST) { - semsg(_(e_listarg), "flatten()"); + semsg(_(e_argument_of_str_must_be_list), "flatten()"); return; } @@ -2202,7 +2202,7 @@ do_sort_uniq(typval_T *argvars, typval_T if (argvars[0].v_type != VAR_LIST) { - semsg(_(e_listarg), sort ? "sort()" : "uniq()"); + semsg(_(e_argument_of_str_must_be_list), sort ? "sort()" : "uniq()"); return; } diff --git a/src/match.c b/src/match.c --- a/src/match.c +++ b/src/match.c @@ -949,7 +949,7 @@ matchadd_dict_arg(typval_T *tv, char_u * *win = find_win_by_nr_or_id(&di->di_tv); if (*win == NULL) { - emsg(_(e_invalwindow)); + emsg(_(e_invalid_window_number)); return FAIL; } } @@ -1259,7 +1259,7 @@ f_matchaddpos(typval_T *argvars UNUSED, if (argvars[1].v_type != VAR_LIST) { - semsg(_(e_listarg), "matchaddpos()"); + semsg(_(e_argument_of_str_must_be_list), "matchaddpos()"); return; } l = argvars[1].vval.v_list; diff --git a/src/menu.c b/src/menu.c --- a/src/menu.c +++ b/src/menu.c @@ -959,7 +959,7 @@ remove_menu( else if (*name != NUL) { if (!silent) - emsg(_(e_menuothermode)); + emsg(_(e_menu_only_exists_in_another_mode)); return FAIL; } @@ -1133,7 +1133,7 @@ show_menus(char_u *path_name, int modes) } else if ((menu->modes & modes) == 0x0) { - emsg(_(e_menuothermode)); + emsg(_(e_menu_only_exists_in_another_mode)); vim_free(path_name); return FAIL; } diff --git a/src/popupmenu.c b/src/popupmenu.c --- a/src/popupmenu.c +++ b/src/popupmenu.c @@ -1476,7 +1476,7 @@ pum_show_popupmenu(vimmenu_T *menu) // pum_size being zero. if (pum_size <= 0) { - emsg(e_menuothermode); + emsg(e_menu_only_exists_in_another_mode); return; } diff --git a/src/search.c b/src/search.c --- a/src/search.c +++ b/src/search.c @@ -4807,7 +4807,8 @@ do_fuzzymatch(typval_T *argvars, typval_ // validate and get the arguments if (argvars[0].v_type != VAR_LIST || argvars[0].vval.v_list == NULL) { - semsg(_(e_listarg), retmatchpos ? "matchfuzzypos()" : "matchfuzzy()"); + semsg(_(e_argument_of_str_must_be_list), + retmatchpos ? "matchfuzzypos()" : "matchfuzzy()"); return; } if (argvars[1].v_type != VAR_STRING diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 3972, +/**/ 3971, /**/ 3970, diff --git a/src/vim9cmds.c b/src/vim9cmds.c --- a/src/vim9cmds.c +++ b/src/vim9cmds.c @@ -796,7 +796,7 @@ compile_for(char_u *arg_start, cctx_T *c if (*p == ':' && wp != p) semsg(_(e_no_white_space_allowed_before_colon_str), p); else - emsg(_(e_missing_in)); + emsg(_(e_missing_in_after_for)); return NULL; } wp = p + 2; @@ -1150,7 +1150,7 @@ compile_continue(char_u *arg, cctx_T *cc { if (scope == NULL) { - emsg(_(e_continue)); + emsg(_(e_continue_without_while_or_for)); return NULL; } if (scope->se_type == FOR_SCOPE) @@ -1192,7 +1192,7 @@ compile_break(char_u *arg, cctx_T *cctx) { if (scope == NULL) { - emsg(_(e_break)); + emsg(_(e_break_without_while_or_for)); return NULL; } if (scope->se_type == FOR_SCOPE || scope->se_type == WHILE_SCOPE) diff --git a/src/vim9expr.c b/src/vim9expr.c --- a/src/vim9expr.c +++ b/src/vim9expr.c @@ -1659,7 +1659,7 @@ compile_subscript( if (**arg != '(') { if (*skipwhite(*arg) == '(') - emsg(_(e_nowhitespace)); + emsg(_(e_no_white_space_allowed_before_parenthesis)); else semsg(_(e_missing_parenthesis_str), *arg); return FAIL;