fidian / ansi

ANSI escape codes in pure bash - change text color, position the cursor, much more

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Escapes not evaluating correctly

lylemoffitt opened this issue · comments

Greetings,

I gave your script a try, but unfortunately it didn't seem to work for me..

lylemoffitt% ls
LICENSE.md README.md  ansi       examples   images                                                                                                                                                                 lylemoffitt% ansi --color-table
bold \e[1mSample\e[22m               faint \e[2mSample\e[22m              italic \e[3mSample\e[23m
underline \e[4mSample\e[24m          blink \e[5mSample\e[25m              inverse \e[7mSample\e[27m
invisible \e[8mSample\e[28m
strike \e[9mSample\e[29m             fraktur \e[20mSample\e[23m            double-underline \e[21mSample\e[24m
frame \e[51mSample\e[54m              encircle \e[52mSample\e[54m           overline \e[53mSample\e[55m

             black   red     green   yellow  blue    magenta cyan    white
bg-black     \e[40;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[40;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[40;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[40;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[40;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[40;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[40;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[40;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[100;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[100;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[100;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[100;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[100;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[100;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[100;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[100;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-red       \e[41;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[41;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[41;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[41;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[41;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[41;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[41;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[41;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[101;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[101;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[101;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[101;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[101;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[101;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[101;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[101;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-green     \e[42;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[42;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[42;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[42;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[42;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[42;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[42;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[42;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[102;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[102;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[102;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[102;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[102;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[102;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[102;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[102;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-yellow    \e[43;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[43;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[43;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[43;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[43;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[43;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[43;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[43;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[103;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[103;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[103;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[103;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[103;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[103;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[103;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[103;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-blue      \e[44;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[44;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[44;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[44;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[44;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[44;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[44;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[44;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[104;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[104;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[104;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[104;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[104;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[104;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[104;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[104;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-magenta   \e[45;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[45;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[45;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[45;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[45;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[45;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[45;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[45;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[105;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[105;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[105;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[105;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[105;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[105;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[105;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[105;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-cyan      \e[46;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[46;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[46;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[46;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[46;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[46;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[46;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[46;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[106;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[106;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[106;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[106;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[106;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[106;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[106;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[106;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-white     \e[47;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[47;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[47;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[47;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[47;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[47;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[47;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[47;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
  +intense   \e[107;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[107;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[107;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[107;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[107;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[107;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[107;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m  \e[107;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m

Legend:
    Normal color:  f = faint, n = normal, b = bold.
    Intense color:  F = faint, N = normal, B = bold.
lylemoffitt%

I got the same results in BASH and ZSH (login shell). This is on OSX 10.8.


In any case I ended up going with chalk in node.js, so don't worry about fixing it or anything. I just thought this info might be interesting to you.

I appreciate that you for this bug report. What terminal software are you
using? I would like to reproduce this if possible on my Macs.

It looks like I need to use another way to get bash to write the escape
character. "\e" is not being interpreted right. What version of bash are
you running?

Does chalk work for you? I like chalk a lot and that works really well for
JavaScript applications.
On Dec 23, 2014 2:34 PM, "Lyle Moffitt" notifications@github.com wrote:

Greetings,

I gave your script a try, but unfortunately it didn't seem to work for me..

lylemoffitt% ls
LICENSE.md README.md ansi examples images lylemoffitt% ansi --color-table
bold \e[1mSample\e[22m faint \e[2mSample\e[22m italic \e[3mSample\e[23m
underline \e[4mSample\e[24m blink \e[5mSample\e[25m inverse \e[7mSample\e[27m
invisible \e[8mSample\e[28m
strike \e[9mSample\e[29m fraktur \e[20mSample\e[23m double-underline \e[21mSample\e[24m
frame \e[51mSample\e[54m encircle \e[52mSample\e[54m overline \e[53mSample\e[55m

         black   red     green   yellow  blue    magenta cyan    white

bg-black \e[40;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[40;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[40;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[40;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[40;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[40;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[40;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[40;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[100;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[100;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[100;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[100;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[100;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[100;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[100;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[100;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-red \e[41;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[41;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[41;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[41;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[41;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[41;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[41;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[41;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[101;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[101;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[101;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[101;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[101;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[101;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[101;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[101;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-green \e[42;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[42;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[42;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[42;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[42;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[42;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[42;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[42;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[102;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[102;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[102;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[102;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[102;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[102;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[102;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[102;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-yellow \e[43;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[43;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[43;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[43;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[43;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[43;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[43;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[43;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[103;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[103;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[103;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[103;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[103;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[103;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[103;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[103;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-blue \e[44;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[44;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[44;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[44;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[44;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[44;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[44;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[44;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[104;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[104;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[104;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[104;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[104;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[104;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[104;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[104;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-magenta \e[45;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[45;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[45;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[45;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[45;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[45;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[45;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[45;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[105;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[105;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[105;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[105;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[105;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[105;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[105;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[105;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-cyan \e[46;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[46;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[46;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[46;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[46;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[46;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[46;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[46;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[106;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[106;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[106;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[106;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[106;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[106;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[106;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[106;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
bg-white \e[47;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[47;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[47;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[47;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[47;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[47;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[47;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[47;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m
+intense \e[107;30m\e[2mf\e[22mn\e[1mb\e[22m\e[90m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[107;31m\e[2mf\e[22mn\e[1mb\e[22m\e[91m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[107;32m\e[2mf\e[22mn\e[1mb\e[22m\e[92m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[107;33m\e[2mf\e[22mn\e[1mb\e[22m\e[93m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[107;34m\e[2mf\e[22mn\e[1mb\e[22m\e[94m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[107;35m\e[2mf\e[22mn\e[1mb\e[22m\e[95m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[107;36m\e[2mf\e[22mn\e[1mb\e[22m\e[96m\e[2mF\e[22mN\e[1mB\e[22m\e[0m \e[107;37m\e[2mf\e[22mn\e[1mb\e[22m\e[97m\e[2mF\e[22mN\e[1mB\e[22m\e[0m

Legend:
Normal color: f = faint, n = normal, b = bold.
Intense color: F = faint, N = normal, B = bold.
lylemoffitt%

I got the same results in BASH and ZSH (login shell). This is on OSX 10.8.

In any case I ended up going with chalk
https://github.com/sindresorhus/chalk in node.js, so don't worry about
fixing it or anything. I just thought this info might be interesting to you.


Reply to this email directly or view it on GitHub
#1.

  1. I use iTerm2 mostly. I tried setting the terminal type to xterm-256 and ansi, but no joy.
  2. The problem i think might be that my version of echo lacks the -e flag. You might want to look into using tput (aka termcap) for your encoding instead. That's the canonical approach to this kind of thing.
lylemoffitt% bash --version
GNU bash, version 4.3.30(1)-release (x86_64-apple-darwin12.5.0)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
  1. Yeah, I find chalk sublimely easy to use. I used to not like JS so much, partly because I thought it was only useful in web programming. That view has been changing quickly ever since I really discovered Node.js. It's the part that really makes the whole thing work for me. It's so much faster inlining javascript code instead of having to look through a half-dozen man pages for the shell commands I need. The only thing I dislike is how bloated and poorly documented and organized npm is.

It turns out that if you search the escape sequences that are supported according to man bash on Mac OS X 10.8, it says that "\e" is supported. That's untrue, but luckily octal is supported. I replaced "\e" with "\033" and everything is working as expected in my tests. I'm marking this one as closed.

Thanks again for your detailed messages and providing all of the necessary answers to me right away. It helped a lot!

Yup! Checks out fine with OSX 10.8, shells: tcsh, bash, zsh, & sh. Color table prints fine and all examples work as expected.