Foros del Web » Programación para mayores de 30 ;) » Programación General »

Mostar colores por la terminal en windows

Estas en el tema de Mostar colores por la terminal en windows en el foro de Programación General en Foros del Web. Buenas, Sabéis por qué en linux me funcionan los colores por el terminal y en windows (consola cmd) no, ¿sabéis por qué? El código que ...
  #1 (permalink)  
Antiguo 07/07/2010, 14:52
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Mostar colores por la terminal en windows

Buenas,

Sabéis por qué en linux me funcionan los colores por el terminal y en windows (consola cmd) no, ¿sabéis por qué?

El código que uso es el siguiente. No se puede mostrar colores en el terminal de windows? :S

http://perl.active-venture.com/lib/Term/ANSIColor.html

Código PERL:
Ver original
  1. use Term::ANSIColor;
  2.     print color 'bold blue';
  3.     print "This text is bold blue.\n";
  4.     print color 'reset';
  5.     print "This text is normal.\n";
  6.     print colored ("Yellow on magenta.\n", 'yellow on_magenta');
  7.     print "This text is normal.\n";
  8.     print colored ['yellow on_magenta'], "Yellow on magenta.\n";
  9.  
  10.     use Term::ANSIColor qw(uncolor);
  11.     print uncolor '01;31', "\n";
  12.  
  13.     use Term::ANSIColor qw(:constants);
  14.     print BOLD, BLUE, "This text is in bold blue.\n", RESET;
  15.  
  16.     use Term::ANSIColor qw(:constants);
  17.     $Term::ANSIColor::AUTORESET = 1;
  18.     print BOLD BLUE "This text is in bold blue.\n";
  19.     print "This text is normal.\n";

Muchas gracias de antemano!
  #2 (permalink)  
Antiguo 07/07/2010, 15:01
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Mostar colores por la terminal en windows

Encontré esta página pero me falla la librería y tampoco me deja instalarla, no sé si lo acabo de hacer bien del todo...

http://www.bribes.org/perl/ansi.html

Código PERL:
Ver original
  1. #!C:\perl\bin\perl.exe -w
  2. use Win32::Console::ANSI;
  3. use Term::ANSIColor;
  4.  
  5. print color 'bold blue';
  6. print "This text is bold blue.\n";
  7. print color 'reset';
  8. print "This text is normal.\n";
  9. print colored ("Bold yellow on magenta.\n", 'bold yellow on_magenta');
  10. print "This text is normal.\n";

Error al ejecutar el script

C:\Documents and Settings\Dani\Escritorio>test.pl
Can't locate Win32/Console/ANSI.pm in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib .) at C:\Documents and Settings\Dani\Escritorio\test.pl line 2.
BEGIN failed--compilation aborted at C:\Documents and Settings\Dani\Escritorio\test.pl line 2.


Error al instalar la librería

C:\Documents and Settings\Dani\Escritorio>cpan Win32
Going to read C:\Perl\cpan\Metadata
Database was generated on Tue, 06 Jul 2010 21:27:03 GMT
Running install for module 'Win32'
Running make for J/JD/JDB/Win32-0.39.tar.gz
Checksum for C:\Perl\cpan\sources\authors\id\J\JD\JDB\Win32-0.39.tar.gz ok
Win32-0.39/
Win32-0.39/Changes
Win32-0.39/longpath.inc
Win32-0.39/Makefile.PL
Win32-0.39/MANIFEST
Win32-0.39/META.yml
Win32-0.39/README
Win32-0.39/t/
Win32-0.39/t/CreateFile.t
Win32-0.39/t/ExpandEnvironmentStrings.t
Win32-0.39/t/GetCurrentThreadId.t
Win32-0.39/t/GetFileVersion.t
Win32-0.39/t/GetFolderPath.t
Win32-0.39/t/GetFullPathName.t
Win32-0.39/t/GetLongPathName.t
Win32-0.39/t/GetOSName.t
Win32-0.39/t/GetOSVersion.t
Win32-0.39/t/GetShortPathName.t
Win32-0.39/t/GuidGen.t
Win32-0.39/t/Names.t
Win32-0.39/t/Unicode.t
Win32-0.39/Win32.pm
Win32-0.39/Win32.xs

CPAN.pm: Going to build J/JD/JDB/Win32-0.39.tar.gz

Checking if your kit is complete...
Looks good
Writing Makefile for Win32
"nmake" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
JDB/Win32-0.39.tar.gz
nmake -- NOT OK
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible


Qué hago mal?

Muchas gracias de antemano!
  #3 (permalink)  
Antiguo 08/07/2010, 03:17
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Respuesta: Mostar colores por la terminal en windows

Es cpan Win32::Console::ANSI .

Eso sí, si el Perl que estás usando en Windows es el de ActiveState, es mucho mejor que uses el gestor PPM.
__________________
JF^D Perl Programming en Español
  #4 (permalink)  
Antiguo 08/07/2010, 04:45
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Mostar colores por la terminal en windows

Cita:
Iniciado por jferrero Ver Mensaje
Es cpan Win32::Console::ANSI .

Eso sí, si el Perl que estás usando en Windows es el de ActiveState, es mucho mejor que uses el gestor PPM.
Buenas,

He desinstalado todas las versiones de perl que tenia en mi S.O.
Me he bajado la version ActivePerl 5.10.1.1007
http://www.activestate.com/activeperl/downloads

He probado el script y sigue sin funcionar.
Entonces he abierto el Perl Package Manager y veo que ya está instalada Win32-Console 0.09



Pero el error sigue estando ahí

c:\mis_scripts>colores.pl
Can't locate Win32/Console/ANSI.pm in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib .) at c:\mis
_scripts\colores.pl line 2.
BEGIN failed--compilation aborted at c:\mis_scripts\colores.pl line 2.

Me dejo algo?

Muchas gracias de antemano
  #5 (permalink)  
Antiguo 08/07/2010, 04:48
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Mostar colores por la terminal en windows

Cita:
Iniciado por neodani Ver Mensaje
c:\mis_scripts>colores.pl
Can't locate Win32/Console/ANSI.pm in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib .) at c:\mis
_scripts\colores.pl line 2.
BEGIN failed--compilation aborted at c:\mis_scripts\colores.pl line 2.
He buscado en esa ruta C:/Perl/site/lib y no tengo ninguna librería interesante solo un par de carpetas, en cambio aquí C:\Perl\lib\Win32 si que tengo.

¿Es posible que el programa esté buscando las librerias donde no toca?

Gracias de antemano!
  #6 (permalink)  
Antiguo 08/07/2010, 04:54
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Mostar colores por la terminal en windows

Ya ta, no vi que existia el Win32-Console-Ansi, lo instalé y funcionó el script.
Muchas gracias

Etiquetas: colores, terminal, windows
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:20.