1
0
mirror of https://github.com/erusev/parsedown.git synced 2025-09-15 17:22:18 +02:00

Compare commits

..

5 Commits
1.1.0 ... 1.1.1

Author SHA1 Message Date
Emanuil Rusev
da5d75e97e resolve #209 2014-10-29 22:29:46 +02:00
Emanuil Rusev
2adb87ef41 Merge pull request #236 from naNuke/escapeComment
Ignore html comments as well with markupEscape option.
2014-10-10 21:11:23 +03:00
naNuke
74926c9831 Add test of escaped html comment. 2014-10-10 20:07:41 +02:00
naNuke
68f3aea036 Ignore html comments as well with markupEscape option. 2014-10-10 19:07:25 +02:00
Emanuil Rusev
f91e4dece3 improve consistency 2014-09-26 13:06:40 +03:00
4 changed files with 16 additions and 1 deletions

View File

@@ -359,6 +359,11 @@ class Parsedown
protected function identifyComment($Line)
{
if ($this->markupEscaped)
{
return;
}
if (isset($Line['text'][3]) and $Line['text'][3] === '-' and $Line['text'][2] === '-' and $Line['text'][1] === '!')
{
$Block = array(
@@ -644,7 +649,7 @@ class Parsedown
'element' => $Line['body'],
);
if ($matches[2] or $matches[1] === 'hr' or preg_match('/<\/'.$matches[1].'>[ ]*$/', $Line['text']))
if ($matches[2] or in_array($matches[1], $this->voidElements) or preg_match('/<\/'.$matches[1].'>[ ]*$/', $Line['text']))
{
$Block['closed'] = true;
}
@@ -1407,6 +1412,10 @@ class Parsedown
'_' => '/^_((?:[^_]|__[^_]*__)+?)_(?!_)\b/us',
);
protected $voidElements = array(
'area', 'base', 'br', 'col', 'command', 'embed', 'hr', 'img', 'input', 'link', 'meta', 'param', 'source',
);
protected $textLevelElements = array(
'a', 'br', 'bdo', 'abbr', 'blink', 'nextid', 'acronym', 'basefont',
'b', 'em', 'big', 'cite', 'small', 'spacer', 'listing',

View File

@@ -109,6 +109,10 @@ paragraph
color: red;
}
</style>
comment
<!-- html comment -->
MARKDOWN_WITH_MARKUP;
$expectedHtml = <<<EXPECTED_HTML
@@ -125,6 +129,8 @@ MARKDOWN_WITH_MARKUP;
color: red;
}</code></pre>
<p>&lt;/style></p>
<p>comment</p>
<p>&lt;!-- html comment --></p>
EXPECTED_HTML;
$parsedownWithNoMarkup = new Parsedown();
$parsedownWithNoMarkup->setMarkupEscaped(true);