forked from aniani/vim
updated for version 7.3.1148
Problem: No command line completion for ":syntime". Solution: Implement the completion. (Dominique Pelle)
This commit is contained in:
@@ -1242,6 +1242,7 @@ completion can be enabled:
|
||||
-complete=shellcmd Shell command
|
||||
-complete=sign |:sign| suboptions
|
||||
-complete=syntax syntax file names |'syntax'|
|
||||
-complete=syntime |:syntime| suboptions
|
||||
-complete=tag tags
|
||||
-complete=tag_listfiles tags, file names are shown when CTRL-D is hit
|
||||
-complete=user user names
|
||||
|
@@ -926,7 +926,7 @@ EX(CMD_swapname, "swapname", ex_swapname,
|
||||
EX(CMD_syntax, "syntax", ex_syntax,
|
||||
EXTRA|NOTRLCOM|CMDWIN),
|
||||
EX(CMD_syntime, "syntime", ex_syntime,
|
||||
WORD1|TRLBAR|CMDWIN),
|
||||
NEEDARG|WORD1|TRLBAR|CMDWIN),
|
||||
EX(CMD_syncbind, "syncbind", ex_syncbind,
|
||||
TRLBAR),
|
||||
EX(CMD_t, "t", ex_copymove,
|
||||
|
@@ -3994,6 +3994,12 @@ set_one_cmd_context(xp, buff)
|
||||
xp->xp_pattern = arg;
|
||||
break;
|
||||
#endif
|
||||
#if defined(FEAT_PROFILE)
|
||||
case CMD_syntime:
|
||||
xp->xp_context = EXPAND_SYNTIME;
|
||||
xp->xp_pattern = arg;
|
||||
break;
|
||||
#endif
|
||||
|
||||
#endif /* FEAT_CMDL_COMPL */
|
||||
|
||||
@@ -5436,6 +5442,9 @@ static struct
|
||||
{EXPAND_MAPPINGS, "mapping"},
|
||||
{EXPAND_MENUS, "menu"},
|
||||
{EXPAND_OWNSYNTAX, "syntax"},
|
||||
#if defined(FEAT_PROFILE)
|
||||
{EXPAND_SYNTIME, "syntime"},
|
||||
#endif
|
||||
{EXPAND_SETTINGS, "option"},
|
||||
{EXPAND_SHELLCMD, "shellcmd"},
|
||||
#if defined(FEAT_SIGNS)
|
||||
|
@@ -4673,6 +4673,9 @@ ExpandFromContext(xp, pat, num_file, file, options)
|
||||
#endif
|
||||
#ifdef FEAT_SYN_HL
|
||||
{EXPAND_SYNTAX, get_syntax_name, TRUE, TRUE},
|
||||
#endif
|
||||
#ifdef FEAT_PROFILE
|
||||
{EXPAND_SYNTIME, get_syntime_arg, TRUE, TRUE},
|
||||
#endif
|
||||
{EXPAND_HIGHLIGHT, get_highlight_name, TRUE, TRUE},
|
||||
#ifdef FEAT_AUTOCMD
|
||||
|
@@ -20,6 +20,7 @@ int syn_get_sub_char __ARGS((void));
|
||||
int syn_get_stack_item __ARGS((int i));
|
||||
int syn_get_foldlevel __ARGS((win_T *wp, long lnum));
|
||||
void ex_syntime __ARGS((exarg_T *eap));
|
||||
char_u *get_syntime_arg __ARGS((expand_T *xp, int idx));
|
||||
void init_highlight __ARGS((int both, int reset));
|
||||
int load_colors __ARGS((char_u *name));
|
||||
void do_highlight __ARGS((char_u *line, int forceit, int init));
|
||||
|
23
src/syntax.c
23
src/syntax.c
@@ -6577,6 +6577,27 @@ syntime_clear()
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(FEAT_CMDL_COMPL) || defined(PROTO)
|
||||
/*
|
||||
* Function given to ExpandGeneric() to obtain the possible arguments of the
|
||||
* ":syntime {on,off,clear,report}" command.
|
||||
*/
|
||||
char_u *
|
||||
get_syntime_arg(xp, idx)
|
||||
expand_T *xp UNUSED;
|
||||
int idx;
|
||||
{
|
||||
switch (idx)
|
||||
{
|
||||
case 0: return (char_u *)"on";
|
||||
case 1: return (char_u *)"off";
|
||||
case 2: return (char_u *)"clear";
|
||||
case 3: return (char_u *)"report";
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
typedef struct
|
||||
{
|
||||
proftime_T total;
|
||||
@@ -6610,7 +6631,9 @@ syntime_report()
|
||||
{
|
||||
int idx;
|
||||
synpat_T *spp;
|
||||
# ifdef FEAT_FLOAT
|
||||
proftime_T tm;
|
||||
# endif
|
||||
int len;
|
||||
proftime_T total_total;
|
||||
int total_count = 0;
|
||||
|
@@ -728,6 +728,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
1148,
|
||||
/**/
|
||||
1147,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user