Re: [PATCH/RFC] test-lib: add support for colors without tput

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 14, 2012 at 6:54 PM, Erik Faye-Lund <kusmabite@xxxxxxxxx> wrote:
> On Fri, Sep 14, 2012 at 6:41 PM, Erik Faye-Lund <kusmabite@xxxxxxxxx> wrote:
>> diff --git a/t/test-lib.sh b/t/test-lib.sh
>> index 78c4286..7d1b34b 100644
>> --- a/t/test-lib.sh
>> +++ b/t/test-lib.sh
>> @@ -129,6 +129,20 @@ export _x05 _x40 _z40 LF
>>  # This test checks if command xyzzy does the right thing...
>>  # '
>>  # . ./test-lib.sh
>> +
>> +if ! which tput > /dev/null ; then
>> +       tput () {
>> +               case "$1" in
>> +               bold)
>> +                       echo -ne "\033[1m" ;;
>> +               setaf)
>> +                       echo -ne "\033[0;3$2m" ;;
>> +               sgr0)
>> +                       echo -ne "\033(\033[m" ;;
>
> I should of course have checked this earlier, but I find now that
> "echo -ne" isn't portable. So perhaps this on top?
>
> diff --git a/t/test-lib.sh b/t/test-lib.sh
> index 7d1b34b..91a1d7b 100644
> --- a/t/test-lib.sh
> +++ b/t/test-lib.sh
> @@ -134,11 +134,11 @@ if ! which tput > /dev/null ; then
>         tput () {
>                 case "$1" in
>                 bold)
> -                       echo -ne "\033[1m" ;;
> +                       printf "%b" "\033[1m" ;;
>                 setaf)
> -                       echo -ne "\033[0;3$2m" ;;
> +                       printf "%b" "\033[0;3$2m" ;;
>                 sgr0)
> -                       echo -ne "\033(\033[m" ;;
> +                       printf "%b" "\033(\033[m" ;;
>                 esac
>         }
>  fi

And again, I'm stupid for not reading documentation properly; octal
escaped strings in the format string should work (and does on my
systems), so this is sufficient:

diff --git a/t/test-lib.sh b/t/test-lib.sh
index 7d1b34b..2a6149e 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -134,11 +134,11 @@ if ! which tput > /dev/null ; then
 	tput () {
 		case "$1" in
 		bold)
-			echo -ne "\033[1m" ;;
+			printf "\033[1m" ;;
 		setaf)
-			echo -ne "\033[0;3$2m" ;;
+			printf "\033[0;3$2m" ;;
 		sgr0)
-			echo -ne "\033(\033[m" ;;
+			printf "\033(\033[m" ;;
 		esac
 	}
 fi
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]