($background =~ /^[a-z]+$/ || $background =~ /^#[0-9a-f]{3,6}$/));
my $preserved = '';
- $preserved .= '<span class="color">';
+ $preserved .= '<span class="color"><span value="';
$preserved .= 'color: '.$foreground if ($foreground);
$preserved .= '; ' if ($foreground && $background);
$preserved .= 'background-color: '.$background if ($background);
- $preserved .= '</span>';
- $preserved .= '<span class="colorend">'.$text.'</span>';
+ $preserved .= '"></span>'.$text.'</span>';
return $preserved;
sub replace_preserved_style ($) {
my $content = shift;
- $content =~ s!<span class="color">((color: ([a-z]+|\#[0-9a-f]{3,6})?)?((; )?(background-color: ([a-z]+|\#[0-9a-f]{3,6})?)?)?)</span>!<span class="color" style="$1">!g;
- $content =~ s!<span class="colorend">!!g;
+ $content =~ s!<span class="color">\s*<span value="((color: ([a-z]+|\#[0-9a-f]{3,6})?)?((; )?(background-color: ([a-z]+|\#[0-9a-f]{3,6})?)?)?)">\s*</span>!<span class="color" style="$1">!g;
return $content;
}
sub preprocess (@) {
my %params = @_;
- # Preprocess the text to expand any preprocessor directives
- # embedded inside it.
- $params{text} = IkiWiki::preprocess($params{page}, $params{destpage},
- IkiWiki::filter($params{page}, $params{destpage}, $params{text}));
-
- return preserve_style($params{foreground}, $params{background}, $params{text});
+ return preserve_style($params{foreground}, $params{background},
+ # Preprocess the text to expand any preprocessor directives
+ # embedded inside it.
+ IkiWiki::preprocess($params{page}, $params{destpage},
+ $params{text}));
}
sub format (@) {