Mercurial > vim
diff src/structs.h @ 17779:87a8760babec v8.1.1886
patch 8.1.1886: command line expansion code is spread out
commit https://github.com/vim/vim/commit/66b51420e0c8d49bcf6786b792c938d6099e3393
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Aug 18 21:44:12 2019 +0200
patch 8.1.1886: command line expansion code is spread out
Problem: Command line expansion code is spread out.
Solution: Move the code to cmdexpand.c. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/4831)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 18 Aug 2019 21:45:03 +0200 |
parents | 121bdff812b4 |
children | 04245f071792 |
line wrap: on
line diff
--- a/src/structs.h +++ b/src/structs.h @@ -579,6 +579,33 @@ typedef struct expand #define XP_BS_THREE 2 // uses three backslashes before a space /* + * Variables shared between getcmdline(), redrawcmdline() and others. + * These need to be saved when using CTRL-R |, that's why they are in a + * structure. + */ +typedef struct +{ + char_u *cmdbuff; /* pointer to command line buffer */ + int cmdbufflen; /* length of cmdbuff */ + int cmdlen; /* number of chars in command line */ + int cmdpos; /* current cursor position */ + int cmdspos; /* cursor column on screen */ + int cmdfirstc; /* ':', '/', '?', '=', '>' or NUL */ + int cmdindent; /* number of spaces before cmdline */ + char_u *cmdprompt; /* message in front of cmdline */ + int cmdattr; /* attributes for prompt */ + int overstrike; /* Typing mode on the command line. Shared by + getcmdline() and put_on_cmdline(). */ + expand_T *xpc; /* struct being used for expansion, xp_pattern + may point into cmdbuff */ + int xp_context; /* type of expansion */ +# ifdef FEAT_EVAL + char_u *xp_arg; /* user-defined expansion arg */ + int input_fn; /* when TRUE Invoked for input() function */ +# endif +} cmdline_info_T; + +/* * 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.