NAME
App::Colorist::Ruleset - Helper syntax for building colorist rulesets
VERSION
version 0.141760
SYNOPSIS
ruleset {
rule qr{Starting (\S+)\.\.\.}, qw( message program );
rule qr{Finished processing (http://([\w.]+)/) \.\.\.}, qw(
message url hostname
);
}
DESCRIPTION
This defines a special syntax that may be used in ruleset configuration files for defining a ruleset.
DIRECTIVES
ruleset
ruleset {
# rules go in here ...
}
There may only be exactly one ruleset
per ruleset configuration and all "rule" directives must be placed inside it.
rule
rule qr{Starting (\S+)\.\.\.}, qw( message program );
Within a "ruleset", there may be zero or more rule
directives. Each is given a regular expression to be used to match against a single line of text. Every match starts with an implicit "^" and ends with an implicit "$", so it must match an entire line.
After the regular expression, you must include a list of color names to assign each part of the match. This list must have at least one element in it, which is used for the entire line match. There must also be one for each group of parenthesis in the regular expression.
It is perfectly acceptable to use nested matches. As of this writing, there must be a fixed number of group matches, though. If you need to match groups like (...)*
, there's no way to name them at this time, so don't do that.
AUTHOR
Andrew Sterling Hanenkamp <hanenkamp@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Qubling Software LLC.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.