Mercurial > vim
changeset 12964:339681756948 v8.0.1358
patch 8.0.1358: undercurl is not used in the terminal
commit https://github.com/vim/vim/commit/8b9e20afb0da79a21155988a38704b5777cc2efe
Author: Bram Moolenaar <Bram@vim.org>
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)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 28 Nov 2017 21:30:05 +0100 |
parents | a26d6fffe2bf |
children | 24c73ddf8b38 |
files | src/screen.c src/version.c |
diffstat | 2 files changed, 16 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- 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;