updated for version 7.2a
diff --git a/src/getchar.c b/src/getchar.c
index d1c70c9..ec5ae87 100644
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -221,7 +221,7 @@
char_u *
get_inserted()
{
- return(get_buffcont(&redobuff, FALSE));
+ return get_buffcont(&redobuff, FALSE);
}
/*
@@ -2233,6 +2233,8 @@
if ((mp == NULL || max_mlen >= mp_match_len)
&& keylen != KL_PART_MAP)
{
+ int save_keylen = keylen;
+
/*
* When no matching mapping found or found a
* non-matching mapping that matches at least what the
@@ -2252,6 +2254,12 @@
{
keylen = check_termcode(max_mlen + 1, NULL, 0);
+ /* If no termcode matched but 'pastetoggle'
+ * matched partially it's like an incomplete key
+ * sequence. */
+ if (keylen == 0 && save_keylen == KL_PART_KEY)
+ keylen = KL_PART_KEY;
+
/*
* When getting a partial match, but the last
* characters were not typed, don't wait for a
@@ -2293,7 +2301,9 @@
#endif
/* When there was a matching mapping and no
* termcode could be replaced after another one,
- * use that mapping. */
+ * use that mapping (loop around). If there was
+ * no mapping use the character from the
+ * typeahead buffer right here. */
if (mp == NULL)
{
/*
@@ -2883,6 +2893,12 @@
#endif
)
{
+
+#if defined(FEAT_NETBEANS_INTG)
+ /* Process the queued netbeans messages. */
+ netbeans_parse_messages();
+#endif
+
if (got_int || (script_char = getc(scriptin[curscript])) < 0)
{
/* Reached EOF.
@@ -3847,7 +3863,7 @@
while (++len <= 3)
msg_putchar(' ');
- /* Get length of what we write */
+ /* Display the LHS. Get length of what we write. */
len = msg_outtrans_special(mp->m_keys, TRUE);
do
{