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=shellcmd Shell command
|
||||||
-complete=sign |:sign| suboptions
|
-complete=sign |:sign| suboptions
|
||||||
-complete=syntax syntax file names |'syntax'|
|
-complete=syntax syntax file names |'syntax'|
|
||||||
|
-complete=syntime |:syntime| suboptions
|
||||||
-complete=tag tags
|
-complete=tag tags
|
||||||
-complete=tag_listfiles tags, file names are shown when CTRL-D is hit
|
-complete=tag_listfiles tags, file names are shown when CTRL-D is hit
|
||||||
-complete=user user names
|
-complete=user user names
|
||||||
|
@@ -926,7 +926,7 @@ EX(CMD_swapname, "swapname", ex_swapname,
|
|||||||
EX(CMD_syntax, "syntax", ex_syntax,
|
EX(CMD_syntax, "syntax", ex_syntax,
|
||||||
EXTRA|NOTRLCOM|CMDWIN),
|
EXTRA|NOTRLCOM|CMDWIN),
|
||||||
EX(CMD_syntime, "syntime", ex_syntime,
|
EX(CMD_syntime, "syntime", ex_syntime,
|
||||||
WORD1|TRLBAR|CMDWIN),
|
NEEDARG|WORD1|TRLBAR|CMDWIN),
|
||||||
EX(CMD_syncbind, "syncbind", ex_syncbind,
|
EX(CMD_syncbind, "syncbind", ex_syncbind,
|
||||||
TRLBAR),
|
TRLBAR),
|
||||||
EX(CMD_t, "t", ex_copymove,
|
EX(CMD_t, "t", ex_copymove,
|
||||||
|
@@ -3994,6 +3994,12 @@ set_one_cmd_context(xp, buff)
|
|||||||
xp->xp_pattern = arg;
|
xp->xp_pattern = arg;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
#if defined(FEAT_PROFILE)
|
||||||
|
case CMD_syntime:
|
||||||
|
xp->xp_context = EXPAND_SYNTIME;
|
||||||
|
xp->xp_pattern = arg;
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* FEAT_CMDL_COMPL */
|
#endif /* FEAT_CMDL_COMPL */
|
||||||
|
|
||||||
@@ -5436,6 +5442,9 @@ static struct
|
|||||||
{EXPAND_MAPPINGS, "mapping"},
|
{EXPAND_MAPPINGS, "mapping"},
|
||||||
{EXPAND_MENUS, "menu"},
|
{EXPAND_MENUS, "menu"},
|
||||||
{EXPAND_OWNSYNTAX, "syntax"},
|
{EXPAND_OWNSYNTAX, "syntax"},
|
||||||
|
#if defined(FEAT_PROFILE)
|
||||||
|
{EXPAND_SYNTIME, "syntime"},
|
||||||
|
#endif
|
||||||
{EXPAND_SETTINGS, "option"},
|
{EXPAND_SETTINGS, "option"},
|
||||||
{EXPAND_SHELLCMD, "shellcmd"},
|
{EXPAND_SHELLCMD, "shellcmd"},
|
||||||
#if defined(FEAT_SIGNS)
|
#if defined(FEAT_SIGNS)
|
||||||
|
@@ -4673,6 +4673,9 @@ ExpandFromContext(xp, pat, num_file, file, options)
|
|||||||
#endif
|
#endif
|
||||||
#ifdef FEAT_SYN_HL
|
#ifdef FEAT_SYN_HL
|
||||||
{EXPAND_SYNTAX, get_syntax_name, TRUE, TRUE},
|
{EXPAND_SYNTAX, get_syntax_name, TRUE, TRUE},
|
||||||
|
#endif
|
||||||
|
#ifdef FEAT_PROFILE
|
||||||
|
{EXPAND_SYNTIME, get_syntime_arg, TRUE, TRUE},
|
||||||
#endif
|
#endif
|
||||||
{EXPAND_HIGHLIGHT, get_highlight_name, TRUE, TRUE},
|
{EXPAND_HIGHLIGHT, get_highlight_name, TRUE, TRUE},
|
||||||
#ifdef FEAT_AUTOCMD
|
#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_stack_item __ARGS((int i));
|
||||||
int syn_get_foldlevel __ARGS((win_T *wp, long lnum));
|
int syn_get_foldlevel __ARGS((win_T *wp, long lnum));
|
||||||
void ex_syntime __ARGS((exarg_T *eap));
|
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));
|
void init_highlight __ARGS((int both, int reset));
|
||||||
int load_colors __ARGS((char_u *name));
|
int load_colors __ARGS((char_u *name));
|
||||||
void do_highlight __ARGS((char_u *line, int forceit, int init));
|
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
|
typedef struct
|
||||||
{
|
{
|
||||||
proftime_T total;
|
proftime_T total;
|
||||||
@@ -6610,7 +6631,9 @@ syntime_report()
|
|||||||
{
|
{
|
||||||
int idx;
|
int idx;
|
||||||
synpat_T *spp;
|
synpat_T *spp;
|
||||||
|
# ifdef FEAT_FLOAT
|
||||||
proftime_T tm;
|
proftime_T tm;
|
||||||
|
# endif
|
||||||
int len;
|
int len;
|
||||||
proftime_T total_total;
|
proftime_T total_total;
|
||||||
int total_count = 0;
|
int total_count = 0;
|
||||||
|
@@ -728,6 +728,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1148,
|
||||||
/**/
|
/**/
|
||||||
1147,
|
1147,
|
||||||
/**/
|
/**/
|
||||||
|
@@ -783,6 +783,7 @@ extern char *(*dyn_libintl_textdomain)(const char *domainname);
|
|||||||
#define EXPAND_LOCALES 40
|
#define EXPAND_LOCALES 40
|
||||||
#define EXPAND_HISTORY 41
|
#define EXPAND_HISTORY 41
|
||||||
#define EXPAND_USER 42
|
#define EXPAND_USER 42
|
||||||
|
#define EXPAND_SYNTIME 43
|
||||||
|
|
||||||
/* Values for exmode_active (0 is no exmode) */
|
/* Values for exmode_active (0 is no exmode) */
|
||||||
#define EXMODE_NORMAL 1
|
#define EXMODE_NORMAL 1
|
||||||
|
Reference in New Issue
Block a user