// ex_docmd.c: functions for executing an Ex command line. #include #include #include #include #include #include #include #include #include #include #include "auto/config.h" #include "nvim/arglist.h" #include "nvim/ascii_defs.h" #include "nvim/autocmd.h" #include "nvim/buffer.h" #include "nvim/buffer_defs.h" #include "nvim/change.h" #include "nvim/charset.h" #include "nvim/cmdexpand.h" #include "nvim/cmdexpand_defs.h" #include "nvim/cursor.h" #include "nvim/debugger.h" #include "nvim/digraph.h" #include "nvim/drawscreen.h" #include "nvim/edit.h" #include "nvim/eval.h" #include "nvim/eval/typval.h" #include "nvim/eval/userfunc.h" #include "nvim/event/loop.h" #include "nvim/ex_cmds.h" #include "nvim/ex_cmds2.h" #include "nvim/ex_cmds_defs.h" #include "nvim/ex_docmd.h" #include "nvim/ex_eval.h" #include "nvim/ex_getln.h" #include "nvim/file_search.h" #include "nvim/fileio.h" #include "nvim/fold.h" #include "nvim/func_attr.h" #include "nvim/garray.h" #include "nvim/getchar.h" #include "nvim/gettext.h" #include "nvim/globals.h" #include "nvim/highlight.h" #include "nvim/highlight_group.h" #include "nvim/input.h" #include "nvim/keycodes.h" #include "nvim/lua/executor.h" #include "nvim/macros_defs.h" #include "nvim/main.h" #include "nvim/mark.h" #include "nvim/mbyte.h" #include "nvim/memline.h" #include "nvim/memory.h" #include "nvim/message.h" #include "nvim/mouse.h" #include "nvim/move.h" #include "nvim/normal.h" #include "nvim/ops.h" #include "nvim/option.h" #include "nvim/option_vars.h" #include "nvim/optionstr.h" #include "nvim/os/fs.h" #include "nvim/os/input.h" #include "nvim/os/os.h" #include "nvim/os/shell.h" #include "nvim/path.h" #include "nvim/popupmenu.h" #include "nvim/pos_defs.h" #include "nvim/profile.h" #include "nvim/quickfix.h" #include "nvim/regexp.h" #include "nvim/runtime.h" #include "nvim/search.h" #include "nvim/shada.h" #include "nvim/state.h" #include "nvim/statusline.h" #include "nvim/strings.h" #include "nvim/tag.h" #include "nvim/types_defs.h" #include "nvim/ui.h" #include "nvim/undo.h" #include "nvim/usercmd.h" #include "nvim/vim_defs.h" #include "nvim/window.h" #include "nvim/winfloat.h" static const char e_ambiguous_use_of_user_defined_command[] = N_("E464: Ambiguous use of user-defined command"); static const char e_no_call_stack_to_substitute_for_stack[] = N_("E489: No call stack to substitute for \"\""); static const char e_not_an_editor_command[] = N_("E492: Not an editor command"); static const char e_no_autocommand_file_name_to_substitute_for_afile[] = N_("E495: No autocommand file name to substitute for \"\""); static const char e_no_autocommand_buffer_number_to_substitute_for_abuf[] = N_("E496: No autocommand buffer number to substitute for \"\""); static const char e_no_autocommand_match_name_to_substitute_for_amatch[] = N_("E497: No autocommand match name to substitute for \"\""); static const char e_no_source_file_name_to_substitute_for_sfile[] = N_("E498: No :source file name to substitute for \"\""); static const char e_no_line_number_to_use_for_slnum[] = N_("E842: No line number to use for \"\""); static const char e_no_line_number_to_use_for_sflnum[] = N_("E961: No line number to use for \"\""); static const char e_no_script_file_name_to_substitute_for_script[] = N_("E1274: No script file name to substitute for \"