SNOWMAN Geschrieben 13. Januar 2005 Geschrieben 13. Januar 2005 Hi, hab n Perlskript des ne ganze menge an Datensätzen aus einer DB ließt und dann ausgibt. Da es Formatierungsvorgaben gibt ist es teils unübersichtlich und man weiß nicht genau welcher Wert zu welchem Attribut gehört. Daher dachte ich mir, ich mach diese Ausgabe farbig. aber irgendwie klappt das ganze nicht so richtig: mit [k]Term::ANSIColor[/k] soll man die Colorbefehle verwenden können. mit [k]print color 'blue';[/k] sollen alle folgenden Ausgaben blau sein. mein Code: foreach $data (@attribute) { my ($attid, $attval, $attname) = @$data; if($switch == 0){ print color "blue"; $switch = 1; } elsif($switch == 1){ print color "reset"; $switch = 0; } $retval = $retval . sprintf("%-${id_len}s = %-${val_len}s (%s)\n", $attid, $attval, $attname); }#foreach my $data (@attribute) $switch is meine wechselvariable das die zeilen abwechselnd farbig sind (blue erstma zum testen. $retval is der string den die funktion zur ausgabe liefert. 2 Fragen: 1. Funktioniert es überhaupt wenn ich den string dort zwar definire und mit sprintf formatiere, aber garnicht ausgebe? 2. Wieso werden die Farbdefinietionen ausgegeben oohne umgewandelt zu werden? ←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m←[0m←[34m Zitieren
dummabua Geschrieben 14. Januar 2005 Geschrieben 14. Januar 2005 dumme frage: hast schon "use Term::ANSIColor;" dam Anfang oder? dann würd ich eher auch ein Syntax Problem tippen... z.B. schreib die Farbe mal in klammern, also so ("blue") Zitieren
SNOWMAN Geschrieben 14. Januar 2005 Autor Geschrieben 14. Januar 2005 hab use term::ansicolor und win32:console da liegts nich dran. es soll laut aussage anderer personen daran liegen das die ansiunterstützung nicht aktiv ist, hab sogar ne erklärung gefunden wies geht, nur muss man dazu aufs %systemroot% und da dürfen wir nich hin... Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.