signs Compiled with |:sign| support.
smartindent Compiled with 'smartindent' support.
sniff Compiled with SNiFF interface support.
+startuptime Compiled with |--startuptime| support.
statusline Compiled with support for 'statusline', 'rulerformat'
and special formats of 'titlestring' and 'iconstring'.
sun_workshop Compiled with support for Sun |workshop|.
-u NORC no yes
--noplugin yes no
---startuptime={fname} *--startuptime*
+--startuptime {fname} *--startuptime*
During startup write timing messages to the file {fname}.
This can be used to find out where time is spent while loading
- your .vimrc and plugins.
+ your .vimrc, plugins and opening the first file.
When {fname} already exists new messages are appended.
- {only when compiled with this feature}
+ (Only available when compiled with the |+startuptime|
+ feature).
*--literal*
--literal Take file names literally, don't expand wildcards. Not needed
#ifdef STARTUPTIME
for (i = 1; i < argc; ++i)
{
- if (STRNICMP(argv[i], "--startuptime=", 14) == 0)
+ if (STRICMP(argv[i], "--startuptime") == 0 && i + 1 < argc)
{
- time_fd = mch_fopen(argv[i] + 14, "a");
+ time_fd = mch_fopen(argv[i + 1], "a");
TIME_MSG("--- VIM STARTING ---");
break;
}
want_argument = TRUE;
argv_idx += 3;
}
+ else if (STRNICMP(argv[0] + argv_idx, "startuptime", 11) == 0)
+ {
+ want_argument = TRUE;
+ argv_idx += 11;
+ }
#ifdef FEAT_CLIENTSERVER
else if (STRNICMP(argv[0] + argv_idx, "serverlist", 10) == 0)
; /* already processed -- no arg */
/* already processed, skip */
}
#endif
- else if (STRNICMP(argv[0] + argv_idx, "startuptime", 11) == 0)
- {
- /* already processed, skip */
- }
else
{
if (argv[0][argv_idx])
mainerr(ME_GARBAGE, (char_u *)argv[0]);
--argc;
- if (argc < 1 && c != 'S')
+ if (argc < 1 && c != 'S') /* -S has an optional argument */
mainerr_arg_missing((char_u *)argv[0]);
++argv;
argv_idx = -1;
(char_u *)argv[0];
break;
- case '-': /* "--cmd {command}" execute command */
- if (parmp->n_pre_commands >= MAX_ARG_CMDS)
- mainerr(ME_EXTRA_CMD, NULL);
- parmp->pre_commands[parmp->n_pre_commands++] =
+ case '-':
+ if (argv[-1][2] == 'c')
+ {
+ /* "--cmd {command}" execute command */
+ if (parmp->n_pre_commands >= MAX_ARG_CMDS)
+ mainerr(ME_EXTRA_CMD, NULL);
+ parmp->pre_commands[parmp->n_pre_commands++] =
(char_u *)argv[0];
+ }
+ /* "--startuptime <file>" already handled */
break;
/* case 'd': -d {device} is handled in mch_check_win() for the
main_msg(_("--serverlist\t\tList available Vim server names and exit"));
main_msg(_("--servername <name>\tSend to/become the Vim server <name>"));
#endif
+#ifdef STARTUPTIME
+ main_msg(_("--startuptime=<file>\tWrite startup timing messages to <file>"));
+#endif
#ifdef FEAT_VIMINFO
main_msg(_("-i <viminfo>\t\tUse <viminfo> instead of .viminfo"));
#endif