Вы не можете сделать это в CSS, но вы можете использовать источник.
Вы можете создать подкласс Text::MultiMarkdown
и предоставить собственную реализацию _GenerateAnchor
, что-то похожее на это может работать:
sub _GenerateAnchor {
my ($self, $whole_match, $link_text, $link_id, $url, $title, $attributes) = @_;
if($url
&& index($url, '#') != 0) {
$attributes = $attributes ? $attributes . ' target="_blank"' : 'target="_blank"';
}
return $self->SUPER::_GenerateAnchor($whole_match, $link_text, $link_id, $url, $title, $attributes);
}
Это немного глупо, поскольку _GenerateAnchor
не является частью общедоступного интерфейса.Вам также нужно будет использовать интерфейс OO, а не только функцию markdown
.
Вы также можете связаться с автором Text::MultiMarkdown
и посмотреть, добавит ли он флаг для такого рода вещей.Возможно, вы могли бы предоставить патч для начала работы.
Вы также можете использовать HTML::Parser
и друзей, чтобы проанализировать HTML-код, полученный из Text::MultiMarkdown
, и самостоятельно добавить атрибуты target
.