]> granicus.if.org Git - vim/commitdiff
patch 8.0.1358: undercurl is not used in the terminal v8.0.1358
authorBram Moolenaar <Bram@vim.org>
Tue, 28 Nov 2017 20:25:21 +0000 (21:25 +0100)
committerBram Moolenaar <Bram@vim.org>
Tue, 28 Nov 2017 20:25:21 +0000 (21:25 +0100)
Problem:    Undercurl is not used in the terminal. (Kovid Goyal)
Solution:   Only fall back to underline when undercurl highlighting is not
            defined. (closes #1306)

src/screen.c
src/version.c

index 05853d442eeb9241e6b4ab7f85b4c01995a0e739..4d277e3c84bc8b88d1e9dcaf22b136d22f780c21 100644 (file)
@@ -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;
index 6fb11e9119e68bd1f66a0a5f159cd4373561a8af..3cbfe9ed78e6613330967cc374daef033e064f6c 100644 (file)
@@ -771,6 +771,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1358,
 /**/
     1357,
 /**/