updated for version 7.0050
diff --git a/src/main.c b/src/main.c
index 3b888f2..351225c 100644
--- a/src/main.c
+++ b/src/main.c
@@ -826,8 +826,9 @@
/* "-w {scriptout}" write to script */
if (vim_isdigit(((char_u *)argv[0])[argv_idx]))
{
- argv_idx = -1;
- break; /* not implemented, ignored */
+ i = get_number_arg((char_u *)argv[0], &argv_idx, 10);
+ set_option_value((char_u *)"window", (long)i, NULL, 0);
+ break;
}
want_argument = TRUE;
break;
@@ -848,7 +849,17 @@
restricted = TRUE;
break;
- case 'c': /* "-c {command}" execute command */
+ case 'c': /* "-c{command}" or "-c {command}" execute
+ command */
+ if (argv[0][argv_idx] != NUL)
+ {
+ if (n_commands >= MAX_ARG_CMDS)
+ mainerr(ME_EXTRA_CMD, NULL);
+ commands[n_commands++] = (char_u *)argv[0] + argv_idx;
+ argv_idx = -1;
+ break;
+ }
+ /*FALLTRHOUGH*/
case 'S': /* "-S {file}" execute Vim script */
case 'i': /* "-i {viminfo}" use for viminfo */
#ifndef FEAT_DIFF
@@ -990,7 +1001,17 @@
#endif
break;
- case 'w': /* "-w {scriptout}" append to script file */
+ case 'w': /* "-w {nr}" 'window' value */
+ /* "-w {scriptout}" append to script file */
+ if (vim_isdigit(*((char_u *)argv[0])))
+ {
+ argv_idx = 0;
+ i = get_number_arg((char_u *)argv[0], &argv_idx, 10);
+ set_option_value((char_u *)"window", (long)i, NULL, 0);
+ argv_idx = -1;
+ break;
+ }
+ /*FALLTRHOUGH*/
case 'W': /* "-W {scriptout}" overwrite script file */
if (scriptout != NULL)
goto scripterror;