1
0
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:
Bram Moolenaar
2013-06-08 15:24:48 +02:00
parent 87f764a891
commit cd9c46265e
8 changed files with 41 additions and 1 deletions

View File

@@ -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

View File

@@ -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,

View File

@@ -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)

View File

@@ -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

View File

@@ -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));

View File

@@ -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;

View File

@@ -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,
/**/ /**/

View File

@@ -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