Provided by: libdata-printer-perl_1.001001-1_all 

NAME
Data::Printer::Theme - create your own color themes for DDP!
SYNOPSIS
package Data::Printer::Theme::MyCustomTheme;
sub colors {
return {
array => '#aabbcc', # array index numbers
number => '#aabbcc', # numbers
string => '#aabbcc', # strings
class => '#aabbcc', # class names
method => '#aabbcc', # method names
undef => '#aabbcc', # the 'undef' value
hash => '#aabbcc', # hash keys
regex => '#aabbcc', # regular expressions
code => '#aabbcc', # code references
glob => '#aabbcc', # globs (usually file handles)
vstring => '#aabbcc', # version strings (v5.30.1, etc)
lvalue => '#aabbcc', # lvalue label
format => '#aabbcc', # format type
repeated => '#aabbcc', # references to seen values
caller_info => '#aabbcc', # details on what's being printed
weak => '#aabbcc', # weak references flag
tainted => '#aabbcc', # tainted flag
unicode => '#aabbcc', # utf8 flag
escaped => '#aabbcc', # escaped characters (\t, \n, etc)
brackets => '#aabbcc', # (), {}, []
separator => '#aabbcc', # the "," between hash pairs, array elements, etc
quotes => '#aabbcc', # q(")
unknown => '#aabbcc', # any (potential) data type unknown to Data::Printer
};
}
1;
Then in your ".dataprinter" file:
theme = MyCustomTheme
That's it! Alternatively, you can load it at runtime:
use DDP theme => 'MyCustomTheme';
DESCRIPTION
Data::Printer colorizes your output by default. Originally, the only way to customize colors was to
override the default ones. Data::Printer 1.0 introduced themes, and now you can pick a theme or create
your own.
Data::Printer comes with several themes for you to choose from:
• Material (the default)
• Monokai
• Solarized
• Classic (original pre-1.0 colors)
Run "examples/try_me.pl" to see them in action on your own terminal!
CREATING YOUR THEMES
A theme is a module in the "Data::Printer::Theme" namespace. It doesn't have to inherit or load any
module. All you have to do is implement a single function, "colors", that returns a hash reference where
keys are the expected color labels, and values are the colors you want to use.
Feel free to copy & paste the code from the SYNOPSIS and customize at will :)
Customizing Colors
Setting any color to "undef" means "Don't colorize this". Otherwise, the color is a string which can be
one of the following:
Named colors, Term::ANSIColor style (discouraged)
Only 8 named colors are supported:
black, red, green, yellow, blue, magenta, cyan, white
and their "bright_XXX", "on_XXX" and "on_bright_XXX" variants.
Those are provided only as backards compatibility with older versions of Data::Printer and, because of
their limitation, we encourage you to try and use one of the other representations.
SGR Escape code (Terminal style)
You may provide any SGR escape sequence, and they will be honored as long as you use double quotes (e.g.
"\e[38;5;196m"). You may use this to achieve extra control like blinking, etc. Note, however, that some
terminals may not support them.
An RGB value in one of those formats (Recommended)
'rgb(0,255,30)'
'#00FF3B'
NOTE: There may not be a real 1:1 conversion between RGB and terminal colors. In those cases we use
approximation to achieve the closest option.
SEE ALSO
Data::Printer
perl v5.36.0 2023-10-21 Data::Printer::Theme(3pm)