last unless ${$i};
push @snippets, ${$i};
}
- return [ $name, \@snippets ];
+ return [ $self->actions->{regex}->{$name},
+ $name, \@snippets ];
}
}
}
$command = _prefix( $caller, $command );
$command = "\!$command";
}
+ elsif ( $command =~ /^\!(.*)$/ ) {
+ my $try = $1;
+ my $caller = caller(0);
+ my $prefix = _class2prefix($caller);
+ $try = "!$prefix/$command";
+ $command = $try if $c->actions->{plain}->{$try};
+ }
my ( $class, $code );
if ( my $action = $c->action($command) ) {
+ if ( $action->[2] ) {
+ $c->log->debug(qq/Couldn't forward "$command" to regex action/)
+ if $c->debug;
+ return 0;
+ }
( $class, $code ) = @{ $action->[0] };
}
else {
# It's a regex
if ($#$result) {
- my $match = $result->[0];
- my @snippets = @{ $result->[1] };
+ my $match = $result->[1];
+ my @snippets = @{ $result->[2] };
$c->log->debug(qq/Requested action "$path" matched "$match"/)
if $c->debug;
$c->log->debug(