Skip to content

Instantly share code, notes, and snippets.

@isaacs
Created November 7, 2010 20:35
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save isaacs/666412 to your computer and use it in GitHub Desktop.
Save isaacs/666412 to your computer and use it in GitHub Desktop.
test your terminal's colors.
#!/bin/bash
#
# This file echoes a bunch of color codes to the
# terminal to demonstrate what's available. Each
# line is the color code of one forground color,
# out of 17 (default + 16 escapes), followed by a
# test use of that color on all nine background
# colors (default + 8 escapes).
#
T='gYw' # The test text
echo -e "\n 40m 41m 42m 43m 44m 45m 46m 47m";
for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' \
'1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' \
' 36m' '1;36m' ' 37m' '1;37m';
do
FG=${FGs// /}
echo -en " $FGs \033[$FG $T "
for BG in 40m 41m 42m 43m 44m 45m 46m 47m; do
echo -en " \033[$FG\033[$BG $T \033[0m";
done
echo;
done
echo
echo "To use, take the code at the side, combine with the code on the top."
echo "For example, the bold white on blue is \\033[44m\\033[1m. Like this:"
echo -e "\033[1m\033[44mwhite on blue!\033[0m"
# exit 0
# The default xterm 256 colour palette
for red in 0 1 2 3 4 5; do
for green in 0 1 2 3 4 5; do
for blue in 0 1 2 3 4 5; do
c=$((16 + ($red * 36) + ($green * 6) + $blue))
r=$((($red ? ($red * 40 + 55) : 0)))
g=$((($green ? ($green * 40 + 55) : 0)))
b=$((($blue ? ($blue * 40 + 55) : 0)))
# if [ $r -eq $g ] && [ $r -eq $b ]; then
echo -ne "\033[38;5;${c}m 38;5;${c}[${r},${g},${b}] \033[0m"
# fi
# printf ".ef%d { color: #%2.2x%2.2x%2.2x; } " $c $r $g $b
# printf ".eb%d { background-color: #%2.2x%2.2x%2.2x; }\n" $c $r $g $b
done
echo ""
done
done
exit 0
for gray in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23; do
c=$(($gray+232))
l=$(($gray*10 + 8))
printf ".ef%d { color: #%2.2x%2.2x%2.2x; } " $c $l $l $l
printf ".eb%d { background-color: #%2.2x%2.2x%2.2x; }\n" $c $l $l $l
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment