# HG changeset patch # User Christian Brabandt # Date 1511901005 -3600 # Node ID 339681756948439fd535749778cdbdfd84cb2892 # Parent a26d6fffe2bfe85f2a9075aa93152a80ef8b8f87 patch 8.0.1358: undercurl is not used in the terminal commit https://github.com/vim/vim/commit/8b9e20afb0da79a21155988a38704b5777cc2efe Author: Bram Moolenaar Date: Tue Nov 28 21:25:21 2017 +0100 patch 8.0.1358: undercurl is not used in the terminal Problem: Undercurl is not used in the terminal. (Kovid Goyal) Solution: Only fall back to underline when undercurl highlighting is not defined. (closes #1306) diff --git a/src/screen.c b/src/screen.c --- a/src/screen.c +++ b/src/screen.c @@ -8058,8 +8058,11 @@ screen_start_highlight(int attr) out_str(T_ME); if ((attr & HL_STANDOUT) && T_SO != NULL) /* standout */ out_str(T_SO); - if ((attr & (HL_UNDERLINE | HL_UNDERCURL)) && T_US != NULL) - /* underline or undercurl */ + if ((attr & HL_UNDERCURL) && T_UCS != NULL) /* undercurl */ + out_str(T_UCS); + if (((attr & HL_UNDERLINE) /* underline or undercurl */ + || ((attr & HL_UNDERCURL) && T_UCS == NULL)) + && T_US != NULL) out_str(T_US); if ((attr & HL_ITALIC) && T_CZH != NULL) /* italic */ out_str(T_CZH); @@ -8177,7 +8180,15 @@ screen_stop_highlight(void) else out_str(T_SE); } - if (screen_attr & (HL_UNDERLINE | HL_UNDERCURL)) + if ((screen_attr & HL_UNDERCURL) && T_UCE != NULL) + { + if (STRCMP(T_UCE, T_ME) == 0) + do_ME = TRUE; + else + out_str(T_UCE); + } + if ((screen_attr & HL_UNDERLINE) + || ((screen_attr & HL_UNDERCURL) && T_UCE == NULL)) { if (STRCMP(T_UE, T_ME) == 0) do_ME = TRUE; diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -772,6 +772,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1358, +/**/ 1357, /**/ 1356,