Merge remote branch 'kc/new/enh/bug_5917' into kcmaster
This commit is contained in:
commit
ad37f3e5e7
|
|
@ -39,7 +39,7 @@ sub build_tokens{
|
|||
$self->{filename} = $filename;
|
||||
$self->handler(start => "start", "self, line, tagname, attr, text"); #signature is start( self, linenumber, tagname, hash of attributes, origional text )
|
||||
$self->handler(text => "text", "self, line, text, is_cdata"); #signature is text( self, linenumber, origional text, is_cdata )
|
||||
$self->handler(end => "end", "self, line, tag, attr, text"); #signature is end( self, linenumber, tagename, origional text )
|
||||
# $self->handler(end => "end", "self, line, tag, attr, text"); #signature is end( self, linenumber, tagename, origional text )
|
||||
$self->handler(declaration => "declaration", "self, line, text, is_cdata"); # declaration
|
||||
# $self->handler(comment => "comment", "self, line, text, is_cdata"); # comments
|
||||
# $self->handler(default => "default", "self, line, text, is_cdata"); # anything else
|
||||
|
|
@ -55,7 +55,6 @@ sub text{
|
|||
my $line = shift;
|
||||
my $work = shift; # original text
|
||||
my $is_cdata = shift;
|
||||
|
||||
while($work){
|
||||
# if there is a template_toolkit tag
|
||||
if( $work =~ m/\[%.*?\]/ ){
|
||||
|
|
@ -74,6 +73,7 @@ sub text{
|
|||
} else {
|
||||
# If there is some left over work, treat it as text token
|
||||
my $t = TmplToken->new( $work, ($is_cdata? TmplTokenType::CDATA : TmplTokenType::TEXT), $line, $self->{filename} );
|
||||
|
||||
push @tokens, $t;
|
||||
last;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -324,7 +324,8 @@ sub next_token {
|
|||
if( $next->type == TmplTokenType::TEXT ){
|
||||
push @parts, $next;
|
||||
}
|
||||
elsif( $next->type == TmplTokenType::DIRECTIVE && $next->string =~ m/\[%\s*\w+\s*%\]/ ){
|
||||
# elsif( $next->type == TmplTokenType::DIRECTIVE && $next->string =~ m/\[%\s*\w+\s*%\]/ ){
|
||||
elsif( $next->type == TmplTokenType::DIRECTIVE ){
|
||||
push @parts, $next;
|
||||
}
|
||||
elsif ( $next->type == TmplTokenType::CDATA){
|
||||
|
|
|
|||
|
|
@ -174,7 +174,8 @@ EOF
|
|||
my $fmt = TmplTokenizer::_formalize( $param );
|
||||
$fmt =~ s/^%/%$n\$/;
|
||||
if ($type == TmplTokenType::DIRECTIVE) {
|
||||
$type = $param->string =~ /(TMPL_[A-Z]+)+/is? $1: 'ERROR';
|
||||
$type = "Template::Toolkit Directive";
|
||||
# $type = $param->string =~ /[%()+/is? $1: 'ERROR';
|
||||
my $name = $param->string =~ /\bname=(["']?)([^\s"']+)\1/is?
|
||||
$2: undef;
|
||||
printf OUTPUT "#. %s: %s\n", $fmt,
|
||||
|
|
|
|||
Loading…
Reference in New Issue