Skip to content

Instantly share code, notes, and snippets.

@o11c
Created November 20, 2015 01:51
Show Gist options
  • Select an option

  • Save o11c/4d9658afc42f4d5e7fa5 to your computer and use it in GitHub Desktop.

Select an option

Save o11c/4d9658afc42f4d5e7fa5 to your computer and use it in GitHub Desktop.
Test terminal attributes
#!/bin/bash
CHARS=" "
PRE="\e[48;5;"
SUF=m
VARIANT=${1:-RGB}
case $VARIANT in
RGB)
;;
RBG)
;;
GRB)
;;
GBR)
;;
BRG)
;;
BGR)
;;
*)
echo Unknown VARIANT
exit 1
;;
esac
if [ "$TERM" = fbterm ]
then
PRE="\e[2;"
SUF='}'
fi
echo System Colors:
for COLOR in {0..7}; do echo -ne "$PRE${COLOR}$SUF$CHARS";done
echo -e '\e[0m'
for COLOR in {8..15}; do echo -ne "$PRE${COLOR}$SUF$CHARS";done
echo -e '\e[0m'
echo Color Cube, 6x6x6:
case $VARIANT in
RGB)
for R in {0..5};do
for G in {0..5}; do
for B in {0..5}; do
echo -ne "$PRE$((16+(36*R)+(6*G)+B))$SUF$CHARS"
done
echo -ne '\e[0m '
done
echo
done
;;
RBG)
for R in {0..5};do
for B in {0..5}; do
for G in {0..5}; do
echo -ne "$PRE$((16+(36*R)+(6*G)+B))$SUF$CHARS"
done
echo -ne '\e[0m '
done
echo
done
;;
GRB)
for G in {0..5};do
for R in {0..5}; do
for B in {0..5}; do
echo -ne "$PRE$((16+(36*R)+(6*G)+B))$SUF$CHARS"
done
echo -ne '\e[0m '
done
echo
done
;;
GBR)
for G in {0..5};do
for B in {0..5}; do
for R in {0..5}; do
echo -ne "$PRE$((16+(36*R)+(6*G)+B))$SUF$CHARS"
done
echo -ne '\e[0m '
done
echo
done
;;
BRG)
for B in {0..5};do
for R in {0..5}; do
for G in {0..5}; do
echo -ne "$PRE$((16+(36*R)+(6*G)+B))$SUF$CHARS"
done
echo -ne '\e[0m '
done
echo
done
;;
BGR)
for B in {0..5};do
for G in {0..5}; do
for R in {0..5}; do
echo -ne "$PRE$((16+(36*R)+(6*G)+B))$SUF$CHARS"
done
echo -ne '\e[0m '
done
echo
done
;;
*)
echo Unknown VARIANT;
exit 1;;
esac
echo Grayscale Ramp:
for COLOR in 16 16 16 16 16 16 16 59 59 59 59 102 102 102 102 145 145 145 145 188 188 188 188 231; do
echo -ne "$PRE${COLOR}$SUF$CHARS"
done
echo -e '\e[0m'
for COLOR in {232..255}; do
echo -ne "$PRE${COLOR}$SUF$CHARS"
done
echo -e '\e[0m'
for COLOR in 0 0 0 0 0 0 0 8 8 8 8 8 8 8 7 7 7 7 7 7 7 15 15 15 ; do
echo -ne "$PRE${COLOR}$SUF$CHARS"
done
echo -e '\e[0m'
echo Attributes:
echo -e 'foreground -> \e[031m foreground \e[039m <- foreground 31 39\e[m'
echo -e 'background -> \e[041m background \e[049m <- background 41 49\e[m'
echo -e 'fg-bright -> \e[091m fg-bright \e[039m <- fg-bright 91 39\e[m'
echo -e 'bg-bright -> \e[101m bg-bright \e[049m <- bg-bright 101 49\e[m'
echo -e 'bold -> \e[001m bold \e[022m <- bold 1 22\e[m'
echo -e 'faint -> \e[002m faint \e[022m <- faint 2 22\e[m'
echo -e 'italic -> \e[003m italic \e[023m <- italic 3 23\e[m'
echo -e 'underline -> \e[004m underline \e[024m <- underline 4 24\e[m'
echo -e 'double -> \e[021m double \e[024m <- double 21 24\e[m'
echo -e 'blink -> \e[005m blink \e[025m <- blink 5 25\e[m'
#echo -e 'rapid -> \e[006m rapid \e[025m <- rapid 6 25\e[m'
echo -e 'reverse -> \e[007m reverse \e[027m <- reverse 7 27\e[m'
echo -e 'conceal -> \e[008m conceal \e[028m <- conceal 8 28\e[m'
echo -e 'striked -> \e[009m striked \e[029m <- striked 9 29\e[m'
#echo -e 'font1 -> \e[011m font1 \e[010m <- font1 11 10\e[m'
#echo -e 'font2 -> \e[012m font2 \e[010m <- font2 12 10\e[m'
#echo -e 'font3 -> \e[013m font3 \e[010m <- font3 13 10\e[m'
#echo -e 'font4 -> \e[014m font4 \e[010m <- font4 14 10\e[m'
#echo -e 'font5 -> \e[015m font5 \e[010m <- font5 15 10\e[m'
#echo -e 'font6 -> \e[016m font6 \e[010m <- font6 16 10\e[m'
#echo -e 'font7 -> \e[017m font7 \e[010m <- font7 17 10\e[m'
#echo -e 'font8 -> \e[018m font8 \e[010m <- font8 18 10\e[m'
#echo -e 'font9 -> \e[019m font9 \e[010m <- font9 19 10\e[m'
#echo -e 'framed -> \e[051m framed \e[054m <- framed 51 54\e[m'
#echo -e 'circled -> \e[052m circled \e[054m <- circled 52 54\e[m'
#echo -e 'overline -> \e[053m overline \e[055m <- overline 53 55\e[m'
#echo -e 'right1 -> \e[060m right1 \e[065m <- right1 60 65\e[m'
#echo -e 'right2 -> \e[061m right2 \e[065m <- right2 61 65\e[m'
#echo -e 'left1 -> \e[062m left1 \e[065m <- left1 62 65\e[m'
#echo -e 'left2 -> \e[063m left2 \e[065m <- left2 63 65\e[m'
#echo -e 'stress -> \e[064m stress \e[065m <- stress 64 65\e[m'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment