The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

App::ANSIColorUtils - Utilities related to ANSI color

VERSION

This document describes version 0.010 of App::ANSIColorUtils (from Perl distribution App-ANSIColorUtils), released on 2021-01-20.

DESCRIPTION

This distributions provides the following command-line utilities:

FUNCTIONS

show_ansi_color_table

Usage:

 show_ansi_color_table(%args) -> [status, msg, payload, meta]

Show a table of ANSI codes & colors.

This function is not exported.

Arguments ('*' denotes required arguments):

  • width => str (default: 8)

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

show_assigned_rgb_colors

Usage:

 show_assigned_rgb_colors(%args) -> [status, msg, payload, meta]

Take arguments, pass them through assign_rgb_color(), show the results.

assign_rgb_color() from Color::RGB::Util takes a string, produce SHA1 digest from it, then take 24bit from the digest as the assigned color.

This function is not exported.

Arguments ('*' denotes required arguments):

  • strings* => array[str]

  • tone => str

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

show_colors

Usage:

 show_colors(%args) -> [status, msg, payload, meta]

Show colors specified in argument as text with ANSI colors.

This function is not exported.

Arguments ('*' denotes required arguments):

  • colors* => array[str]

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

show_colors_from_scheme

Usage:

 show_colors_from_scheme(%args) -> [status, msg, payload, meta]

Show colors from a Graphics::ColorNames scheme.

This function is not exported.

Arguments ('*' denotes required arguments):

  • scheme* => perl::colorscheme::modname

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

show_colors_from_theme

Usage:

 show_colors_from_theme(%args) -> [status, msg, payload, meta]

Show colors from a ColorTheme scheme.

This function is not exported.

Arguments ('*' denotes required arguments):

  • theme* => perl::colortheme::modname_with_optional_args

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

show_rand_rgb_colors

Usage:

 show_rand_rgb_colors(%args) -> [status, msg, payload, meta]

Produce N random RGB colors using rand_rgb_colors() and show the results.

This function is not exported.

Arguments ('*' denotes required arguments):

  • light_color => bool (default: 1)

  • n* => posint

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

show_text_using_color_gradation

Usage:

 show_text_using_color_gradation(%args) -> [status, msg, payload, meta]

Print text using gradation between two colors.

Examples:

  • Example #1:

     show_text_using_color_gradation(text => "Hello, world", color1 => "blue", color2 => "pink");

    Result:

     [undef, "0000ff", undef, {}]

This can be used to demonstrate 24bit color support in terminal emulators.

This function is not exported.

Arguments ('*' denotes required arguments):

  • color1 => color::rgb24 (default: "ffff00")

  • color2 => color::rgb24 (default: "0000ff")

  • text => str

    If unspecified, will show a bar of '=' across the terminal.

Returns an enveloped result (an array).

First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (payload) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

Return value: (any)

HOMEPAGE

Please visit the project's homepage at https://metacpan.org/release/App-ANSIColorUtils.

SOURCE

Source repository is at https://github.com/perlancar/perl-App-ANSIColorUtils.

BUGS

Please report any bugs or feature requests on the bugtracker website https://github.com/perlancar/perl-App-ANSIColorUtils/issues

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

SEE ALSO

AUTHOR

perlancar <perlancar@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2021, 2020, 2019, 2017 by perlancar@cpan.org.

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