diff options
Diffstat (limited to 'src/ex_cmds_defs.h')
-rw-r--r-- | src/ex_cmds_defs.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/ex_cmds_defs.h b/src/ex_cmds_defs.h index 8b6c7c866e..3b173341e1 100644 --- a/src/ex_cmds_defs.h +++ b/src/ex_cmds_defs.h @@ -1190,4 +1190,48 @@ struct exarg { #define EXFLAG_NR 0x02 /* '#': number */ #define EXFLAG_PRINT 0x04 /* 'p': print */ +/* + * used for completion on the command line + */ +typedef struct expand { + int xp_context; /* type of expansion */ + char_u *xp_pattern; /* start of item to expand */ + int xp_pattern_len; /* bytes in xp_pattern before cursor */ + char_u *xp_arg; /* completion function */ + int xp_scriptID; /* SID for completion function */ + int xp_backslash; /* one of the XP_BS_ values */ +#ifndef BACKSLASH_IN_FILENAME + int xp_shell; /* TRUE for a shell command, more + characters need to be escaped */ +#endif + int xp_numfiles; /* number of files found by + file name completion */ + char_u **xp_files; /* list of files */ + char_u *xp_line; /* text being completed */ + int xp_col; /* cursor position in line */ +} expand_T; + +/* values for xp_backslash */ +#define XP_BS_NONE 0 /* nothing special for backslashes */ +#define XP_BS_ONE 1 /* uses one backslash before a space */ +#define XP_BS_THREE 2 /* uses three backslashes before a space */ + +/* + * Command modifiers ":vertical", ":browse", ":confirm" and ":hide" set a flag. + * This needs to be saved for recursive commands, put them in a structure for + * easy manipulation. + */ +typedef struct { + int hide; /* TRUE when ":hide" was used */ + int split; /* flags for win_split() */ + int tab; /* > 0 when ":tab" was used */ + int confirm; /* TRUE to invoke yes/no dialog */ + int keepalt; /* TRUE when ":keepalt" was used */ + int keepmarks; /* TRUE when ":keepmarks" was used */ + int keepjumps; /* TRUE when ":keepjumps" was used */ + int lockmarks; /* TRUE when ":lockmarks" was used */ + int keeppatterns; /* TRUE when ":keeppatterns" was used */ + char_u *save_ei; /* saved value of 'eventignore' */ +} cmdmod_T; + #endif |