diff options
-rw-r--r-- | src/charset.c | 3 | ||||
-rw-r--r-- | src/popupmnu.c | 16 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 18 insertions, 3 deletions
diff --git a/src/charset.c b/src/charset.c index 6ad8ae587..5436bb40b 100644 --- a/src/charset.c +++ b/src/charset.c @@ -317,7 +317,8 @@ trans_characters(buf, bufsize) } } -#if defined(FEAT_EVAL) || defined(FEAT_TITLE) || defined(PROTO) +#if defined(FEAT_EVAL) || defined(FEAT_TITLE) || defined(FEAT_INS_EXPAND) \ + || defined(PROTO) /* * Translate a string into allocated memory, replacing special chars with * printable chars. Returns NULL when out of memory. diff --git a/src/popupmnu.c b/src/popupmnu.c index f280ff25d..7d2e13795 100644 --- a/src/popupmnu.c +++ b/src/popupmnu.c @@ -280,8 +280,20 @@ pum_redraw() w = ptr2cells(p); if (*p == NUL || *p == TAB || totwidth + w > pum_width) { - /* Display the text that fits or comes before a Tab. */ - screen_puts_len(s, (int)(p - s), row, col, attr); + /* Display the text that fits or comes before a Tab. + * First convert it to printable characters. */ + char_u *st; + int saved = *p; + + *p = NUL; + st = transstr(s); + *p = saved; + if (st != NULL) + { + screen_puts_len(st, (int)STRLEN(st), row, col, + attr); + vim_free(st); + } col += width; if (*p != TAB) diff --git a/src/version.c b/src/version.c index 338edba4b..81b8f4993 100644 --- a/src/version.c +++ b/src/version.c @@ -667,6 +667,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 223, +/**/ 222, /**/ 221, |