package App::Greple::colors;
=head1 NAME
colors - Greple module for various colormap
=head1 SYNOPSIS
greple -Mcolors
=head1 OPTIONS
=over 4
=item B<--light>
For light terminal. Same as a default.
=item B<--dark>
For dark terminal.
=item B<--grey24>
=item B<--grey24-bg>
24 level grey scales.
=item B<--solarized>
=item B<--solarized-fg>
=item B<--solarized-bg>
Solarized colors. B<--solarized> is same as B<--solarized-fg>.
=item B<--git-color-blame>
Colorize L<git-blame(1)> command output.
=back
=head1 SEE ALSO
L<https://github.com/altercation/solarized>
=cut
use v5.14;
use warnings;
1;
__DATA__
option --light \
--cm K/544,K/454,K/445 \
--cm K/455,K/545,K/554 \
--cm K/543,K/453,K/435 \
--cm K/534,K/354,K/345 \
--cm K/444 \
--cm K/433,K/343,K/334 \
--cm K/344,K/434,K/443 \
--cm K/333
option --dark \
--cm 555/100,555/010,555/001 \
--cm 555/011,555/101,555/110 \
--cm 555/021,555/201,555/210 \
--cm 555/012,555/102,555/120 \
--cm 555/111 \
--cm 555/211,555/121,555/112 \
--cm 555/122,555/212,555/221 \
--cm 555/222
option --bright --light
option --greyhex12 \
--cm #000,#111,#222,#333,#444,#555,#666,#777,#888,#AAA,#BBB,#CCC,#DDD,#EEE,#FFF
option --greyhex \
--cm 080808,121212,1c1c1c,262626,303030,3a3a3a,444444,4e4e4e \
--cm 585858,626262,6c6c6c,767676,808080,8a8a8a,949494,9e9e9e \
--cm a8a8a8,b2b2b2,bcbcbc,c6c6c6,d0d0d0,dadada,e4e4e4,eeeeee
option --greyhex-bg \
--cm ffffff/080808,ffffff/121212,ffffff/1c1c1c,ffffff/262626 \
--cm ffffff/303030,ffffff/3a3a3a,ffffff/444444,ffffff/4e4e4e \
--cm ffffff/585858,ffffff/626262,ffffff/6c6c6c,ffffff/767676 \
--cm ffffff/808080,ffffff/8a8a8a,ffffff/949494,ffffff/9e9e9e \
--cm 000000/a8a8a8,000000/b2b2b2,000000/bcbcbc,000000/c6c6c6 \
--cm 000000/d0d0d0,000000/dadada,000000/e4e4e4,000000/eeeeee
option --grey24 \
--cm L01,L02,L03,L04,L05,L06,L07,L08,L09,L10,L11,L12 \
--cm L13,L14,L15,L16,L17,L18,L19,L20,L21,L22,L23,L24
option --grey24-bg \
--cm w/L01,w/L02,w/L03,w/L04 \
--cm w/L05,w/L06,w/L07,w/L08 \
--cm w/L09,w/L10,w/L11,w/L12 \
--cm w/L13,w/L14,w/L15,w/L16 \
--cm K/L17,K/L18,K/L19,K/L20 \
--cm K/L21,K/L22,K/L23,K/L24
option --pastel \
--cm w/123,w/231,w/312 \
--cm w/321,w/231,w/312
option --dark-pastel \
--cm w/012,w/120,w/201 \
--cm w/210,w/120,w/201
######################################################################
# Solarized
######################################################################
define {base03} #002b36
define {base02} #073642
define {base01} #586e75
define {base00} #657b83
define {base0} #839496
define {base1} #93a1a1
define {base2} #eee8d5
define {base3} #fdf6e3
define {yellow} #b58900
define {orange} #cb4b16
define {red} #dc322f
define {magenta} #d33682
define {violet} #6c71c4
define {blue} #268bd2
define {cyan} #2aa198
define {green} #859900
option --solarized --solarized-fg
option --solarized-fg \
--cm {yellow} \
--cm {orange} \
--cm {red} \
--cm {magenta} \
--cm {violet} \
--cm {blue} \
--cm {cyan} \
--cm {green}
option --solarized-bg \
--cm L25/{yellow} \
--cm L25/{orange} \
--cm L25/{red} \
--cm L25/{magenta} \
--cm L25/{violet} \
--cm L25/{blue} \
--cm L25/{cyan} \
--cm L25/{green}
option --solarized-base03 --face +/{base03}
option --solarized-base02 --face +/{base02}
option --solarized-base01 --face +/{base01}
option --solarized-base00 --face +/{base00}
option --solarized-base0 --face +/{base0}
option --solarized-base1 --face +/{base1}
option --solarized-base2 --face +/{base2}
option --solarized-base3 --face +/{base3}
option --solarized-face03 --face +{base03}
option --solarized-face02 --face +{base02}
option --solarized-face01 --face +{base01}
option --solarized-face00 --face +{base00}
option --solarized-face0 --face +{base0}
option --solarized-face1 --face +{base1}
option --solarized-face2 --face +{base2}
option --solarized-face3 --face +{base3}
######################################################################
# GIT
######################################################################
option --git-color-blame \
--re '^[0-9a-f^][0-9a-f]{7,39}\b.+' \
--uniqcolor --uniqsub 'sub{s/\s.*//r}' \
--all --face +E-D