NAME

Quiq::AnsiColor - Erzeuge Text mit/ohne ANSI Colorcodes

BASE CLASS

Quiq::Object

SYNOPSIS

use Quiq::AnsiColor;

my $a = Quiq::AnsiColor->new(-t STDOUT);
say $a->str('bold white on_cyan','Hello, world!');

DESCRIPTION

Die Klasse erlaubt es, Textausgaben - die typischerweise aufs Terminal gehen - mit ANSI Colorcodes auszuzeichnen und diese Auszeichnung bei Aufruf des Konstruktors zentral an- oder ab-zuschalten.

Terminal-Eigenschaften

Allgemein    Vordergrund  Hintergrund
-----------  -----------  -----------
dark         black        on_black
bold         red          on_red
underline    green        on_green
blink        yellow       on_yellow
reverse      blue         on_blue
concealed    magenta      on_magenta
reset        cyan         on_cyan
             white        on_white

Es kann eine Kombination aus Eigenschaften angegeben werden. Mehrere aus der Rubrik "Allgemein", eine aus der Rubrik "Vordergrund", eine aus der Rubrik "Hintergrund". Werden mehrere Eigenschaften angegeben, werden diese durch Leerzeichen getrennt.

Beispiele: 'bold reverse' oder 'dark red on_green'

Texte mit Colorcodes weiter verarbeiten

Die im folgenden genannten Programme aha und wkhtmltopdf sind im Debian-Repository enthalten.

Nach PDF wandeln

$ PROGRAM | aha | wkhtmltopdf - FILE.pdf

Drucken

$ PROGRAM | aha | wkhtmltopdf - - | lpr

Im Pager anzeigen

$ PROGRAM | less -R

SEE ALSO

  • Term::ANSIColor

METHODS

Konstruktor

new() - Instantiiere Objekt

Synopsis

$a = $class->new;
$a = $class->new($bool);

Arguments

$bool (Default: 1)

Wenn wahr, findet eine Auszeichnung mit ANSI Colorcodes statt, wenn falsch, nicht. Ist das Argument nicht angegeben, ist dies gleichbedeutend mit wahr.

Returns

AnsiColor-Objekt

Description

Instantiiere ein Objekt der Klasse und liefere dieses zurück. Durch den Parameter $bool wird entschieden, ob die Methode str() ihren Rückgabewert mit oder ohne ANSI Colorcodes liefert.

Objektmethoden

active() - Farbdarstellung eingeschaltet?

Synopsis

$bool = $a->active;

Returns

Bool

Description

Liefere wahr, wenn ANSI Colorcodes aktiviert sind, anderfalls falsch.

str() - Formatiere String mit Colorcodes

Synopsis

$str = $a->str($attr,$str);

Arguments

$attr

Attribut-Spezifikation gemäß Term::ANSIColor (siehe auch Terminal-Eigenschaften).

$str

Zeichenkette, die mit ANSI Colorcodes formatiert wird.

Returns

Zeichenkette mit ANSI Colorcodes (String)

Description

Formatiere Zeichenkette $str mit ANSI Colorcodes gemäß Spezifikation $attr und liefere das Resultat zurück. Die Colorcodes werden der Zeichenkette vorangestellt und mit dem Colorcode 'reset' beendet. Ist die Erzeugung von Colorcodes abgeschaltet (siehe Konstruktor), wird die Zeichenkette unverändert geliefert.

strLn() - Formatiere Zeile mit Colorcodes

Synopsis

$str = $a->strLn($attr,$str);

Arguments

Siehe str()

Returns

Siehe str()

Description

Wie str(), nur dass der Rückgabewert mit einem Newline beendet wird.

VERSION

1.222

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2024 Frank Seitz

LICENSE

This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.