Si bien es genial que Terminal ahora tenga soporte integrado para cambiar los colores ANSI, me resulta molesto que ajuste automáticamente los colores para mejorar el contraste, lo que significa que los colores que realmente elijo a menudo terminan desteñidos o apagados de alguna otra manera. . Aquí hay una captura de pantalla que explica el problema:
Esto me molesta porque me gusta usar el mismo esquema de color en Terminal y MacVim, y con este manejo de colores por parte de Terminal, no coinciden con los de MacVim.
¿Alguien sabe de una solución a esto, además de cambiar a iTerm 2 (que preferiría no hacerlo? Me gusta el resto de Terminal, especialmente algunos toques de GUI como la campana visual pulsante). ¡Gracias!
Aquí está el truco que necesita saber: los valores establecidos a través de RGB se alteran, los establecidos a través de HSB no.
Tuve un problema similar al usar el (excelente) esquema de color solarizado: MacVim tenía un color de fondo más oscuro (y correcto) que Terminal, aunque estaba configurando todos los valores RGB correctos según la especificación solarizada. Mira aquí:
Básicamente, necesita saber cuáles se supone que son los valores de color para cada uno de los colores Terminal ANSI, texto y Fondo (tenga en cuenta que este está en la pestaña Ventana) y luego configurarlos a través del selector HSB en lugar de RGB. Mira este ejemplo:
Por el motivo que sea (sospecho que se trata de algún tipo de perfil, o tal vez un ajuste de contraste como sugieres), el color RGB que ingresas no es lo que obtienes. También notará que una vez que haya establecido los valores a través de HSB, cambiar al selector RGB mostrará opciones diferentes a las esperadas. Todas las conversiones de valor solarizadas concuerdan según Photoshop; parece ser algo que el selector de color de Apple está haciendo por ti.
base03
(color oscuro de la ventana), por ejemplo, se procesa correctamente, pero base3
(color claro de la ventana) no lo hace del todo. Y aunque la diferencia es tan sutil que es casi insignificante, el enfoque de HSB a dispositivo RGB no anula por completo el efecto descrito en la pregunta del OP.Device RGB
Ahora los colores especificados por valor hexadecimal no estarán sujetos a la conversión del espacio de color.
En Sierra, el selector de espacio de color ha cambiado al icono de engranaje:
Los perfiles de color son definitivamente importantes, pero hay otro problema al acecho aquí: Terminal.app ilumina automáticamente cualquier color cuando se muestra sobre el fondo predeterminado. Aquí, por ejemplo, están los colores generados por Terminal.app que ejecuta el tema de color solarizado , medidos con DigitalColor Meter en modo sRGB y comparados con los valores canónicos de sRGB solarizados.
Cuando se presenta sobre un fondo negro (o de cualquier otro color), Terminal.app produce aproximadamente los colores correctos; sin embargo, en el fondo predeterminado, todos los colores excepto el predeterminado y el texto en negrita predeterminado son sustancialmente demasiado brillantes.
En resumen: no, no hay medios admitidos para deshabilitar esto.
La terminal aplica automáticamente un contraste mínimo cuando muestra un color ANSI (o una tabla de 256 colores extendida) en el color de fondo de la terminal, o cuando muestra el color de primer plano/texto de la terminal en un color de fondo ANSI.
Esto pretende ser una conveniencia, de modo que uno pueda establecer un color de fondo o de primer plano y hacer que contrasten con los colores ANSI sin tener que ajustar todos los colores ANSI. Esto era especialmente importante en versiones anteriores de Terminal, que carecían de soporte de Preferencias para personalizar los colores ANSI.
Las versiones anteriores de Terminal aplicaban el contraste mínimo para todas las combinaciones de colores, pero eso significaba que, por ejemplo, el texto ANSI rojo sobre rojo podía ser legible, pero algunos programas muestran intencionalmente el texto con el mismo color frontal y de fondo para ocultarlo. (para mostrar pistas de juegos o chistes, por ejemplo). Por eso, las versiones más nuevas de Terminal no aplican el contraste mínimo cuando se muestra un color ANSI sobre otro.
Ahora, en lugar de solo abordar el caso del mismo color, Terminal evita aplicar el contraste mínimo para todas las combinaciones de colores ANSI, porque se supone que si el usuario personaliza cualquier color ANSI, los personalizará para que contrasten entre sí como desee. . También se supone que esos usuarios ajustarán o tendrán en cuenta los colores de fondo y de primer plano de la terminal para que se ajusten al esquema de color deseado.
Si la solución de usar colores con diferentes espacios de color, sugerida en otras respuestas, funciona, es probable que dependa de un error en el código de manejo de color, que se supone que funciona con cualquier color y puede dejar de funcionar en el futuro. cuando se solucione ese error.
Si es importante para usted poder deshabilitar o ajustar explícitamente el comportamiento de contraste mínimo, le recomiendo informar a Apple mediante la presentación de un informe en https://developer.apple.com/bug-reporting/ utilizando cualquier ID de Apple.
Abra la configuración de la ventana para su tema, alterne el color de fondo, establezca el desenfoque en 0% y la opacidad en 100%. Después de esto, tus colores serán los mismos que quieras. También debe verificar cada color que elija para el texto de estos parámetros.
kopischke
Página de Chris
Página de Chris
Jan Warchoł
usuario2551