local @vl;
while($rule->{'args'} =~
s/\s+(!?)\s*($a)\s+(!?)\s*("[^"]*")(\s+|$)/ / ||
+ $rule->{'args'} =~
+ s/\s+(!?)\s*($a)\s+(!?)\s*('[^']*')(\s+|$)/ / ||
$rule->{'args'} =~
s/\s+(!?)\s*($a)\s+(!?)\s*(([^ \-!]\S*(\s+|$))+)/ / ||
$rule->{'args'} =~
foreach $ag (@al) {
local $n = shift(@$ag);
local @w = ( $n ? ( $n ) : (), $a, @$ag );
- @w = map { $_ =~ /\s/ ? "\"$_\"" : $_ } @w;
+ @w = map { $_ =~ /'/ ? "\"$_\"" :
+ $_ =~ /"/ ? "'".$_."'" :
+ $_ =~ /\s/ ? "\"$_\"" : $_ } @w;
$line .= " ".join(" ", @w);
}
}