Introducción
Mi pregunta surge de la necesidad de comprender por qué tengo ahora (después de varias pruebas) Terminal y tmux que admiten 256 colores y tput colorsme dicen que solo hay 8 de ellos.
Antecedentes
Vamos a empezar desde el principio.
Estoy usando una caja de Ubuntu , Guake , tmux , Vim y me encanta el tema Solarizado . Se veían bastante horribles, así que decidí habilitar el soporte de 256 colores y jugar un poco.
Veamos qué pasa con mi Terminal . tput colorsdice que hay 8 colores. Personalmente los puse en púrpura, a la izquierda, y por supuesto a la derecha tenemos 2 tonos de azul diferentes. $TERMdice xterm. (Tener el color lsI eval this en mi .bashrc.)

Vim también se ve bien, a pesar del hecho de que lo llamo con la 256bandera en un entorno donde no se admiten 256 colores .
set t_Co=256
let g:solarized_termcolors=256
colorscheme solarized
El único tipo que se queja del espacio de color reducido es tmux . Llamar tmuxproporciona los resultados esperados "incorrectos".

Pero llamar tmuxcon la -2bandera hace que todo funcione bien, mágicamente .

Ahora lo único que entiendo es que -2es equivalente a export TERM=screen-256color( fuente ).
Guake se comporta de manera análoga a Terminal y ambos responden xterma la pregunta echo $TERM.
Pregunta
Básicamente, ¿alguien entiende por qué todo funciona incluso si no debería?
- ¿Soy sádico porque me quejo por qué las cosas funcionan? Tal vez.
- ¿Hay una mejor razón? Claro: me gustaría arreglar la apariencia de otras cajas de Ubuntu en mi oficina, y me gustaría entender por qué las cosas funcionan o no.
Experimentos adicionales
Ejecutar este script (ligeramente modificado) en mi xtermproporciona el siguiente resultado: 256 colores, pero solo 16 se muestran correctamente.

Luego, cambiando el perfil del terminal, también cambian estos 16 colores.

Más pruebas están siguiendo.
De izquierda a derecha, de arriba a abajo, tenemos un tema de color Solarizeddircolor ansi-dark y 256dark, luego , un esquema de color predeterminado ( Tango ) dircolor ansi-darky 256dark.

Observación : en teoría, el esquema de color dircolor ansi-darken Solarized debería coincidir estrechamente con el dircolor 256dark. Esto no está sucediendo claramente para los archivos específicos enumerados. En cambio, esto sucede bastante cuando en el directorio de trabajo hay carpetas , archivos de texto y enlaces simbólicos . Conclusión : no se prestó mucha atención al codificar los 256darkcolores.
Conclusiones preliminares
xtermadmite 256 colores, a pesar de lo que tput colorsdice. Los programas pueden referirse a la ansipaleta (personalizable por el usuario) o definir sus colores, eligiendo entre un total de 256 colores.
tput colorses una prueba poco confiable. ¿Podrías revisar mis conclusiones preliminares ?
tput colorssolo puede devolver un valor y en terminales que admiten cualquiera de 2,8,16,88 o 256 colores, solo se devuelve el primer valor (8 en su caso). Para obtener el verdadero valor, use el script de mi último comentario. ¿Qué devuelve eso?
haga clic derecho / ver imagen para inspeccionar a resolución completa
mapa de referencia de colores dirigidos "degradados" solarizados