diff options
author | Bram Moolenaar <Bram@vim.org> | 2006-03-14 22:53:34 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2006-03-14 22:53:34 +0000 |
commit | c7d893589ea0829a930516a3b5ea544a6baf3984 (patch) | |
tree | e73e4b7783ecff5e565ab247523ec22109b702e9 /src/ex_docmd.c | |
parent | af48b0924f7abdf4d79ab5a79d90550fa14f9e21 (diff) |
updated for version 7.0224
Diffstat (limited to 'src/ex_docmd.c')
-rw-r--r-- | src/ex_docmd.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/ex_docmd.c b/src/ex_docmd.c index f1c6bb1e04..3ba0d37ef5 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -301,6 +301,7 @@ static void ex_at __ARGS((exarg_T *eap)); static void ex_bang __ARGS((exarg_T *eap)); static void ex_undo __ARGS((exarg_T *eap)); static void ex_redo __ARGS((exarg_T *eap)); +static void ex_later __ARGS((exarg_T *eap)); static void ex_redir __ARGS((exarg_T *eap)); static void ex_redraw __ARGS((exarg_T *eap)); static void ex_redrawstatus __ARGS((exarg_T *eap)); @@ -8210,6 +8211,37 @@ ex_redo(eap) } /* + * ":earlier" and ":later". + */ +/*ARGSUSED*/ + static void +ex_later(eap) + exarg_T *eap; +{ + long count = 0; + int sec = FALSE; + char_u *p = eap->arg; + + if (*p == NUL) + count = 1; + else if (isdigit(*p)) + { + count = getdigits(&p); + switch (*p) + { + case 's': ++p; sec = TRUE; break; + case 'm': ++p; sec = TRUE; count *= 60; break; + case 'h': ++p; sec = TRUE; count *= 60 * 60; break; + } + } + + if (*p != NUL) + EMSG2(_(e_invarg2), eap->arg); + else + undo_time(eap->cmdidx == CMD_earlier ? -count : count, sec); +} + +/* * ":redir": start/stop redirection. */ static void |