# Note: preserve order of params, some plugins may
# consider it significant.
my @params;
- while ($params =~ /(?:(\w+)=)?(?:"([^"]+)"|(\S+))(?:\s+|$)/g) {
+ while ($params =~ /(?:(\w+)=)?(?:"""\n?(.+)"""|"([^"]+)"|(\S+))(?:\s+|$)/sg) {
+ my $val=(defined $2 ? $2 : (defined $3 ? $3 : $4));
+ chomp $val;
if (defined $1) {
- push @params, $1, (defined $2 ? $2 : $3);
+ push @params, $1, $val;
}
else {
- push @params, (defined $2 ? $2 : $3), '';
+ push @params, $val, '';
}
}
return $hooks{preprocess}{$command}{call}->(
}
};
- $content =~ s{(\\?)$config{wiki_processor_regexp}}{$handle->($1, $2, $3)}eg;
+ $content =~ s{(\\?)\[\[(\w+)\s+((?:(?:\w+=)?(?:""".+"""|"[^"]+"|[^\s\]]+)\s*)*)\]\]}{$handle->($1, $2, $3)}eg;
return $content;
} #}}}