¿Cómo imprimo un patrón de prueba de 256 colores en mi terminal?
Quiero comprobar que mi terminal soporta correctamente 256 colores.
Respuesta1
Patrón de prueba de 256 colores
Para obtener la siguiente imagen, utilice:
curl -s https://gist.githubusercontent.com/HaleTom/89ffe32783f89f403bba96bd7bcd1263/raw/e50a28ec54188d2413518788de6c6367ffcea4f7/print256colours.sh | bash
Elesencia bash
/ zsh
códigoesshellcheck
limpio y también admite "¡Mira mamá, sin subprocesos!".
Alternativamente, para un bash
rapidito:
for i in {0..255} ; do
printf "\x1b[48;5;%sm%3d\e[0m " "$i" "$i"
if (( i == 15 )) || (( i > 15 )) && (( (i-15) % 6 == 0 )); then
printf "\n";
fi
done
Para una exageración total, el abuelo del lote es terminal-colors
unguión de 572 líneascon múltiplesformatos de salida.
Tú también puedesimprimir un patrón de prueba de color verdadero (24 bits).
Respuesta2
Encontre unbuen script de Python para eso en GitHubescrito por Justin Abrahms que también imprime los códigos hexadecimales de los colores.
Descargue el script al directorio de trabajo actual
wget https://gist.githubusercontent.com/justinabrahms/1047767/raw/a79218b6ca8c1c04856968d2d202510a4f7ec215/colortest.py
dale permiso de ejecución
chmod +x colortest.py
Ejecutarlo:
./colortest.py
Aquí está el script completo en caso de que el enlace se rompa:
#!/usr/bin/env python
# Ported to Python from http://www.vim.org/scripts/script.php?script_id=1349
print "Color indexes should be drawn in bold text of the same color."
print
colored = [0] + [0x5f + 40 * n for n in range(0, 5)]
colored_palette = [
"%02x/%02x/%02x" % (r, g, b)
for r in colored
for g in colored
for b in colored
]
grayscale = [0x08 + 10 * n for n in range(0, 24)]
grayscale_palette = [
"%02x/%02x/%02x" % (a, a, a)
for a in grayscale
]
normal = "\033[38;5;%sm"
bold = "\033[1;38;5;%sm"
reset = "\033[0m"
for (i, color) in enumerate(colored_palette + grayscale_palette, 16):
index = (bold + "%4s" + reset) % (i, str(i) + ':')
hex = (normal + "%s" + reset) % (i, color)
newline = '\n' if i % 6 == 3 else ''
print index, hex, newline,
Respuesta3
Mientras nobastanteun "patrón de prueba", tengoselector-de-color-xterm:
Respuesta4
Una sola línea
color de fondo
for i in {0..255}; do printf '\e[48;5;%dm%3d ' $i $i; (((i+3) % 18)) || printf '\e[0m\n'; done
color de primer plano
for i in {0..255}; do printf '\e[38;5;%dm%3d ' $i $i; (((i+3) % 18)) || printf '\e[0m\n'; done