# HG changeset patch # User Christian Brabandt # Date 1503433805 -7200 # Node ID 3ed8bcc9a013082044f6d85f68fe68a6709156ed # Parent 7a4fb06f700bac07cce14ce970d5cd5ade85621f patch 8.0.0986: terminal feature always requires multi-byte feature commit https://github.com/vim/vim/commit/ec0e07a32484ab70f1c7668294c3d8d67f8aca82 Author: Bram Moolenaar Date: Tue Aug 22 22:21:37 2017 +0200 patch 8.0.0986: terminal feature always requires multi-byte feature Problem: Terminal feature always requires multi-byte feature. Solution: Remove #ifdef FEAT_MBYTE, disable terminal without multi-byte. diff --git a/src/feature.h b/src/feature.h --- a/src/feature.h +++ b/src/feature.h @@ -1269,8 +1269,10 @@ /* * +terminal ":terminal" command. Runs a terminal in a window. + * requires +channel and +multibyte */ -#if !defined(FEAT_JOB_CHANNEL) && defined(FEAT_TERMINAL) +#if defined(FEAT_TERMINAL) && \ + !(defined(FEAT_JOB_CHANNEL) && defined(FEAT_MBYTE)) # undef FEAT_TERMINAL #endif #if defined(FEAT_TERMINAL) && !defined(CURSOR_SHAPE) diff --git a/src/terminal.c b/src/terminal.c --- a/src/terminal.c +++ b/src/terminal.c @@ -63,7 +63,6 @@ * mouse in the Terminal window for copy/paste. * - when 'encoding' is not utf-8, or the job is using another encoding, setup * conversions. - * - update ":help function-list" for terminal functions. * - In the GUI use a terminal emulator for :!cmd. * - Copy text in the vterm to the Vim buffer once in a while, so that * completion works. @@ -2103,14 +2102,11 @@ term_update_window(win_T *wp) if (c == NUL) { ScreenLines[off] = ' '; -#if defined(FEAT_MBYTE) if (enc_utf8) ScreenLinesUC[off] = NUL; -#endif } else { -#if defined(FEAT_MBYTE) if (enc_utf8) { if (c >= 0x80) @@ -2124,7 +2120,7 @@ term_update_window(win_T *wp) ScreenLinesUC[off] = NUL; } } -# ifdef WIN3264 +#ifdef WIN3264 else if (has_mbyte && c >= 0x80) { char_u mb[MB_MAXBYTES+1]; @@ -2140,9 +2136,8 @@ term_update_window(win_T *wp) else ScreenLines[off] = c; } -# endif +#endif else -#endif ScreenLines[off] = c; } ScreenAttrs[off] = cell2attr(cell.attrs, cell.fg, cell.bg); @@ -2151,11 +2146,9 @@ term_update_window(win_T *wp) ++off; if (cell.width == 2) { -#if defined(FEAT_MBYTE) if (enc_utf8) ScreenLinesUC[off] = NUL; else if (!has_mbyte) -#endif ScreenLines[off] = NUL; ++pos.col; ++off; diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -770,6 +770,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 986, +/**/ 985, /**/ 984,