Mercurial > vim
comparison src/term.c @ 20619:68c206d3a251 v8.2.0863
patch 8.2.0863: cannot set a separate color for underline/undercurl
Commit: https://github.com/vim/vim/commit/e023e88bed3f2e0a7ea4cf10cac2de80bc9c271c
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun May 31 16:42:30 2020 +0200
patch 8.2.0863: cannot set a separate color for underline/undercurl
Problem: Cannot set a separate color for underline/undercurl.
Solution: Add the t_AU and t_8u termcap codes. (Timur Celik, closes https://github.com/vim/vim/issues/6011)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 31 May 2020 16:45:03 +0200 |
parents | c2570baa2e4c |
children | 5481c982a279 |
comparison
equal
deleted
inserted
replaced
20618:8b79d6353530 | 20619:68c206d3a251 |
---|---|
926 {(int)KS_U7, IF_EB("\033[6n", ESC_STR "[6n")}, | 926 {(int)KS_U7, IF_EB("\033[6n", ESC_STR "[6n")}, |
927 # ifdef FEAT_TERMGUICOLORS | 927 # ifdef FEAT_TERMGUICOLORS |
928 // These are printf strings, not terminal codes. | 928 // These are printf strings, not terminal codes. |
929 {(int)KS_8F, IF_EB("\033[38;2;%lu;%lu;%lum", ESC_STR "[38;2;%lu;%lu;%lum")}, | 929 {(int)KS_8F, IF_EB("\033[38;2;%lu;%lu;%lum", ESC_STR "[38;2;%lu;%lu;%lum")}, |
930 {(int)KS_8B, IF_EB("\033[48;2;%lu;%lu;%lum", ESC_STR "[48;2;%lu;%lu;%lum")}, | 930 {(int)KS_8B, IF_EB("\033[48;2;%lu;%lu;%lum", ESC_STR "[48;2;%lu;%lu;%lum")}, |
931 {(int)KS_8U, IF_EB("\033[58;2;%lu;%lu;%lum", ESC_STR "[58;2;%lu;%lu;%lum")}, | |
931 # endif | 932 # endif |
933 {(int)KS_CAU, IF_EB("\033[58;5;%dm", ESC_STR "[58;5;%dm")}, | |
932 {(int)KS_CBE, IF_EB("\033[?2004h", ESC_STR "[?2004h")}, | 934 {(int)KS_CBE, IF_EB("\033[?2004h", ESC_STR "[?2004h")}, |
933 {(int)KS_CBD, IF_EB("\033[?2004l", ESC_STR "[?2004l")}, | 935 {(int)KS_CBD, IF_EB("\033[?2004l", ESC_STR "[?2004l")}, |
934 {(int)KS_CST, IF_EB("\033[22;2t", ESC_STR "[22;2t")}, | 936 {(int)KS_CST, IF_EB("\033[22;2t", ESC_STR "[22;2t")}, |
935 {(int)KS_CRT, IF_EB("\033[23;2t", ESC_STR "[23;2t")}, | 937 {(int)KS_CRT, IF_EB("\033[23;2t", ESC_STR "[23;2t")}, |
936 {(int)KS_SSI, IF_EB("\033[22;1t", ESC_STR "[22;1t")}, | 938 {(int)KS_SSI, IF_EB("\033[22;1t", ESC_STR "[22;1t")}, |
1185 {(int)KS_CAB, "[CAB%d]"}, | 1187 {(int)KS_CAB, "[CAB%d]"}, |
1186 {(int)KS_CAF, "[CAF%d]"}, | 1188 {(int)KS_CAF, "[CAF%d]"}, |
1187 {(int)KS_CSB, "[CSB%d]"}, | 1189 {(int)KS_CSB, "[CSB%d]"}, |
1188 {(int)KS_CSF, "[CSF%d]"}, | 1190 {(int)KS_CSF, "[CSF%d]"}, |
1189 # endif | 1191 # endif |
1192 {(int)KS_CAU, "[CAU%d]"}, | |
1190 {(int)KS_OP, "[OP]"}, | 1193 {(int)KS_OP, "[OP]"}, |
1191 {(int)KS_LE, "[LE]"}, | 1194 {(int)KS_LE, "[LE]"}, |
1192 {(int)KS_CL, "[CL]"}, | 1195 {(int)KS_CL, "[CL]"}, |
1193 {(int)KS_VI, "[VI]"}, | 1196 {(int)KS_VI, "[VI]"}, |
1194 {(int)KS_VE, "[VE]"}, | 1197 {(int)KS_VE, "[VE]"}, |
1615 {KS_CM, "cm"}, {KS_SR, "sr"}, | 1618 {KS_CM, "cm"}, {KS_SR, "sr"}, |
1616 {KS_CRI,"RI"}, {KS_VB, "vb"}, {KS_KS, "ks"}, | 1619 {KS_CRI,"RI"}, {KS_VB, "vb"}, {KS_KS, "ks"}, |
1617 {KS_KE, "ke"}, {KS_TI, "ti"}, {KS_TE, "te"}, | 1620 {KS_KE, "ke"}, {KS_TI, "ti"}, {KS_TE, "te"}, |
1618 {KS_CTI, "TI"}, {KS_CTE, "TE"}, | 1621 {KS_CTI, "TI"}, {KS_CTE, "TE"}, |
1619 {KS_BC, "bc"}, {KS_CSB,"Sb"}, {KS_CSF,"Sf"}, | 1622 {KS_BC, "bc"}, {KS_CSB,"Sb"}, {KS_CSF,"Sf"}, |
1620 {KS_CAB,"AB"}, {KS_CAF,"AF"}, {KS_LE, "le"}, | 1623 {KS_CAB,"AB"}, {KS_CAF,"AF"}, {KS_CAU,"AU"}, |
1624 {KS_LE, "le"}, | |
1621 {KS_ND, "nd"}, {KS_OP, "op"}, {KS_CRV, "RV"}, | 1625 {KS_ND, "nd"}, {KS_OP, "op"}, {KS_CRV, "RV"}, |
1622 {KS_VS, "vs"}, {KS_CVS, "VS"}, | 1626 {KS_VS, "vs"}, {KS_CVS, "VS"}, |
1623 {KS_CIS, "IS"}, {KS_CIE, "IE"}, | 1627 {KS_CIS, "IS"}, {KS_CIE, "IE"}, |
1624 {KS_CSC, "SC"}, {KS_CEC, "EC"}, | 1628 {KS_CSC, "SC"}, {KS_CEC, "EC"}, |
1625 {KS_TS, "ts"}, {KS_FS, "fs"}, | 1629 {KS_TS, "ts"}, {KS_FS, "fs"}, |
1626 {KS_CWP, "WP"}, {KS_CWS, "WS"}, | 1630 {KS_CWP, "WP"}, {KS_CWS, "WS"}, |
1627 {KS_CSI, "SI"}, {KS_CEI, "EI"}, | 1631 {KS_CSI, "SI"}, {KS_CEI, "EI"}, |
1628 {KS_U7, "u7"}, {KS_RFG, "RF"}, {KS_RBG, "RB"}, | 1632 {KS_U7, "u7"}, {KS_RFG, "RF"}, {KS_RBG, "RB"}, |
1629 {KS_8F, "8f"}, {KS_8B, "8b"}, | 1633 {KS_8F, "8f"}, {KS_8B, "8b"}, {KS_8U, "8u"}, |
1630 {KS_CBE, "BE"}, {KS_CBD, "BD"}, | 1634 {KS_CBE, "BE"}, {KS_CBD, "BD"}, |
1631 {KS_CPS, "PS"}, {KS_CPE, "PE"}, | 1635 {KS_CPS, "PS"}, {KS_CPE, "PE"}, |
1632 {KS_CST, "ST"}, {KS_CRT, "RT"}, | 1636 {KS_CST, "ST"}, {KS_CRT, "RT"}, |
1633 {KS_SSI, "Si"}, {KS_SRI, "Ri"}, | 1637 {KS_SSI, "Si"}, {KS_SRI, "Ri"}, |
1634 {(enum SpecialKey)0, NULL} | 1638 {(enum SpecialKey)0, NULL} |
2879 term_color(T_CAB, n); | 2883 term_color(T_CAB, n); |
2880 else if (*T_CSB) | 2884 else if (*T_CSB) |
2881 term_color(T_CSB, n); | 2885 term_color(T_CSB, n); |
2882 } | 2886 } |
2883 | 2887 |
2888 void | |
2889 term_ul_color(int n) | |
2890 { | |
2891 if (*T_CAU) | |
2892 term_color(T_CAU, n); | |
2893 } | |
2894 | |
2884 /* | 2895 /* |
2885 * Return "dark" or "light" depending on the kind of terminal. | 2896 * Return "dark" or "light" depending on the kind of terminal. |
2886 * This is just guessing! Recognized are: | 2897 * This is just guessing! Recognized are: |
2887 * "linux" Linux console | 2898 * "linux" Linux console |
2888 * "screen.linux" Linux console with screen | 2899 * "screen.linux" Linux console with screen |
2949 | 2960 |
2950 void | 2961 void |
2951 term_bg_rgb_color(guicolor_T rgb) | 2962 term_bg_rgb_color(guicolor_T rgb) |
2952 { | 2963 { |
2953 term_rgb_color(T_8B, rgb); | 2964 term_rgb_color(T_8B, rgb); |
2965 } | |
2966 | |
2967 void | |
2968 term_ul_rgb_color(guicolor_T rgb) | |
2969 { | |
2970 term_rgb_color(T_8U, rgb); | |
2954 } | 2971 } |
2955 #endif | 2972 #endif |
2956 | 2973 |
2957 #if (defined(FEAT_TITLE) && (defined(UNIX) || defined(VMS) \ | 2974 #if (defined(FEAT_TITLE) && (defined(UNIX) || defined(VMS) \ |
2958 || defined(MACOS_X))) || defined(PROTO) | 2975 || defined(MACOS_X))) || defined(PROTO) |