1
0
forked from aniani/vim

patch 8.0.1356: using simalt in a GUIEnter autocommand inserts characters

Problem:    Using simalt in a GUIEnter autocommand inserts strange characters.
            (Chih-Long Chang)
Solution:   Ignore K_NOP in Insert mode. (closes #2379)
This commit is contained in:
Bram Moolenaar 2017-11-28 20:47:40 +01:00
parent a45ff6caba
commit c5aa55db7e
3 changed files with 7 additions and 5 deletions

View File

@ -781,7 +781,7 @@ edit(
#endif #endif
/* /*
* Get a character for Insert mode. Ignore K_IGNORE. * Get a character for Insert mode. Ignore K_IGNORE and K_NOP.
*/ */
if (c != K_CURSORHOLD) if (c != K_CURSORHOLD)
lastc = c; /* remember the previous char for CTRL-D */ lastc = c; /* remember the previous char for CTRL-D */
@ -798,7 +798,7 @@ edit(
do do
{ {
c = safe_vgetc(); c = safe_vgetc();
} while (c == K_IGNORE); } while (c == K_IGNORE || c == K_NOP);
#ifdef FEAT_AUTOCMD #ifdef FEAT_AUTOCMD
/* Don't want K_CURSORHOLD for the second key, e.g., after CTRL-V. */ /* Don't want K_CURSORHOLD for the second key, e.g., after CTRL-V. */

View File

@ -417,12 +417,12 @@ getcmdline(
cursorcmd(); /* set the cursor on the right spot */ cursorcmd(); /* set the cursor on the right spot */
/* Get a character. Ignore K_IGNORE, it should not do anything, such /* Get a character. Ignore K_IGNORE and K_NOP, they should not do
* as stop completion. */ * anything, such as stop completion. */
do do
{ {
c = safe_vgetc(); c = safe_vgetc();
} while (c == K_IGNORE); } while (c == K_IGNORE || c == K_NOP);
if (KeyTyped) if (KeyTyped)
{ {

View File

@ -771,6 +771,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 */
/**/
1356,
/**/ /**/
1355, 1355,
/**/ /**/