ruby ncurses terminal 256color

Obteniendo 256 colores de ruby-ncurses



terminal 256color (3)

Tengo 256 colores funcionando bien en mi terminal ( scripts de prueba aquí ), pero deja de funcionar cuando uso ncurses (a través de Ruby-ncurses). Imprimir las secuencias de escape dadas en esa página funciona bien, pero cuando inicializo ncurses ''puts'' deja de funcionar y no puedo mostrar los colores con cualquiera de las diversas funciones ncurses de cambio de color / salida de cadena que he encontrado. ¿Lo que da?


No estoy seguro de si esta sería toda la historia, pero asegúrese de que las capacidades de su terminal efectivamente proporcionen la descripción de 256 colores.

¿Cuál es el valor de variable de entorno TERM? Intente configurarlo en xterm-256color y vuelva a ejecutarlo. ncurses debería obtener las secuencias de escape de color adecuadas.

También puede probar las capacidades del terminal y la salida de color del terminal con el programa que usamos en el desarrollo de SXEmacs:

http://www.triatlantico.org/tmp/tty-colors.c

Compilar con gcc -o tty-colors tty-colors.c -lncurses

EDITAR: Tenga en cuenta que solo porque los scripts que se encuentran en la red generan 256 colores, eso no está "todo listo". Los programas de maldiciones dependen de terminfo y termcap y de la variable de entorno TERM para averiguar cómo interactuar con el terminal. Entonces, para que una aplicación de curses pueda usar 256 colores, se debe establecer la variable TERM en un nombre de terminal existente que admita 256 colores. El programa C de arriba le mostrará lo que piensa ncurses sobre su terminal, no solo muestra las secuencias de xterm como lo hacen la mayoría de las secuencias de comandos [incluso la de X.org]


njsf: Estabas parcialmente aquí, y después de retocar mucho más, eventualmente conseguí que funcionara. Gracias por tu ayuda. La historia: XTerm (y rxvt, y Eterm) admiten 256 colores a través de secuencias de escape (lo que estaba viendo) pero ''tput colors'' dirá ''8'' y ncurses no podrá acceder a ellos, porque ncurses está jugando bien e intentando acceder a través de terminfo.

Para el beneficio de cualquier persona con dolor similar:

Descubrí que necesito instalar el paquete ncurses-term (Ubuntu) para obtener / lib / terminfo / x / xterm-256color y otros archivos terminfo de 256 colores. Luego establecí mi TERM en xterm-256color y agregué la línea ''* customization: -color'' a mis ~ / .Xdefaults, ejecuté ''xrdb -merge ~ / .Xdefaults'' para cargarlo, y desde entonces tengo 256 colores adecuados soporte en nuevos xterms.


ajuste

ENV [''TERM''] + = ''-256color'' si ENV [''TERM''] == ''xterm'' # activa 256 colores

funciona en ubuntu 10.04 +