package Spork::Formatter::Autringy;
use Spork::Formatter -Base;
sub formatter_classes {
map {
s/^Ulist$/Spork::Formatter::Autringy::Ulist/;
s/^Item$/Spork::Formatter::Autringy::Item/;
$_;
} super;
}
################################################################################
package Spork::Formatter::Autringy::Ulist;
use base 'Kwiki::Formatter::Ulist';
const bullet => '[\*\-]+\ +';
################################################################################
package Spork::Formatter::Autringy::Item;
use base 'Kwiki::Formatter::Item';
const formatter_id => 'li';
const bullet => '[\*\-]+\ +';
field which => '';
sub html_start {
return super unless $self->hub->config->flipflop;
$self->which =~ /-/
? '<div style="background-color:lightblue"><li>'
: '<div style="background-color:lightpink"><li>';
}
sub html_end {
$self->hub->config->flipflop
? "</li></div>\n"
: super;
}
sub match {
my $bullet = $self->bullet;
$self->which($1)
if $self->text =~ /^($bullet)(.*)\n/m;
return unless
$self->text =~ /^$bullet(.*)\n/m;
$self->set_match;
return 1;
}