0
0
mirror of https://github.com/vim/vim.git synced 2025-09-29 04:34:16 -04:00

updated for version 7.0c12

This commit is contained in:
Bram Moolenaar
2006-04-07 21:33:12 +00:00
parent 7b89edc62d
commit 5555acc08e
15 changed files with 426 additions and 121 deletions

View File

@@ -1822,7 +1822,7 @@ vgetorpeek(advance)
* Using ":normal" can also do this, but it saves the typeahead buffer,
* thus it should be OK. But don't get a key from the user then.
*/
if (vgetc_busy
if (vgetc_busy > 0
#ifdef FEAT_EX_EXTRA
&& ex_normal_busy == 0
#endif
@@ -1831,7 +1831,7 @@ vgetorpeek(advance)
local_State = get_real_state();
vgetc_busy = TRUE;
++vgetc_busy;
if (advance)
KeyStuffed = FALSE;
@@ -2316,10 +2316,25 @@ vgetorpeek(advance)
#ifdef FEAT_EVAL
/*
* Handle ":map <expr>": evaluate the {rhs} as an
* expression.
* expression. Save and restore the typeahead so that
* getchar() can be used.
*/
if (mp->m_expr)
s = eval_to_string(mp->m_str, NULL, FALSE);
{
tasave_T tabuf;
int save_vgetc_busy = vgetc_busy;
save_typeahead(&tabuf);
if (tabuf.typebuf_valid)
{
vgetc_busy = 0;
s = eval_to_string(mp->m_str, NULL, FALSE);
vgetc_busy = save_vgetc_busy;
}
else
s = NULL;
restore_typeahead(&tabuf);
}
else
#endif
s = mp->m_str;
@@ -2689,7 +2704,7 @@ vgetorpeek(advance)
gui_update_cursor(TRUE, FALSE);
#endif
vgetc_busy = FALSE;
--vgetc_busy;
return c;
}