From ba73d1b7982a4e9f5d9bdfa3f2df897620c7c414 Mon Sep 17 00:00:00 2001 From: ADAM David Alan Martin Date: Sun, 5 Jun 2022 23:10:11 -0400 Subject: [PATCH] Added support for underline colour in sgr gen. --- bin/__build_sgr_code | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/bin/__build_sgr_code b/bin/__build_sgr_code index a963409..560c27c 100755 --- a/bin/__build_sgr_code +++ b/bin/__build_sgr_code @@ -119,10 +119,14 @@ function render_color() command_color=30 if (( ${use_3_bit} )) then - basecolor=$(( ${command_color} )) + # Underline colours need 8-bit or more + if (( ${background} > 1 )) ; then return; fi + basecolor=$(( ${command_color} + ${background}*10)) next="$(( ${basecolor} + ${legacy_3_bit} ))" elif (( ${use_4_bit} )) then + # Underline colours need 8-bit or more + if (( ${background} > 1 )) ; then return; fi command_color=$(( ${command_color} + ${intensity_1_bit} * 60 )) basecolor=$(( ${command_color} + ${background}*10 )) next="$(( ${basecolor} + ${legacy_3_bit} ))" @@ -381,8 +385,14 @@ do bg:[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]) make_color 1 rgb_color ${1:3} ;; bg:[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]) make_color 1 rgb_color ${1:3} ;; + ul:ext:*) make_color 2 ext_color ${1:7} ;; + # 12-bit color also supported + ul:[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]) make_color 2 rgb_color ${1:3} ;; + ul:[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]) make_color 2 rgb_color ${1:3} ;; + fg:*) make_color 0 named_color ${1:3} ;; bg:*) make_color 1 named_color ${1:3} ;; + ul:*) make_color 2 named_color ${1:3} ;; *) make_color 0 named_color $1 ;; esac if [[ ! -z ${output} ]]