To: vim_dev@googlegroups.com Subject: Patch 8.2.4012 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.4012 Problem: Error messages are spread out. Solution: Move the last error messages to errors.h. Files: src/errors.h, src/channel.c, src/clientserver.c, src/diff.c, src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c, src/gui_w32.c, src/help.c, src/if_mzsch.c, src/if_py_both.h, src/if_python.c, src/job.c, src/json.c, src/list.c, src/option.c, src/optionstr.c, src/quickfix.c, src/regexp.c, src/regexp_nfa.c, src/register.c, src/scriptfile.c, src/sign.c, src/syntax.c, src/tag.c, src/terminal.c, src/textprop.c, src/typval.c, src/undo.c, src/userfunc.c, src/vim9compile.c, src/viminfo.c *** ../vim-8.2.4011/src/errors.h 2022-01-05 18:16:48.638057135 +0000 --- src/errors.h 2022-01-05 20:22:28.904327247 +0000 *************** *** 395,400 **** --- 395,402 ---- INIT(= N_("E179: argument required for %s")); EXTERN char e_invalid_complete_value_str[] INIT(= N_("E180: Invalid complete value: %s")); + EXTERN char e_invalid_address_type_value_str[] + INIT(= N_("E180: Invalid address type value: %s")); EXTERN char e_invalid_attribute_str[] INIT(= N_("E181: Invalid attribute: %s")); EXTERN char e_invalid_command_name[] *************** *** 2024,2064 **** INIT(= N_("E865: (NFA) Regexp end encountered prematurely")); EXTERN char e_nfa_regexp_misplaced_chr[] INIT(= N_("E866: (NFA regexp) Misplaced %c")); ! EXTERN char e_nfa_unknown_operator_z_chr[] ! INIT(= N_("E867: (NFA) Unknown operator '\\z%c'")); ! EXTERN char e_nfa_unknown_operator_percent_chr[] ! INIT(= N_("E867: (NFA) Unknown operator '\\%%%c'")); EXTERN char e_error_building_nfa_with_equivalence_class[] INIT(= N_("E868: Error building NFA with equivalence class!")); ! EXTERN char e_nfa_unknown_operator_at_chr[] ! INIT(= N_("E869: (NFA) Unknown operator '\\@%c'")); ! EXTERN char e_nfa_regexp_invalid_character_class_nr[] INIT(= N_("E877: (NFA regexp) Invalid character class: %d")); ! #ifdef FEAT_PROP_POPUP EXTERN char e_number_required[] INIT(= N_("E889: Number required")); #endif #ifdef FEAT_EVAL EXTERN char e_argument_of_str_must_be_list_dictionary_or_blob[] INIT(= N_("E896: Argument of %s must be a List, Dictionary or Blob")); EXTERN char e_list_or_blob_required[] INIT(= N_("E897: List or Blob required")); #endif ! #ifdef FEAT_EVAL EXTERN char e_using_invalid_value_as_string_str[] INIT(= N_("E908: using an invalid value as a String: %s")); EXTERN char e_cannot_index_special_variable[] INIT(= N_("E909: Cannot index a special variable")); #endif EXTERN char e_directory_not_found_in_str_str[] INIT(= N_("E919: Directory not found in '%s': \"%s\"")); #ifdef FEAT_EVAL EXTERN char e_string_required[] INIT(= N_("E928: String required")); #endif EXTERN char e_buffer_cannot_be_registered[] INIT(= N_("E931: Buffer cannot be registered")); #ifdef FEAT_EVAL --- 2026,2186 ---- INIT(= N_("E865: (NFA) Regexp end encountered prematurely")); EXTERN char e_nfa_regexp_misplaced_chr[] INIT(= N_("E866: (NFA regexp) Misplaced %c")); ! EXTERN char e_nfa_regexp_unknown_operator_z_chr[] ! INIT(= N_("E867: (NFA regexp) Unknown operator '\\z%c'")); ! EXTERN char e_nfa_regexp_unknown_operator_percent_chr[] ! INIT(= N_("E867: (NFA regexp) Unknown operator '\\%%%c'")); EXTERN char e_error_building_nfa_with_equivalence_class[] INIT(= N_("E868: Error building NFA with equivalence class!")); ! EXTERN char e_nfa_regexp_unknown_operator_at_chr[] ! INIT(= N_("E869: (NFA regexp) Unknown operator '\\@%c'")); ! EXTERN char e_nfa_regexp_error_reading_repetition_limits[] ! INIT(= N_("E870: (NFA regexp) Error reading repetition limits")); ! EXTERN char e_nfa_regexp_cant_have_multi_follow_multi[] ! INIT(= N_("E871: (NFA regexp) Can't have a multi follow a multi")); ! EXTERN char e_nfa_regexp_too_many_parens[] ! INIT(= N_("E872: (NFA regexp) Too many '('")); ! EXTERN char e_nfa_regexp_proper_termination_error[] ! INIT(= N_("E873: (NFA regexp) proper termination error")); ! EXTERN char e_nfa_regexp_could_not_pop_stack[] ! INIT(= N_("E874: (NFA regexp) Could not pop the stack!")); ! EXTERN char e_nfa_regexp_while_converting_from_postfix_to_nfa_too_many_stats_left_on_stack[] ! INIT(= N_("E875: (NFA regexp) (While converting from postfix to NFA), too many states left on stack")); ! EXTERN char e_nfa_regexp_not_enough_space_to_store_whole_nfa[] ! INIT(= N_("E876: (NFA regexp) Not enough space to store the whole NFA")); EXTERN char e_nfa_regexp_invalid_character_class_nr[] INIT(= N_("E877: (NFA regexp) Invalid character class: %d")); ! EXTERN char e_nfa_regexp_could_not_allocate_memory_for_branch_traversal[] ! INIT(= N_("E878: (NFA regexp) Could not allocate memory for branch traversal!")); ! EXTERN char e_nfa_regexp_too_many_z[] ! INIT(= N_("E879: (NFA regexp) Too many \\z(")); ! #if defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) ! EXTERN char e_cant_handle_systemexit_of_python_exception_in_vim[] ! INIT(= N_("E880: Can't handle SystemExit of python exception in vim")); ! #endif ! EXTERN char e_line_count_changed_unexpectedly[] ! INIT(= N_("E881: Line count changed unexpectedly")); ! EXTERN char e_uniq_compare_function_failed[] ! INIT(= N_("E882: Uniq compare function failed")); ! EXTERN char e_search_pattern_and_expression_register_may_not_contain_two_or_more_lines[] ! INIT(= N_("E883: search pattern and expression register may not contain two or more lines")); ! EXTERN char e_function_name_cannot_contain_colon_str[] ! INIT(= N_("E884: Function name cannot contain a colon: %s")); ! EXTERN char e_not_possible_to_change_sign_str[] ! INIT(= N_("E885: Not possible to change sign %s")); ! EXTERN char e_cant_rename_viminfo_file_to_str[] ! INIT(= N_("E886: Can't rename viminfo file to %s!")); ! EXTERN char e_sorry_this_command_is_disabled_python_side_module_could_not_be_loaded[] ! INIT(= N_("E887: Sorry, this command is disabled, the Python's site module could not be loaded.")); ! EXTERN char e_nfa_regexp_cannot_repeat_str[] ! INIT(= N_("E888: (NFA regexp) cannot repeat %s")); #ifdef FEAT_PROP_POPUP EXTERN char e_number_required[] INIT(= N_("E889: Number required")); #endif + EXTERN char e_trailing_char_after_rsb_str_str[] + INIT(= N_("E890: trailing char after ']': %s]%s")); + #ifdef FEAT_FLOAT + EXTERN char e_using_funcref_as_float[] + INIT(= N_("E891: Using a Funcref as a Float")); + EXTERN char e_using_string_as_float[] + INIT(= N_("E892: Using a String as a Float")); + EXTERN char e_using_list_as_float[] + INIT(= N_("E893: Using a List as a Float")); + EXTERN char e_using_dictionary_as_float[] + INIT(= N_("E894: Using a Dictionary as a Float")); + #endif + #ifdef FEAT_MZSCHEME + EXTERN char e_sorry_this_command_is_disabled_the_mzscheme_racket_base_module_could_not_be_loaded[] + INIT(= N_("E895: Sorry, this command is disabled, the MzScheme's racket/base module could not be loaded.")); + #endif #ifdef FEAT_EVAL EXTERN char e_argument_of_str_must_be_list_dictionary_or_blob[] INIT(= N_("E896: Argument of %s must be a List, Dictionary or Blob")); EXTERN char e_list_or_blob_required[] INIT(= N_("E897: List or Blob required")); #endif ! EXTERN char e_socket_in_channel_connect[] ! INIT(= N_("E898: socket() in channel_connect()")); ! EXTERN char e_argument_of_str_must_be_list_or_blob[] ! INIT(= N_("E899: Argument of %s must be a List or Blob")); ! EXTERN char e_maxdepth_must_be_non_negative_number[] ! INIT(= N_("E900: maxdepth must be non-negative number")); ! #ifdef FEAT_JOB_CHANNEL ! EXTERN char e_getaddrinfo_in_channel_open_str[] ! INIT(= N_("E901: getaddrinfo() in channel_open(): %s")); ! EXTERN char e_gethostbyname_in_channel_open[] ! INIT(= N_("E901: gethostbyname() in channel_open()")); ! EXTERN char e_cannot_connect_to_port[] ! INIT(= N_("E902: Cannot connect to port")); ! EXTERN char e_received_command_with_non_string_argument[] ! INIT(= N_("E903: received command with non-string argument")); ! EXTERN char e_last_argument_for_expr_call_must_be_number[] ! INIT(= N_("E904: last argument for expr/call must be a number")); ! EXTERN char e_third_argument_for_call_must_be_list[] ! INIT(= N_("E904: third argument for call must be a list")); ! EXTERN char e_received_unknown_command_str[] ! INIT(= N_("E905: received unknown command: %s")); ! EXTERN char e_not_an_open_channel[] ! INIT(= N_("E906: not an open channel")); ! #endif ! #ifdef FEAT_FLOAT ! EXTERN char e_using_special_value_as_float[] ! INIT(= N_("E907: Using a special value as a Float")); ! #endif #ifdef FEAT_EVAL EXTERN char e_using_invalid_value_as_string_str[] INIT(= N_("E908: using an invalid value as a String: %s")); EXTERN char e_cannot_index_special_variable[] INIT(= N_("E909: Cannot index a special variable")); #endif + #ifdef FEAT_JOB_CHANNEL + EXTERN char e_using_job_as_number[] + INIT(= N_("E910: Using a Job as a Number")); + EXTERN char e_using_job_as_float[] + INIT(= N_("E911: Using a Job as a Float")); + EXTERN char e_cannot_use_evalexpr_sendexpr_with_raw_or_nl_channel[] + INIT(= N_("E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel")); + EXTERN char e_using_channel_as_number[] + INIT(= N_("E913: Using a Channel as a Number")); + EXTERN char e_using_channel_as_float[] + INIT(= N_("E914: Using a Channel as a Float")); + #endif + EXTERN char e_in_io_buffer_requires_in_buf_or_in_name_to_be_set[] + INIT(= N_("E915: in_io buffer requires in_buf or in_name to be set")); + + EXTERN char e_not_valid_job[] + INIT(= N_("E916: not a valid job")); + EXTERN char e_cannot_use_callback_with_str[] + INIT(= N_("E917: Cannot use a callback with %s()")); + EXTERN char e_buffer_must_be_loaded_str[] + INIT(= N_("E918: buffer must be loaded: %s")); EXTERN char e_directory_not_found_in_str_str[] INIT(= N_("E919: Directory not found in '%s': \"%s\"")); + EXTERN char e_io_file_requires_name_to_be_set[] + INIT(= N_("E920: _io file requires _name to be set")); + EXTERN char e_invalid_callback_argument[] + INIT(= N_("E921: Invalid callback argument")); + EXTERN char e_expected_dict[] + INIT(= N_("E922: expected a dict")); + EXTERN char e_second_argument_of_function_must_be_list_or_dict[] + INIT(= N_("E923: Second argument of function() must be a list or a dict")); + EXTERN char e_current_window_was_closed[] + INIT(= N_("E924: Current window was closed")); + EXTERN char e_current_quickfix_list_was_changed[] + INIT(= N_("E925: Current quickfix list was changed")); + EXTERN char e_current_location_list_was_changed[] + INIT(= N_("E926: Current location list was changed")); + EXTERN char e_invalid_action_str_1[] + INIT(= N_("E927: Invalid action: '%s'")); #ifdef FEAT_EVAL EXTERN char e_string_required[] INIT(= N_("E928: String required")); #endif + EXTERN char e_too_many_viminfo_temp_files_like_str[] + INIT(= N_("E929: Too many viminfo temp files, like %s!")); + EXTERN char e_cannot_use_redir_inside_execute[] + INIT(= N_("E930: Cannot use :redir inside execute()")); EXTERN char e_buffer_cannot_be_registered[] INIT(= N_("E931: Buffer cannot be registered")); #ifdef FEAT_EVAL *************** *** 2067,2088 **** EXTERN char e_function_was_deleted_str[] INIT(= N_("E933: Function was deleted: %s")); #endif EXTERN char e_cannot_delete_current_group[] INIT(= N_("E936: Cannot delete the current group")); EXTERN char e_attempt_to_delete_buffer_that_is_in_use_str[] 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 EXTERN char e_reverse_range_in_character_class[] INIT(= N_("E944: Reverse range in character class")); EXTERN char e_range_too_large_in_character_class[] INIT(= N_("E945: Range too large in character class")); ! #ifdef FEAT_TERMINAL EXTERN char e_job_still_running[] INIT(= N_("E948: Job still running")); EXTERN char e_job_still_running_add_bang_to_end_the_job[] --- 2189,2225 ---- EXTERN char e_function_was_deleted_str[] INIT(= N_("E933: Function was deleted: %s")); #endif + EXTERN char e_cannot_jump_to_buffer_that_does_not_have_name[] + INIT(= N_("E934: Cannot jump to a buffer that does not have a name")); + EXTERN char e_invalid_submatch_number_nr[] + INIT(= N_("E935: invalid submatch number: %d")); EXTERN char e_cannot_delete_current_group[] INIT(= N_("E936: Cannot delete the current group")); EXTERN char e_attempt_to_delete_buffer_that_is_in_use_str[] INIT(= N_("E937: Attempt to delete a buffer that is in use: %s")); + EXTERN char e_duplicate_key_in_json_str[] + INIT(= N_("E938: Duplicate key in JSON: \"%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 + EXTERN char e_already_started_server[] + INIT(= N_("E941: already started a server")); + EXTERN char e_clientserver_feature_not_available[] + INIT(= N_("E942: +clientserver feature not available")); + EXTERN char e_command_table_needs_to_be_updated_run_make_cmdidxs[] + INIT(= N_("E943: Command table needs to be updated, run 'make cmdidxs'")); EXTERN char e_reverse_range_in_character_class[] INIT(= N_("E944: Reverse range in character class")); EXTERN char e_range_too_large_in_character_class[] INIT(= N_("E945: Range too large in character class")); ! EXTERN char e_cannot_make_terminal_with_running_job_modifiable[] ! INIT(= N_("E946: Cannot make a terminal with running job modifiable")); #ifdef FEAT_TERMINAL + EXTERN char e_job_still_running_in_buffer_str[] + INIT(= N_("E947: Job still running in buffer \"%s\"")); EXTERN char e_job_still_running[] INIT(= N_("E948: Job still running")); EXTERN char e_job_still_running_add_bang_to_end_the_job[] *************** *** 2090,2129 **** #endif EXTERN char e_file_changed_while_writing[] INIT(= N_("E949: File changed while writing")); ! EXTERN char e_percent_value_too_large[] INIT(= N_("E951: \\% value too large")); EXTERN char e_autocommand_caused_recursive_behavior[] INIT(= N_("E952: Autocommand caused recursive behavior")); EXTERN char e_cannot_use_pattern_recursively[] INIT(= N_("E956: Cannot use pattern recursively")); 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[] INIT(= N_("E966: Invalid line number: %ld")); EXTERN char e_blob_value_does_not_have_right_number_of_bytes[] INIT(= N_("E972: Blob value does not have the right number of bytes")); #ifdef FEAT_EVAL EXTERN char e_invalid_operation_for_blob[] INIT(= N_("E978: Invalid operation for Blob")); EXTERN char e_blob_index_out_of_range_nr[] INIT(= N_("E979: Blob index out of range: %ld")); #endif EXTERN char e_duplicate_argument_str[] INIT(= N_("E983: Duplicate argument: %s")); #ifdef FEAT_EVAL EXTERN char e_cannot_modify_existing_variable[] INIT(= N_("E995: Cannot modify existing variable")); ! EXTERN char e_cannot_lock_an_option[] INIT(= N_("E996: Cannot lock an option")); EXTERN char e_reduce_of_an_empty_str_with_no_initial_value[] INIT(= N_("E998: Reduce of an empty %s with no initial value")); #endif ! ! EXTERN char e_command_not_supported_in_vim9_script_missing_var_str[] ! INIT(= N_("E1100: Command not supported in Vim9 script (missing :var?): %s")); #ifdef FEAT_EVAL EXTERN char e_variable_not_found_str[] INIT(= N_("E1001: Variable not found: %s")); --- 2227,2349 ---- #endif EXTERN char e_file_changed_while_writing[] INIT(= N_("E949: File changed while writing")); ! EXTERN char e_cannot_convert_between_str_and_str[] ! INIT(= N_("E950: Cannot convert between %s and %s")); EXTERN char e_percent_value_too_large[] INIT(= N_("E951: \\% value too large")); EXTERN char e_autocommand_caused_recursive_behavior[] INIT(= N_("E952: Autocommand caused recursive behavior")); + EXTERN char e_file_exists_str[] + INIT(= N_("E953: File exists: %s")); + EXTERN char e_24_bit_colors_are_not_supported_on_this_environment[] + INIT(= N_("E954: 24-bit colors are not supported on this environment")); + EXTERN char e_not_terminal_buffer[] + INIT(= N_("E955: Not a terminal buffer")); EXTERN char e_cannot_use_pattern_recursively[] INIT(= N_("E956: Cannot use pattern recursively")); EXTERN char e_invalid_window_number[] INIT(= N_("E957: Invalid window number")); + EXTERN char e_job_already_finished[] + INIT(= N_("E958: Job already finished")); + EXTERN char e_invalid_diff_format[] + INIT(= N_("E959: Invalid diff format.")); + EXTERN char e_problem_creating_internal_diff[] + INIT(= N_("E960: Problem creating the internal diff")); + EXTERN char e_no_line_number_to_use_for_sflnum[] + INIT(= N_("E961: no line number to use for \"\"")); + EXTERN char e_invalid_action_str_2[] + INIT(= N_("E962: Invalid action: '%s'")); + EXTERN char e_setting_str_to_value_with_wrong_type[] + INIT(= N_("E963: setting %s to value with wrong type")); EXTERN char_u e_invalid_column_number_nr[] INIT(= N_("E964: Invalid column number: %ld")); + EXTERN char e_missing_property_type_name[] + INIT(= N_("E965: missing property type name")); EXTERN char_u e_invalid_line_number_nr[] INIT(= N_("E966: Invalid line number: %ld")); + EXTERN char e_text_property_info_corrupted[] + INIT(= N_("E967: text property info corrupted")); + EXTERN char e_need_at_least_one_of_id_or_type[] + INIT(= N_("E968: Need at least one of 'id' or 'type'")); + EXTERN char e_property_type_str_already_defined[] + INIT(= N_("E969: Property type %s already defined")); + EXTERN char e_unknown_highlight_group_name_str[] + INIT(= N_("E970: Unknown highlight group name: '%s'")); + EXTERN char e_type_not_exist[] + INIT(= N_("E971: Property type %s does not exist")); EXTERN char e_blob_value_does_not_have_right_number_of_bytes[] INIT(= N_("E972: Blob value does not have the right number of bytes")); + EXTERN char e_blob_literal_should_have_an_even_number_of_hex_characters[] + INIT(= N_("E973: Blob literal should have an even number of hex characters")); + EXTERN char e_using_blob_as_number[] + INIT(= N_("E974: Using a Blob as a Number")); + EXTERN char e_using_blob_as_float[] + INIT(= N_("E975: Using a Blob as a Float")); + EXTERN char e_using_blob_as_string[] + INIT(= N_("E976: Using a Blob as a String")); + EXTERN char e_can_only_compare_blob_with_blob[] + INIT(= N_("E977: Can only compare Blob with Blob")); #ifdef FEAT_EVAL EXTERN char e_invalid_operation_for_blob[] INIT(= N_("E978: Invalid operation for Blob")); EXTERN char e_blob_index_out_of_range_nr[] INIT(= N_("E979: Blob index out of range: %ld")); #endif + EXTERN char e_lowlevel_input_not_supported[] + INIT(= N_("E980: lowlevel input not supported")); + EXTERN char e_command_not_allowed_in_rvim[] + INIT(= N_("E981: Command not allowed in rvim")); + EXTERN char e_conpty_is_not_available[] + INIT(= N_("E982: ConPTY is not available")); EXTERN char e_duplicate_argument_str[] INIT(= N_("E983: Duplicate argument: %s")); + EXTERN char e_scriptversion_used_outside_of_sourced_file[] + INIT(= N_("E984: :scriptversion used outside of a sourced file")); #ifdef FEAT_EVAL + EXTERN char e_dot_equal_not_supported_with_script_version_two[] + INIT(= N_("E985: .= is not supported with script version >= 2")); + EXTERN char e_cannot_modify_tag_stack_within_tagfunc[] + INIT(= N_("E986: cannot modify the tag stack within tagfunc")); + EXTERN char e_invalid_return_value_from_tagfunc[] + INIT(= N_("E987: invalid return value from tagfunc")); + #endif + EXTERN char e_gui_cannot_be_used_cannot_execute_gvim_exe[] + INIT(= N_("E988: GUI cannot be used. Cannot execute gvim.exe.")); + EXTERN char e_non_default_argument_follows_default_argument[] + INIT(= N_("E989: Non-default argument follows default argument")); + #ifdef FEAT_EVAL + EXTERN char e_missing_end_marker_str[] + INIT(= N_("E990: Missing end marker '%s'")); + EXTERN char e_cannot_use_heredoc_here[] + INIT(= N_("E991: cannot use =<< here")); + EXTERN char e_not_allowed_in_modeline_when_modelineexpr_is_off[] + INIT(= N_("E992: Not allowed in a modeline when 'modelineexpr' is off")); + EXTERN char e_window_nr_is_not_popup_window[] + INIT(= N_("E993: window %d is not a popup window")); + EXTERN char e_not_allowed_in_popup_window[] + INIT(= N_("E994: Not allowed in a popup window")); EXTERN char e_cannot_modify_existing_variable[] INIT(= N_("E995: Cannot modify existing variable")); ! EXTERN char e_cannot_lock_range[] ! INIT(= N_("E996: Cannot lock a range")); ! EXTERN char e_cannot_lock_option[] INIT(= N_("E996: Cannot lock an option")); + EXTERN char e_cannot_lock_list_or_dict[] + INIT(= N_("E996: Cannot lock a list or dict")); + EXTERN char e_cannot_lock_environment_variable[] + INIT(= N_("E996: Cannot lock an environment variable")); + EXTERN char e_cannot_lock_register[] + INIT(= N_("E996: Cannot lock a register")); + #endif + EXTERN char e_tabpage_not_found_nr[] + INIT(= N_("E997: Tabpage not found: %d")); + #ifdef FEAT_EVAL EXTERN char e_reduce_of_an_empty_str_with_no_initial_value[] INIT(= N_("E998: Reduce of an empty %s with no initial value")); #endif ! EXTERN char e_scriptversion_not_supported_nr[] ! INIT(= N_("E999: scriptversion not supported: %d")); ! // E1000 unused #ifdef FEAT_EVAL EXTERN char e_variable_not_found_str[] INIT(= N_("E1001: Variable not found: %s")); *************** *** 2329,2334 **** --- 2549,2558 ---- INIT(= N_("E1098: String, List or Blob required")); EXTERN char e_unknown_error_while_executing_str[] INIT(= N_("E1099: Unknown error while executing %s")); + #endif + EXTERN char e_command_not_supported_in_vim9_script_missing_var_str[] + INIT(= N_("E1100: Command not supported in Vim9 script (missing :var?): %s")); + #ifdef FEAT_EVAL EXTERN char e_cannot_declare_script_variable_in_function[] INIT(= N_("E1101: Cannot declare a script variable in a function: %s")); EXTERN char e_lambda_function_not_found_str[] *** ../vim-8.2.4011/src/channel.c 2022-01-04 19:57:50.926919998 +0000 --- src/channel.c 2022-01-05 19:18:51.773600709 +0000 *************** *** 707,714 **** #endif // FEAT_GUI - static char *e_cannot_connect = N_("E902: Cannot connect to port"); - /* * For Unix we need to call connect() again after connect() failed. * On Win32 one time is sufficient. --- 707,712 ---- *************** *** 737,743 **** if (sd == -1) { ch_error(channel, "in socket() in channel_connect()."); ! PERROR(_("E898: socket() in channel_connect()")); return -1; } --- 735,741 ---- if (sd == -1) { ch_error(channel, "in socket() in channel_connect()."); ! PERROR(_(e_socket_in_channel_connect)); return -1; } *************** *** 778,784 **** { ch_error(channel, "channel_connect: Connect failed with errno %d", errno); ! PERROR(_(e_cannot_connect)); sock_close(sd); return -1; } --- 776,782 ---- { ch_error(channel, "channel_connect: Connect failed with errno %d", errno); ! PERROR(_(e_cannot_connect_to_port)); sock_close(sd); return -1; } *************** *** 824,830 **** SOCK_ERRNO; ch_error(channel, "channel_connect: Connect failed with errno %d", errno); ! PERROR(_(e_cannot_connect)); sock_close(sd); return -1; } --- 822,828 ---- SOCK_ERRNO; ch_error(channel, "channel_connect: Connect failed with errno %d", errno); ! PERROR(_(e_cannot_connect_to_port)); sock_close(sd); return -1; } *************** *** 863,869 **** ch_error(channel, "channel_connect: Connect failed with errno %d", so_error); ! PERROR(_(e_cannot_connect)); sock_close(sd); return -1; } --- 861,867 ---- ch_error(channel, "channel_connect: Connect failed with errno %d", so_error); ! PERROR(_(e_cannot_connect_to_port)); sock_close(sd); return -1; } *************** *** 982,989 **** if ((err = getaddrinfo(hostname, NULL, &hints, &res)) != 0) { ch_error(channel, "in getaddrinfo() in channel_open()"); ! semsg(_("E901: getaddrinfo() in channel_open(): %s"), ! gai_strerror(err)); channel_free(channel); return NULL; } --- 980,986 ---- if ((err = getaddrinfo(hostname, NULL, &hints, &res)) != 0) { ch_error(channel, "in getaddrinfo() in channel_open()"); ! semsg(_(e_getaddrinfo_in_channel_open_str), gai_strerror(err)); channel_free(channel); return NULL; } *************** *** 1047,1053 **** if ((host = gethostbyname(hostname)) == NULL) { ch_error(channel, "in gethostbyname() in channel_open()"); ! PERROR(_("E901: gethostbyname() in channel_open()")); channel_free(channel); return NULL; } --- 1044,1050 ---- if ((host = gethostbyname(hostname)) == NULL) { ch_error(channel, "in gethostbyname() in channel_open()"); ! PERROR(_(e_gethostbyname_in_channel_open)); channel_free(channel); return NULL; } *************** *** 2480,2486 **** { ch_error(channel, "received command with non-string argument"); if (p_verbose > 2) ! emsg(_("E903: received command with non-string argument")); return; } arg = argv[1].vval.v_string; --- 2477,2483 ---- { ch_error(channel, "received command with non-string argument"); if (p_verbose > 2) ! emsg(_(e_received_command_with_non_string_argument)); return; } arg = argv[1].vval.v_string; *************** *** 2537,2549 **** { ch_error(channel, "last argument for expr/call must be a number"); if (p_verbose > 2) ! emsg(_("E904: last argument for expr/call must be a number")); } else if (is_call && argv[2].v_type != VAR_LIST) { ch_error(channel, "third argument for call must be a list"); if (p_verbose > 2) ! emsg(_("E904: third argument for call must be a list")); } else { --- 2534,2546 ---- { ch_error(channel, "last argument for expr/call must be a number"); if (p_verbose > 2) ! emsg(_(e_last_argument_for_expr_call_must_be_number)); } else if (is_call && argv[2].v_type != VAR_LIST) { ch_error(channel, "third argument for call must be a list"); if (p_verbose > 2) ! emsg(_(e_third_argument_for_call_must_be_list)); } else { *************** *** 2600,2606 **** else if (p_verbose > 2) { ch_error(channel, "Received unknown command: %s", (char *)cmd); ! semsg(_("E905: received unknown command: %s"), cmd); } } --- 2597,2603 ---- else if (p_verbose > 2) { ch_error(channel, "Received unknown command: %s", (char *)cmd); ! semsg(_(e_received_unknown_command_str), cmd); } } *************** *** 3843,3849 **** if (check_open && (channel == NULL || (!channel_is_open(channel) && !(reading && has_readahead)))) { ! emsg(_("E906: not an open channel")); return NULL; } return channel; --- 3840,3846 ---- if (check_open && (channel == NULL || (!channel_is_open(channel) && !(reading && has_readahead)))) { ! emsg(_(e_not_an_open_channel)); return NULL; } return channel; *************** *** 4245,4251 **** { if (eval) { ! semsg(_("E917: Cannot use a callback with %s()"), fun); return NULL; } channel_set_req_callback(channel, *part_read, &opt->jo_callback, id); --- 4242,4248 ---- { if (eval) { ! semsg(_(e_cannot_use_callback_with_str), fun); return NULL; } channel_set_req_callback(channel, *part_read, &opt->jo_callback, id); *************** *** 4290,4296 **** ch_mode = channel_get_mode(channel, part_send); if (ch_mode == MODE_RAW || ch_mode == MODE_NL) { ! emsg(_("E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel")); return; } --- 4287,4293 ---- ch_mode = channel_get_mode(channel, part_send); if (ch_mode == MODE_RAW || ch_mode == MODE_NL) { ! emsg(_(e_cannot_use_evalexpr_sendexpr_with_raw_or_nl_channel)); return; } *** ../vim-8.2.4011/src/clientserver.c 2022-01-01 21:59:11.030521935 +0000 --- src/clientserver.c 2022-01-05 19:32:10.728052437 +0000 *************** *** 972,978 **** if (server == NULL) return; // type error; errmsg already given if (serverName != NULL) ! emsg(_("E941: already started a server")); else { # ifdef FEAT_X11 --- 972,978 ---- if (server == NULL) return; // type error; errmsg already given if (serverName != NULL) ! emsg(_(e_already_started_server)); else { # ifdef FEAT_X11 *************** *** 983,989 **** # endif } #else ! emsg(_("E942: +clientserver feature not available")); #endif } --- 983,989 ---- # endif } #else ! emsg(_(e_clientserver_feature_not_available)); #endif } *** ../vim-8.2.4011/src/diff.c 2022-01-05 17:49:10.873225135 +0000 --- src/diff.c 2022-01-05 19:38:11.784190132 +0000 *************** *** 1139,1145 **** &diffio->dio_new.din_mmfile, ¶m, &emit_cfg, &emit_cb) < 0) { ! emsg(_("E960: Problem creating the internal diff")); return FAIL; } return OK; --- 1139,1145 ---- &diffio->dio_new.din_mmfile, ¶m, &emit_cfg, &emit_cb) < 0) { ! emsg(_(e_problem_creating_internal_diff)); return FAIL; } return OK; *************** *** 1733,1739 **** } else { ! emsg(_("E959: Invalid diff format.")); break; } } --- 1733,1739 ---- } else { ! emsg(_(e_invalid_diff_format)); break; } } *** ../vim-8.2.4011/src/evalfunc.c 2022-01-05 16:08:59.516426454 +0000 --- src/evalfunc.c 2022-01-05 20:20:02.220737662 +0000 *************** *** 2889,2895 **** buf = tv_get_buf(arg, FALSE); --emsg_off; if (buf == NULL) ! semsg(_("E158: Invalid buffer name: %s"), tv_get_string(arg)); return buf; } --- 2889,2895 ---- buf = tv_get_buf(arg, FALSE); --emsg_off; if (buf == NULL) ! semsg(_(e_invalid_buffer_name_str), tv_get_string(arg)); return buf; } *************** *** 3983,3989 **** add_to_input_buf(keys + idx, 1); } #else ! emsg(_("E980: lowlevel input not supported")); #endif } else --- 3983,3989 ---- add_to_input_buf(keys + idx, 1); } #else ! emsg(_(e_lowlevel_input_not_supported)); #endif } else *************** *** 4147,4153 **** { if (argvars[dict_idx].v_type != VAR_DICT) { ! emsg(_("E922: expected a dict")); vim_free(name); goto theend; } --- 4147,4153 ---- { if (argvars[dict_idx].v_type != VAR_DICT) { ! emsg(_(e_expected_dict)); vim_free(name); goto theend; } *************** *** 4158,4164 **** { if (argvars[arg_idx].v_type != VAR_LIST) { ! emsg(_("E923: Second argument of function() must be a list or a dict")); vim_free(name); goto theend; } --- 4158,4164 ---- { if (argvars[arg_idx].v_type != VAR_LIST) { ! emsg(_(e_second_argument_of_function_must_be_list_or_dict)); vim_free(name); goto theend; } *************** *** 9199,9205 **** static void f_settagstack(typval_T *argvars, typval_T *rettv) { - static char *e_invact2 = N_("E962: Invalid action: '%s'"); win_T *wp; dict_T *d; int action = 'r'; --- 9199,9204 ---- *************** *** 9242,9248 **** action = *actstr; else { ! semsg(_(e_invact2), actstr); return; } } --- 9241,9247 ---- action = *actstr; else { ! semsg(_(e_invalid_action_str_2), actstr); return; } } *************** *** 9611,9617 **** return; if (no < 0 || no >= NSUBEXP) { ! semsg(_("E935: invalid submatch number: %d"), no); return; } if (argvars[1].v_type != VAR_UNKNOWN) --- 9610,9616 ---- return; if (no < 0 || no >= NSUBEXP) { ! semsg(_(e_invalid_submatch_number_nr), no); return; } if (argvars[1].v_type != VAR_UNKNOWN) *** ../vim-8.2.4011/src/evalvars.c 2022-01-05 16:08:59.516426454 +0000 --- src/evalvars.c 2022-01-05 20:08:59.331424125 +0000 *************** *** 592,598 **** if (eap->getline == NULL) { ! emsg(_("E991: cannot use =<< here")); return NULL; } --- 592,598 ---- if (eap->getline == NULL) { ! emsg(_(e_cannot_use_heredoc_here)); return NULL; } *************** *** 657,663 **** theline = eap->getline(NUL, eap->cookie, 0, FALSE); if (theline == NULL) { ! semsg(_("E990: Missing end marker '%s'"), marker); break; } --- 657,663 ---- theline = eap->getline(NUL, eap->cookie, 0, FALSE); if (theline == NULL) { ! semsg(_(e_missing_end_marker_str), marker); break; } *************** *** 796,802 **** if (*arg == '[') emsg(_(e_invalid_argument)); else if (expr[0] == '.' && expr[1] == '=') ! emsg(_("E985: .= is not supported with script version >= 2")); else if (!ends_excmd2(eap->cmd, arg)) { if (vim9script) --- 796,802 ---- if (*arg == '[') emsg(_(e_invalid_argument)); else if (expr[0] == '.' && expr[1] == '=') ! emsg(_(e_dot_equal_not_supported_with_script_version_two)); else if (!ends_excmd2(eap->cmd, arg)) { if (vim9script) *************** *** 1309,1315 **** if ((flags & (ASSIGN_CONST | ASSIGN_FINAL)) && (flags & ASSIGN_FOR_LOOP) == 0) { ! emsg(_("E996: Cannot lock an environment variable")); return NULL; } --- 1309,1315 ---- if ((flags & (ASSIGN_CONST | ASSIGN_FINAL)) && (flags & ASSIGN_FOR_LOOP) == 0) { ! emsg(_(e_cannot_lock_environment_variable)); return NULL; } *************** *** 1376,1382 **** if ((flags & (ASSIGN_CONST | ASSIGN_FINAL)) && (flags & ASSIGN_FOR_LOOP) == 0) { ! emsg(_(e_cannot_lock_an_option)); return NULL; } --- 1376,1382 ---- if ((flags & (ASSIGN_CONST | ASSIGN_FINAL)) && (flags & ASSIGN_FOR_LOOP) == 0) { ! emsg(_(e_cannot_lock_option)); return NULL; } *************** *** 1502,1508 **** if ((flags & (ASSIGN_CONST | ASSIGN_FINAL)) && (flags & ASSIGN_FOR_LOOP) == 0) { ! emsg(_("E996: Cannot lock a register")); return NULL; } ++arg; --- 1502,1508 ---- if ((flags & (ASSIGN_CONST | ASSIGN_FINAL)) && (flags & ASSIGN_FOR_LOOP) == 0) { ! emsg(_(e_cannot_lock_register)); return NULL; } ++arg; *************** *** 3493,3499 **** } else if (di->di_tv.v_type != tv->v_type) { ! semsg(_("E963: setting %s to value with wrong type"), name); goto failed; } } --- 3493,3499 ---- } else if (di->di_tv.v_type != tv->v_type) { ! semsg(_(e_setting_str_to_value_with_wrong_type), name); goto failed; } } *************** *** 4482,4488 **** if (r == FAIL) { ! emsg(_("E921: Invalid callback argument")); res.cb_name = NULL; } } --- 4482,4488 ---- if (r == FAIL) { ! emsg(_(e_invalid_callback_argument)); res.cb_name = NULL; } } *** ../vim-8.2.4011/src/ex_cmds2.c 2022-01-04 21:30:43.533800364 +0000 --- src/ex_cmds2.c 2022-01-05 19:32:56.319957286 +0000 *************** *** 363,370 **** if ( #ifdef FEAT_TERMINAL term_job_running(buf->b_term) ! ? semsg(_("E947: Job still running in buffer \"%s\""), ! buf->b_fname) : #endif semsg(_(e_no_write_since_last_change_for_buffer_str), --- 363,369 ---- if ( #ifdef FEAT_TERMINAL term_job_running(buf->b_term) ! ? semsg(_(e_job_still_running_in_buffer_str), buf->b_fname) : #endif semsg(_(e_no_write_since_last_change_for_buffer_str), *** ../vim-8.2.4011/src/ex_docmd.c 2022-01-05 17:49:10.873225135 +0000 --- src/ex_docmd.c 2022-01-05 20:00:56.983979085 +0000 *************** *** 2082,2088 **** #endif if (restricted != 0 && (ea.argt & EX_RESTRICT)) { ! errormsg = _("E981: Command not allowed in rvim"); goto doend; } if (!curbuf->b_p_ma && (ea.argt & EX_MODIFY)) --- 2082,2088 ---- #endif if (restricted != 0 && (ea.argt & EX_RESTRICT)) { ! errormsg = _(e_command_not_allowed_in_rvim); goto doend; } if (!curbuf->b_p_ma && (ea.argt & EX_MODIFY)) *************** *** 3715,3721 **** if (command_count != (int)CMD_SIZE) { ! iemsg(_("E943: Command table needs to be updated, run 'make cmdidxs'")); getout(1); } --- 3715,3721 ---- if (command_count != (int)CMD_SIZE) { ! iemsg(_(e_command_table_needs_to_be_updated_run_make_cmdidxs)); getout(1); } *************** *** 8058,8064 **** #ifdef FEAT_EVAL if (redir_execute) { ! emsg(_("E930: Cannot use :redir inside execute()")); return; } #endif --- 8058,8064 ---- #ifdef FEAT_EVAL if (redir_execute) { ! emsg(_(e_cannot_use_redir_inside_execute)); return; } #endif *************** *** 9158,9164 **** case SPEC_SFLNUM: // line in script file if (current_sctx.sc_lnum + SOURCING_LNUM == 0) { ! *errormsg = _("E961: no line number to use for \"\""); return NULL; } sprintf((char *)strbuf, "%ld", --- 9158,9164 ---- case SPEC_SFLNUM: // line in script file if (current_sctx.sc_lnum + SOURCING_LNUM == 0) { ! *errormsg = _(e_no_line_number_to_use_for_sflnum); return NULL; } sprintf((char *)strbuf, "%ld", *** ../vim-8.2.4011/src/gui_w32.c 2022-01-04 21:30:43.537800355 +0000 --- src/gui_w32.c 2022-01-05 20:01:44.595927618 +0000 *************** *** 4991,4997 **** static char * gvim_error(void) { ! char *msg = _("E988: GUI cannot be used. Cannot execute gvim.exe."); if (starting) { --- 4991,4997 ---- static char * gvim_error(void) { ! char *msg = _(e_gui_cannot_be_used_cannot_execute_gvim_exe); if (starting) { *** ../vim-8.2.4011/src/help.c 2022-01-04 21:30:43.537800355 +0000 --- src/help.c 2022-01-05 20:20:59.688571867 +0000 *************** *** 1201,1207 **** EW_FILE|EW_SILENT) == FAIL || filecount == 0) { ! semsg(_("E151: No match: %s"), NameBuff); return; } --- 1201,1207 ---- EW_FILE|EW_SILENT) == FAIL || filecount == 0) { ! semsg(_(e_no_match_str_1), NameBuff); return; } *** ../vim-8.2.4011/src/if_mzsch.c 2022-01-05 17:49:10.877225131 +0000 --- src/if_mzsch.c 2022-01-05 19:07:40.854388620 +0000 *************** *** 1248,1254 **** #endif if (load_base_module_failed || startup_mzscheme()) { ! emsg(_("E895: Sorry, this command is disabled, the MzScheme's racket/base module could not be loaded.")); return -1; } initialized = TRUE; --- 1248,1254 ---- #endif if (load_base_module_failed || startup_mzscheme()) { ! emsg(_(e_sorry_this_command_is_disabled_the_mzscheme_racket_base_module_could_not_be_loaded)); return -1; } initialized = TRUE; *** ../vim-8.2.4011/src/if_py_both.h 2022-01-05 17:49:10.877225131 +0000 --- src/if_py_both.h 2022-01-05 19:04:04.690372768 +0000 *************** *** 13,20 **** * Common code for if_python.c and if_python3.c. */ - static char_u e_py_systemexit[] = "E880: Can't handle SystemExit of %s exception in vim"; - #if PY_VERSION_HEX < 0x02050000 typedef int Py_ssize_t; // Python 2.4 and earlier don't have this type. #endif --- 13,18 ---- *************** *** 5697,5703 **** } else if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_SystemExit)) { ! semsg(_(e_py_systemexit), "python"); PyErr_Clear(); } else --- 5695,5701 ---- } else if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_SystemExit)) { ! emsg(_(e_cant_handle_systemexit_of_python_exception_in_vim)); PyErr_Clear(); } else *************** *** 5742,5748 **** else if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_SystemExit)) { PyMem_Free(code); ! semsg(_(e_py_systemexit), "python"); PyErr_Clear(); return; } --- 5740,5746 ---- else if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_SystemExit)) { PyMem_Free(code); ! emsg(_(e_cant_handle_systemexit_of_python_exception_in_vim)); PyErr_Clear(); return; } *************** *** 5843,5849 **** { if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_SystemExit)) { ! semsg(_(e_py_systemexit), "python"); PyErr_Clear(); } else --- 5841,5847 ---- { if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_SystemExit)) { ! emsg(_(e_cant_handle_systemexit_of_python_exception_in_vim)); PyErr_Clear(); } else *** ../vim-8.2.4011/src/if_python.c 2022-01-05 17:49:10.877225131 +0000 --- src/if_python.c 2022-01-05 18:57:05.222777992 +0000 *************** *** 951,957 **** site = PyImport_ImportModule("site"); if (site == NULL) { ! emsg(_("E887: Sorry, this command is disabled, the Python's site module could not be loaded.")); goto fail; } Py_DECREF(site); --- 951,957 ---- site = PyImport_ImportModule("site"); if (site == NULL) { ! emsg(_(e_sorry_this_command_is_disabled_python_side_module_could_not_be_loaded)); goto fail; } Py_DECREF(site); *** ../vim-8.2.4011/src/job.c 2022-01-01 14:19:44.044353848 +0000 --- src/job.c 2022-01-05 19:25:29.256867276 +0000 *************** *** 1320,1326 **** && (!(opt.jo_set & (JO_OUT_NAME << (part - PART_OUT))) || *opt.jo_io_name[part] == NUL)) { ! emsg(_("E920: _io file requires _name to be set")); goto theend; } --- 1320,1326 ---- && (!(opt.jo_set & (JO_OUT_NAME << (part - PART_OUT))) || *opt.jo_io_name[part] == NUL)) { ! emsg(_(e_io_file_requires_name_to_be_set)); goto theend; } *************** *** 1338,1344 **** } else if (!(opt.jo_set & JO_IN_NAME)) { ! emsg(_("E915: in_io buffer requires in_buf or in_name to be set")); } else buf = buflist_find_by_name(opt.jo_io_name[PART_IN], FALSE); --- 1338,1344 ---- } else if (!(opt.jo_set & JO_IN_NAME)) { ! emsg(_(e_in_io_buffer_requires_in_buf_or_in_name_to_be_set)); } else buf = buflist_find_by_name(opt.jo_io_name[PART_IN], FALSE); *************** *** 1356,1362 **** } else s = opt.jo_io_name[PART_IN]; ! semsg(_("E918: buffer must be loaded: %s"), s); goto theend; } job->jv_in_buf = buf; --- 1356,1362 ---- } else s = opt.jo_io_name[PART_IN]; ! semsg(_(e_buffer_must_be_loaded_str), s); goto theend; } job->jv_in_buf = buf; *************** *** 1781,1787 **** job = tv->vval.v_job; if (job == NULL) ! emsg(_("E916: not a valid job")); return job; } --- 1781,1787 ---- job = tv->vval.v_job; if (job == NULL) ! emsg(_(e_not_valid_job)); return job; } *** ../vim-8.2.4011/src/json.c 2022-01-02 20:20:41.377033186 +0000 --- src/json.c 2022-01-05 19:30:28.940263280 +0000 *************** *** 1004,1011 **** && dict_find(top_item->jd_tv.vval.v_dict, top_item->jd_key, -1) != NULL) { ! semsg(_("E938: Duplicate key in JSON: \"%s\""), ! top_item->jd_key); clear_tv(cur_item); retval = FAIL; goto theend; --- 1004,1010 ---- && dict_find(top_item->jd_tv.vval.v_dict, top_item->jd_key, -1) != NULL) { ! semsg(_(e_duplicate_key_in_json_str), top_item->jd_key); clear_tv(cur_item); retval = FAIL; goto theend; *** ../vim-8.2.4011/src/list.c 2022-01-04 21:30:43.541800349 +0000 --- src/list.c 2022-01-05 19:16:30.693829856 +0000 *************** *** 15,22 **** #if defined(FEAT_EVAL) || defined(PROTO) - static char *e_listblobarg = N_("E899: Argument of %s must be a List or Blob"); - // List heads for garbage collection. static list_T *first_list = NULL; // list of all lists --- 15,20 ---- *************** *** 1005,1011 **** return; if (maxdepth < 0) { ! emsg(_("E900: maxdepth must be non-negative number")); return; } } --- 1003,1009 ---- return; if (maxdepth < 0) { ! emsg(_(e_maxdepth_must_be_non_negative_number)); return; } } *************** *** 2059,2065 **** ptrs[i++].item = li; if (info->item_compare_func_err) { ! emsg(_("E882: Uniq compare function failed")); break; } } --- 2057,2063 ---- ptrs[i++].item = li; if (info->item_compare_func_err) { ! emsg(_(e_uniq_compare_function_failed)); break; } } *************** *** 2861,2867 **** if (argvars[0].v_type == VAR_BLOB) blob_insert_func(argvars, rettv); else if (argvars[0].v_type != VAR_LIST) ! semsg(_(e_listblobarg), "insert()"); else list_insert_func(argvars, rettv); } --- 2859,2865 ---- if (argvars[0].v_type == VAR_BLOB) blob_insert_func(argvars, rettv); else if (argvars[0].v_type != VAR_LIST) ! semsg(_(e_argument_of_str_must_be_list_or_blob), "insert()"); else list_insert_func(argvars, rettv); } *************** *** 2939,2945 **** if (argvars[0].v_type == VAR_BLOB) blob_reverse(argvars[0].vval.v_blob, rettv); else if (argvars[0].v_type != VAR_LIST) ! semsg(_(e_listblobarg), "reverse()"); else list_reverse(argvars[0].vval.v_list, rettv); } --- 2937,2943 ---- if (argvars[0].v_type == VAR_BLOB) blob_reverse(argvars[0].vval.v_blob, rettv); else if (argvars[0].v_type != VAR_LIST) ! semsg(_(e_argument_of_str_must_be_list_or_blob), "reverse()"); else list_reverse(argvars[0].vval.v_list, rettv); } *** ../vim-8.2.4011/src/option.c 2022-01-05 17:49:10.877225131 +0000 --- src/option.c 2022-01-05 20:09:40.411244873 +0000 *************** *** 1462,1468 **** } if ((flags & P_MLE) && !p_mle) { ! errmsg = N_("E992: Not allowed in a modeline when 'modelineexpr' is off"); goto skip; } #ifdef FEAT_DIFF --- 1462,1468 ---- } if ((flags & P_MLE) && !p_mle) { ! errmsg = N_(e_not_allowed_in_modeline_when_modelineexpr_is_off); goto skip; } #ifdef FEAT_DIFF *************** *** 2822,2828 **** && curbuf->b_term != NULL && !term_is_finished(curbuf)))) { curbuf->b_p_ma = FALSE; ! return N_("E946: Cannot make a terminal with running job modifiable"); } # endif redraw_titles(); --- 2822,2828 ---- && curbuf->b_term != NULL && !term_is_finished(curbuf)))) { curbuf->b_p_ma = FALSE; ! return N_(e_cannot_make_terminal_with_running_job_modifiable); } # endif redraw_titles(); *************** *** 3223,3229 **** !has_vtp_working()) { p_tgc = 0; ! return N_("E954: 24-bit colors are not supported on this environment"); } if (is_term_win32()) swap_tcap(); --- 3223,3229 ---- !has_vtp_working()) { p_tgc = 0; ! return N_(e_24_bit_colors_are_not_supported_on_this_environment); } if (is_term_win32()) swap_tcap(); *** ../vim-8.2.4011/src/optionstr.c 2022-01-04 19:57:50.930919989 +0000 --- src/optionstr.c 2022-01-05 19:36:14.383909624 +0000 *************** *** 1026,1033 **** if (convert_setup(&input_conv, p_tenc, p_enc) == FAIL || convert_setup(&output_conv, p_enc, p_tenc) == FAIL) { ! semsg(_("E950: Cannot convert between %s and %s"), ! p_tenc, p_enc); errmsg = e_invalid_argument; } } --- 1026,1033 ---- if (convert_setup(&input_conv, p_tenc, p_enc) == FAIL || convert_setup(&output_conv, p_enc, p_tenc) == FAIL) { ! semsg(_(e_cannot_convert_between_str_and_str), ! p_tenc, p_enc); errmsg = e_invalid_argument; } } *** ../vim-8.2.4011/src/quickfix.c 2022-01-05 16:08:59.524426437 +0000 --- src/quickfix.c 2022-01-05 19:52:45.896429223 +0000 *************** *** 219,229 **** static char_u *qf_last_bufname = NULL; static bufref_T qf_last_bufref = {NULL, 0, 0}; - static char *e_current_quickfix_list_was_changed = - N_("E925: Current quickfix list was changed"); - static char *e_current_location_list_was_changed = - N_("E926: Current location list was changed"); - /* * Maximum number of bytes allowed per line while reading a errorfile. */ --- 219,224 ---- *************** *** 3160,3166 **** win_T *wp = win_id2wp(prev_winid); if (wp == NULL && curwin->w_llist != qi) { ! emsg(_("E924: Current window was closed")); *opened_window = FALSE; return NOTDONE; } --- 3155,3161 ---- win_T *wp = win_id2wp(prev_winid); if (wp == NULL && curwin->w_llist != qi) { ! emsg(_(e_current_window_was_closed)); *opened_window = FALSE; return NOTDONE; } *************** *** 8386,8392 **** typval_T *rettv) { # ifdef FEAT_QUICKFIX - static char *e_invact = N_("E927: Invalid action: '%s'"); char_u *act; int action = 0; static int recursive = 0; --- 8381,8386 ---- *************** *** 8414,8420 **** act[1] == NUL) action = *act; else ! semsg(_(e_invact), act); } else if (action_arg->v_type == VAR_UNKNOWN) action = ' '; --- 8408,8414 ---- act[1] == NUL) action = *act; else ! semsg(_(e_invalid_action_str_1), act); } else if (action_arg->v_type == VAR_UNKNOWN) action = ' '; *** ../vim-8.2.4011/src/regexp.c 2022-01-05 17:49:10.881225127 +0000 --- src/regexp.c 2022-01-05 18:58:08.422605220 +0000 *************** *** 1495,1501 **** { if (re_multi_type(peekchr()) == MULTI_MULT) { ! semsg(_("E888: (NFA regexp) cannot repeat %s"), what); rc_did_emsg = TRUE; return FAIL; } --- 1495,1501 ---- { if (re_multi_type(peekchr()) == MULTI_MULT) { ! semsg(_(e_nfa_regexp_cannot_repeat_str), what); rc_did_emsg = TRUE; return FAIL; } *** ../vim-8.2.4011/src/regexp_nfa.c 2022-01-05 17:49:10.881225127 +0000 --- src/regexp_nfa.c 2022-01-05 18:55:31.191035679 +0000 *************** *** 1597,1603 **** break; #endif default: ! semsg(_(e_nfa_unknown_operator_z_chr), no_Magic(c)); return FAIL; } break; --- 1597,1603 ---- break; #endif default: ! semsg(_(e_nfa_regexp_unknown_operator_z_chr), no_Magic(c)); return FAIL; } break; *************** *** 1782,1788 **** break; } } ! semsg(_(e_nfa_unknown_operator_percent_chr), no_Magic(c)); return FAIL; } break; --- 1782,1788 ---- break; } } ! semsg(_(e_nfa_regexp_unknown_operator_percent_chr), no_Magic(c)); return FAIL; } break; *************** *** 2266,2272 **** } if (i == 0) { ! semsg(_(e_nfa_unknown_operator_at_chr), op); return FAIL; } EMIT(i); --- 2266,2272 ---- } if (i == 0) { ! semsg(_(e_nfa_regexp_unknown_operator_at_chr), op); return FAIL; } EMIT(i); *************** *** 2295,2301 **** greedy = FALSE; } if (!read_limits(&minval, &maxval)) ! EMSG_RET_FAIL(_("E870: (NFA regexp) Error reading repetition limits")); // {0,inf}, {0,} and {} are equivalent to // * --- 2295,2301 ---- greedy = FALSE; } if (!read_limits(&minval, &maxval)) ! EMSG_RET_FAIL(_(e_nfa_regexp_error_reading_repetition_limits)); // {0,inf}, {0,} and {} are equivalent to // * *************** *** 2378,2384 **** if (re_multi_type(peekchr()) != NOT_MULTI) // Can't have a multi follow a multi. ! EMSG_RET_FAIL(_("E871: (NFA regexp) Can't have a multi follow a multi")); return OK; } --- 2378,2384 ---- if (re_multi_type(peekchr()) != NOT_MULTI) // Can't have a multi follow a multi. ! EMSG_RET_FAIL(_(e_nfa_regexp_cant_have_multi_follow_multi)); return OK; } *************** *** 2525,2531 **** if (paren == REG_PAREN) { if (regnpar >= NSUBEXP) // Too many `(' ! EMSG_RET_FAIL(_("E872: (NFA regexp) Too many '('")); parno = regnpar++; } #ifdef FEAT_SYN_HL --- 2525,2531 ---- if (paren == REG_PAREN) { if (regnpar >= NSUBEXP) // Too many `(' ! EMSG_RET_FAIL(_(e_nfa_regexp_too_many_parens)); parno = regnpar++; } #ifdef FEAT_SYN_HL *************** *** 2533,2539 **** { // Make a ZOPEN node. if (regnzpar >= NSUBEXP) ! EMSG_RET_FAIL(_("E879: (NFA regexp) Too many \\z(")); parno = regnzpar++; } #endif --- 2533,2539 ---- { // Make a ZOPEN node. if (regnzpar >= NSUBEXP) ! EMSG_RET_FAIL(_(e_nfa_regexp_too_many_z)); parno = regnzpar++; } #endif *************** *** 2563,2569 **** if (peekchr() == Magic(')')) EMSG2_RET_FAIL(_(e_unmatched_str_close), reg_magic == MAGIC_ALL); else ! EMSG_RET_FAIL(_("E873: (NFA regexp) proper termination error")); } /* * Here we set the flag allowing back references to this set of --- 2563,2569 ---- if (peekchr() == Magic(')')) EMSG2_RET_FAIL(_(e_unmatched_str_close), reg_magic == MAGIC_ALL); else ! EMSG_RET_FAIL(_(e_nfa_regexp_proper_termination_error)); } /* * Here we set the flag allowing back references to this set of *************** *** 3126,3132 **** fclose(df); } #endif ! emsg(_("E874: (NFA) Could not pop the stack!")); } /* --- 3126,3132 ---- fclose(df); } #endif ! emsg(_(e_nfa_regexp_could_not_pop_stack)); } /* *************** *** 3884,3896 **** if (stackp != stack) { vim_free(stack); ! EMSG_RET_NULL(_("E875: (NFA regexp) (While converting from postfix to NFA), too many states left on stack")); } if (istate >= nstate) { vim_free(stack); ! EMSG_RET_NULL(_("E876: (NFA regexp) Not enough space to store the whole NFA ")); } matchstate = &state_ptr[istate++]; // the match state --- 3884,3896 ---- if (stackp != stack) { vim_free(stack); ! EMSG_RET_NULL(_(e_nfa_regexp_while_converting_from_postfix_to_nfa_too_many_stats_left_on_stack)); } if (istate >= nstate) { vim_free(stack); ! EMSG_RET_NULL(_(e_nfa_regexp_not_enough_space_to_store_whole_nfa)); } matchstate = &state_ptr[istate++]; // the match state *************** *** 5385,5391 **** *listids = ALLOC_MULT(int, prog->nstate); if (*listids == NULL) { ! emsg(_("E878: (NFA) Could not allocate memory for branch traversal!")); return 0; } *listids_len = prog->nstate; --- 5385,5391 ---- *listids = ALLOC_MULT(int, prog->nstate); if (*listids == NULL) { ! emsg(_(e_nfa_regexp_could_not_allocate_memory_for_branch_traversal)); return 0; } *listids_len = prog->nstate; *** ../vim-8.2.4011/src/register.c 2022-01-05 16:08:59.524426437 +0000 --- src/register.c 2022-01-05 18:58:58.446468699 +0000 *************** *** 2780,2787 **** s = (char_u *)""; else if (strings[1] != NULL) { ! emsg(_("E883: search pattern and expression register may not " ! "contain two or more lines")); return; } else --- 2780,2786 ---- s = (char_u *)""; else if (strings[1] != NULL) { ! emsg(_(e_search_pattern_and_expression_register_may_not_contain_two_or_more_lines)); return; } else *** ../vim-8.2.4011/src/scriptfile.c 2022-01-01 15:58:19.118486361 +0000 --- src/scriptfile.c 2022-01-05 20:02:14.931894344 +0000 *************** *** 1950,1956 **** if (!getline_equal(eap->getline, eap->cookie, getsourceline)) { ! emsg(_("E984: :scriptversion used outside of a sourced file")); return; } if (in_vim9script()) --- 1950,1956 ---- if (!getline_equal(eap->getline, eap->cookie, getsourceline)) { ! emsg(_(e_scriptversion_used_outside_of_sourced_file)); return; } if (in_vim9script()) *************** *** 1963,1969 **** if (nr == 0 || *eap->arg != NUL) emsg(_(e_invalid_argument)); else if (nr > SCRIPT_VERSION_MAX) ! semsg(_("E999: scriptversion not supported: %d"), nr); else { current_sctx.sc_version = nr; --- 1963,1969 ---- if (nr == 0 || *eap->arg != NUL) emsg(_(e_invalid_argument)); else if (nr > SCRIPT_VERSION_MAX) ! semsg(_(e_scriptversion_not_supported_nr), nr); else { current_sctx.sc_version = nr; *** ../vim-8.2.4011/src/sign.c 2022-01-04 19:57:50.930919989 +0000 --- src/sign.c 2022-01-05 19:31:13.972170279 +0000 *************** *** 1224,1230 **** } else { ! semsg(_("E885: Not possible to change sign %s"), sign_name); return FAIL; } --- 1224,1230 ---- } else { ! semsg(_(e_not_possible_to_change_sign_str), sign_name); return FAIL; } *************** *** 1307,1313 **** if (buf->b_fname == NULL) { ! emsg(_("E934: Cannot jump to a buffer that does not have a name")); return -1; } cmd = alloc(STRLEN(buf->b_fname) + 25); --- 1307,1313 ---- if (buf->b_fname == NULL) { ! emsg(_(e_cannot_jump_to_buffer_that_does_not_have_name)); return -1; } cmd = alloc(STRLEN(buf->b_fname) + 25); *** ../vim-8.2.4011/src/syntax.c 2022-01-05 17:49:10.881225127 +0000 --- src/syntax.c 2022-01-05 19:09:07.278343920 +0000 *************** *** 4889,4896 **** { if (p[2] != NUL) { ! semsg(_("E890: trailing char after ']': %s]%s"), ! kw, &p[2]); goto error; } kw = p + 1; // skip over the "]" --- 4889,4896 ---- { if (p[2] != NUL) { ! semsg(_(e_trailing_char_after_rsb_str_str), ! kw, &p[2]); goto error; } kw = p + 1; // skip over the "]" *** ../vim-8.2.4011/src/tag.c 2022-01-02 21:26:12.319264330 +0000 --- src/tag.c 2022-01-05 20:03:56.235780808 +0000 *************** *** 84,94 **** #endif static void tagstack_clear_entry(taggy_T *item); - #ifdef FEAT_EVAL - static char_u *recurmsg = (char_u *)N_("E986: cannot modify the tag stack within tagfunc"); - static char_u *tfu_inv_ret_msg = (char_u *)N_("E987: invalid return value from tagfunc"); - #endif - static char_u *tagmatchname = NULL; // name of last used tag #if defined(FEAT_QUICKFIX) --- 84,89 ---- *************** *** 234,240 **** #ifdef FEAT_EVAL if (tfu_in_use) { ! emsg(_(recurmsg)); return FALSE; } #endif --- 229,235 ---- #ifdef FEAT_EVAL if (tfu_in_use) { ! emsg(_(e_cannot_modify_tag_stack_within_tagfunc)); return FALSE; } #endif *************** *** 1419,1425 **** if (rettv.v_type != VAR_LIST || !rettv.vval.v_list) { clear_tv(&rettv); ! emsg(_(tfu_inv_ret_msg)); return FAIL; } taglist = rettv.vval.v_list; --- 1414,1420 ---- if (rettv.v_type != VAR_LIST || !rettv.vval.v_list) { clear_tv(&rettv); ! emsg(_(e_invalid_return_value_from_tagfunc)); return FAIL; } taglist = rettv.vval.v_list; *************** *** 1437,1443 **** if (item->li_tv.v_type != VAR_DICT) { ! emsg(_(tfu_inv_ret_msg)); break; } --- 1432,1438 ---- if (item->li_tv.v_type != VAR_DICT) { ! emsg(_(e_invalid_return_value_from_tagfunc)); break; } *************** *** 1489,1495 **** if (!res_name || !res_fname || !res_cmd) { ! emsg(_(tfu_inv_ret_msg)); break; } --- 1484,1490 ---- if (!res_name || !res_fname || !res_cmd) { ! emsg(_(e_invalid_return_value_from_tagfunc)); break; } *************** *** 4347,4353 **** // not allowed to alter the tag stack entries from inside tagfunc if (tfu_in_use) { ! emsg(_(recurmsg)); return FAIL; } #endif --- 4342,4348 ---- // not allowed to alter the tag stack entries from inside tagfunc if (tfu_in_use) { ! emsg(_(e_cannot_modify_tag_stack_within_tagfunc)); return FAIL; } #endif *** ../vim-8.2.4011/src/terminal.c 2022-01-01 21:59:11.038521915 +0000 --- src/terminal.c 2022-01-05 20:21:32.540480072 +0000 *************** *** 883,889 **** { if (*p) *p = NUL; ! semsg(_("E181: Invalid attribute: %s"), cmd); goto theend; } # undef OPTARG_HAS --- 883,889 ---- { if (*p) *p = NUL; ! semsg(_(e_invalid_attribute_str), cmd); goto theend; } # undef OPTARG_HAS *************** *** 4862,4868 **** term = buf->b_term; if (term->tl_vterm == NULL) { ! emsg(_("E958: Job already finished")); return; } --- 4862,4868 ---- term = buf->b_term; if (term->tl_vterm == NULL) { ! emsg(_(e_job_already_finished)); return; } *************** *** 4888,4894 **** return; if (mch_stat((char *)fname, &st) >= 0) { ! semsg(_("E953: File exists: %s"), fname); return; } --- 4888,4894 ---- return; if (mch_stat((char *)fname, &st) >= 0) { ! semsg(_(e_file_exists_str), fname); return; } *************** *** 5992,5998 **** buf = term_get_buf(argvars, "term_setsize()"); if (buf == NULL) { ! emsg(_("E955: Not a terminal buffer")); return; } if (buf->b_term->tl_vterm == NULL) --- 5992,5998 ---- buf = term_get_buf(argvars, "term_setsize()"); if (buf == NULL) { ! emsg(_(e_not_terminal_buffer)); return; } if (buf->b_term->tl_vterm == NULL) *************** *** 6623,6629 **** if (!has_conpty_working()) { if (verbose) ! emsg(_("E982: ConPTY is not available")); return FAIL; } --- 6623,6629 ---- if (!has_conpty_working()) { if (verbose) ! emsg(_(e_conpty_is_not_available)); return FAIL; } *** ../vim-8.2.4011/src/textprop.c 2022-01-05 17:49:10.881225127 +0000 --- src/textprop.c 2022-01-05 19:56:46.976230457 +0000 *************** *** 47,54 **** // The last used text property type ID. static int proptype_id = 0; - static char_u e_type_not_exist[] = N_("E971: Property type %s does not exist"); - /* * Find a property type by name, return the hashitem. * Returns NULL if the item can't be found. --- 47,52 ---- *************** *** 335,341 **** dict = argvars[0].vval.v_dict; if (dict == NULL || dict_find(dict, (char_u *)"type", -1) == NULL) { ! emsg(_("E965: missing property type name")); return; } type_name = dict_get_string(dict, (char_u *)"type", FALSE); --- 333,339 ---- dict = argvars[0].vval.v_dict; if (dict == NULL || dict_find(dict, (char_u *)"type", -1) == NULL) { ! emsg(_(e_missing_property_type_name)); return; } type_name = dict_get_string(dict, (char_u *)"type", FALSE); *************** *** 395,401 **** if (dict == NULL || dict_find(dict, (char_u *)"type", -1) == NULL) { ! emsg(_("E965: missing property type name")); return; } type_name = dict_get_string(dict, (char_u *)"type", FALSE); --- 393,399 ---- if (dict == NULL || dict_find(dict, (char_u *)"type", -1) == NULL) { ! emsg(_(e_missing_property_type_name)); return; } type_name = dict_get_string(dict, (char_u *)"type", FALSE); *************** *** 473,479 **** proplen = buf->b_ml.ml_line_len - textlen; if (proplen % sizeof(textprop_T) != 0) { ! iemsg(_("E967: text property info corrupted")); return 0; } if (proplen > 0) --- 471,477 ---- proplen = buf->b_ml.ml_line_len - textlen; if (proplen % sizeof(textprop_T) != 0) { ! iemsg(_(e_text_property_info_corrupted)); return 0; } if (proplen > 0) *************** *** 796,802 **** both = dict_get_bool(dict, (char_u *)"both", FALSE); if (!id_found && type_id == -1) { ! emsg(_("E968: Need at least one of 'id' or 'type'")); return; } if (both && (!id_found || type_id == -1)) --- 794,800 ---- both = dict_get_bool(dict, (char_u *)"both", FALSE); if (!id_found && type_id == -1) { ! emsg(_(e_need_at_least_one_of_id_or_type)); return; } if (both && (!id_found || type_id == -1)) *************** *** 1219,1225 **** if (id == -1 && type_id == -1) { ! emsg(_("E968: Need at least one of 'id' or 'type'")); return; } if (both && (id == -1 || type_id == -1)) --- 1217,1223 ---- if (id == -1 && type_id == -1) { ! emsg(_(e_need_at_least_one_of_id_or_type)); return; } if (both && (id == -1 || type_id == -1)) *************** *** 1331,1337 **** if (prop != NULL) { ! semsg(_("E969: Property type %s already defined"), name); return; } prop = alloc_clear(offsetof(proptype_T, pt_name) + STRLEN(name) + 1); --- 1329,1335 ---- if (prop != NULL) { ! semsg(_(e_property_type_str_already_defined), name); return; } prop = alloc_clear(offsetof(proptype_T, pt_name) + STRLEN(name) + 1); *************** *** 1375,1381 **** hl_id = syn_name2id(highlight); if (hl_id <= 0) { ! semsg(_("E970: Unknown highlight group name: '%s'"), highlight == NULL ? (char_u *)"" : highlight); return; } --- 1373,1379 ---- hl_id = syn_name2id(highlight); if (hl_id <= 0) { ! semsg(_(e_unknown_highlight_group_name_str), highlight == NULL ? (char_u *)"" : highlight); return; } *** ../vim-8.2.4011/src/typval.c 2022-01-05 17:49:10.881225127 +0000 --- src/typval.c 2022-01-05 19:59:08.040092947 +0000 *************** *** 227,242 **** return varp->vval.v_number == VVAL_TRUE ? 1 : 0; case VAR_JOB: #ifdef FEAT_JOB_CHANNEL ! emsg(_("E910: Using a Job as a Number")); break; #endif case VAR_CHANNEL: #ifdef FEAT_JOB_CHANNEL ! emsg(_("E913: Using a Channel as a Number")); break; #endif case VAR_BLOB: ! emsg(_("E974: Using a Blob as a Number")); break; case VAR_VOID: emsg(_(e_cannot_use_void_value)); --- 227,242 ---- return varp->vval.v_number == VVAL_TRUE ? 1 : 0; case VAR_JOB: #ifdef FEAT_JOB_CHANNEL ! emsg(_(e_using_job_as_number)); break; #endif case VAR_CHANNEL: #ifdef FEAT_JOB_CHANNEL ! emsg(_(e_using_channel_as_number)); break; #endif case VAR_BLOB: ! emsg(_(e_using_blob_as_number)); break; case VAR_VOID: emsg(_(e_cannot_use_void_value)); *************** *** 308,342 **** return varp->vval.v_float; case VAR_FUNC: case VAR_PARTIAL: ! emsg(_("E891: Using a Funcref as a Float")); break; case VAR_STRING: ! emsg(_("E892: Using a String as a Float")); break; case VAR_LIST: ! emsg(_("E893: Using a List as a Float")); break; case VAR_DICT: ! emsg(_("E894: Using a Dictionary as a Float")); break; case VAR_BOOL: emsg(_(e_using_boolean_valud_as_float)); break; case VAR_SPECIAL: ! emsg(_("E907: Using a special value as a Float")); break; case VAR_JOB: # ifdef FEAT_JOB_CHANNEL ! emsg(_("E911: Using a Job as a Float")); break; # endif case VAR_CHANNEL: # ifdef FEAT_JOB_CHANNEL ! emsg(_("E914: Using a Channel as a Float")); break; # endif case VAR_BLOB: ! emsg(_("E975: Using a Blob as a Float")); break; case VAR_VOID: emsg(_(e_cannot_use_void_value)); --- 308,342 ---- return varp->vval.v_float; case VAR_FUNC: case VAR_PARTIAL: ! emsg(_(e_using_funcref_as_float)); break; case VAR_STRING: ! emsg(_(e_using_string_as_float)); break; case VAR_LIST: ! emsg(_(e_using_list_as_float)); break; case VAR_DICT: ! emsg(_(e_using_dictionary_as_float)); break; case VAR_BOOL: emsg(_(e_using_boolean_valud_as_float)); break; case VAR_SPECIAL: ! emsg(_(e_using_special_value_as_float)); break; case VAR_JOB: # ifdef FEAT_JOB_CHANNEL ! emsg(_(e_using_job_as_float)); break; # endif case VAR_CHANNEL: # ifdef FEAT_JOB_CHANNEL ! emsg(_(e_using_channel_as_float)); break; # endif case VAR_BLOB: ! emsg(_(e_using_blob_as_float)); break; case VAR_VOID: emsg(_(e_cannot_use_void_value)); *************** *** 954,960 **** STRCPY(buf, get_var_special_name(varp->vval.v_number)); return buf; case VAR_BLOB: ! emsg(_("E976: Using a Blob as a String")); break; case VAR_JOB: #ifdef FEAT_JOB_CHANNEL --- 954,960 ---- STRCPY(buf, get_var_special_name(varp->vval.v_number)); return buf; case VAR_BLOB: ! emsg(_(e_using_blob_as_string)); break; case VAR_JOB: #ifdef FEAT_JOB_CHANNEL *************** *** 1386,1392 **** || (type != EXPR_EQUAL && type != EXPR_NEQUAL)) { if (tv1->v_type != tv2->v_type) ! emsg(_("E977: Can only compare Blob with Blob")); else emsg(_(e_invalid_operation_for_blob)); return FAIL; --- 1386,1392 ---- || (type != EXPR_EQUAL && type != EXPR_NEQUAL)) { if (tv1->v_type != tv2->v_type) ! emsg(_(e_can_only_compare_blob_with_blob)); else emsg(_(e_invalid_operation_for_blob)); return FAIL; *************** *** 1922,1928 **** { if (blob != NULL) { ! emsg(_("E973: Blob literal should have an even number of hex characters")); ga_clear(&blob->bv_ga); VIM_CLEAR(blob); } --- 1922,1928 ---- { if (blob != NULL) { ! emsg(_(e_blob_literal_should_have_an_even_number_of_hex_characters)); ga_clear(&blob->bv_ga); VIM_CLEAR(blob); } *** ../vim-8.2.4011/src/undo.c 2022-01-05 17:49:10.881225127 +0000 --- src/undo.c 2022-01-05 19:00:07.934279458 +0000 *************** *** 464,470 **** { // This happens when the FileChangedRO autocommand changes the // file in a way it becomes shorter. ! emsg(_("E881: Line count changed unexpectedly")); return FAIL; } } --- 464,470 ---- { // This happens when the FileChangedRO autocommand changes the // file in a way it becomes shorter. ! emsg(_(e_line_count_changed_unexpectedly)); return FAIL; } } *** ../vim-8.2.4011/src/userfunc.c 2022-01-05 17:49:10.881225127 +0000 --- src/userfunc.c 2022-01-05 20:05:13.483692014 +0000 *************** *** 339,345 **** } else if (any_default) { ! emsg(_("E989: Non-default argument follows default argument")); goto err_ret; } --- 339,345 ---- } else if (any_default) { ! emsg(_(e_non_default_argument_follows_default_argument)); goto err_ret; } *************** *** 3850,3856 **** if (cp != NULL && cp < end) { ! semsg(_("E884: Function name cannot contain a colon: %s"), start); goto theend; } } --- 3850,3856 ---- if (cp != NULL && cp < end) { ! semsg(_(e_function_name_cannot_contain_colon_str), start); goto theend; } } *** ../vim-8.2.4011/src/vim9compile.c 2022-01-05 16:50:36.534031580 +0000 --- src/vim9compile.c 2022-01-05 20:06:15.307619787 +0000 *************** *** 1109,1115 **** *dest = dest_option; if (cmdidx == CMD_final || cmdidx == CMD_const) { ! emsg(_(e_cannot_lock_an_option)); return FAIL; } p = name; --- 1109,1115 ---- *dest = dest_option; if (cmdidx == CMD_final || cmdidx == CMD_const) { ! emsg(_(e_cannot_lock_option)); return FAIL; } p = name; *** ../vim-8.2.4011/src/viminfo.c 2022-01-02 21:26:12.319264330 +0000 --- src/viminfo.c 2022-01-05 19:28:33.228499930 +0000 *************** *** 3220,3227 **** { // They all exist? Must be something wrong! Don't write // the viminfo file then. ! semsg(_("E929: Too many viminfo temp files, like %s!"), ! tempname); break; } *wp = next_char; --- 3220,3226 ---- { // They all exist? Must be something wrong! Don't write // the viminfo file then. ! semsg(_(e_too_many_viminfo_temp_files_like_str), tempname); break; } *wp = next_char; *************** *** 3293,3299 **** if (vim_rename(tempname, fname) == -1) { ++viminfo_errcnt; ! semsg(_("E886: Can't rename viminfo file to %s!"), fname); } # ifdef MSWIN // If the viminfo file was hidden then also hide the new file. --- 3292,3298 ---- if (vim_rename(tempname, fname) == -1) { ++viminfo_errcnt; ! semsg(_(e_cant_rename_viminfo_file_to_str), fname); } # ifdef MSWIN // If the viminfo file was hidden then also hide the new file. *** ../vim-8.2.4011/src/version.c 2022-01-05 18:16:48.638057135 +0000 --- src/version.c 2022-01-05 20:18:39.552989311 +0000 *************** *** 752,753 **** --- 752,755 ---- { /* Add new patch number below this line */ + /**/ + 4012, /**/ -- The term "free software" is defined by Richard M. Stallman as being software that isn't necessarily for free. Confusing? Let's call it "Stallman software" then! -- Bram Moolenaar /// 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 ///