mirror of
https://github.com/erusev/parsedown.git
synced 2023-08-10 21:13:06 +03:00
Compare commits
133 Commits
Author | SHA1 | Date | |
---|---|---|---|
f0fbdaa6ca | |||
e20c0a29bd | |||
712dd23d30 | |||
68f2871996 | |||
17e7e33847 | |||
7cb9646d98 | |||
325bdd9ff6 | |||
2a0700abda | |||
4e83d79d76 | |||
354842fd6e | |||
2b73e94c6c | |||
0182812d6c | |||
f5dd3455f9 | |||
1017f22cdd | |||
88854955d6 | |||
654dd74074 | |||
fee5b71998 | |||
149b687ee7 | |||
98b17e3354 | |||
da966b83f1 | |||
b9ab495cb4 | |||
408cb5c21f | |||
5dd0e8cb7b | |||
5521afde31 | |||
4317add3a2 | |||
47d8a1382b | |||
fd42f2e864 | |||
c0b7155572 | |||
be366b63ea | |||
68484504ca | |||
4fecd91f7d | |||
9dae844a6e | |||
df6fe915c6 | |||
576b0ea761 | |||
0f027dc04b | |||
179862bd6e | |||
019a4af2af | |||
51a08fad85 | |||
7fb08f334a | |||
85ad014f74 | |||
22336a1bcc | |||
f713e380ee | |||
5b01915a63 | |||
18d112a614 | |||
1b9641ad03 | |||
8baf537c12 | |||
05823567bc | |||
b7029ab176 | |||
102a947c7a | |||
7bb70186c1 | |||
3225c66863 | |||
d6dc5ba25b | |||
f5451a9eff | |||
849a89b121 | |||
28064a63b3 | |||
800aac5b56 | |||
b15d40e8a3 | |||
ddc5b7e2dd | |||
5a563008aa | |||
b6f795962f | |||
cdb2646063 | |||
e3b8026e39 | |||
d96f668c42 | |||
96bf75bd91 | |||
67b51794d8 | |||
a9d6232705 | |||
b91629ad94 | |||
24d300ea5d | |||
d54712b989 | |||
6ef043ba7d | |||
fe27b70bdb | |||
18d3dbf4f6 | |||
4758f58f73 | |||
5fa3eb1b2f | |||
38300323a6 | |||
96609329b9 | |||
e497acb6dc | |||
30e436ec7d | |||
3972f18881 | |||
4fb12be60a | |||
f8b07611d3 | |||
21d7f75f5b | |||
a4fb0651d5 | |||
50a58eab16 | |||
1f347e17eb | |||
df3db71698 | |||
a37f5ff31e | |||
8e6f4cf7b8 | |||
ee9a1e92c0 | |||
689ef24cc5 | |||
4403fe4d96 | |||
400c8f7d46 | |||
379cbf34b3 | |||
b6c8cac512 | |||
0e9202689e | |||
7249d02cff | |||
ecf86b073e | |||
b12973415f | |||
6d113f47fb | |||
d4d3612710 | |||
2e314ad474 | |||
e475602e2f | |||
f43f54b877 | |||
d733acc94e | |||
6a0695deb9 | |||
5dd40e7adf | |||
b9808f23e0 | |||
47b1789430 | |||
f8119fa3cb | |||
d306ee3db5 | |||
e15241cb92 | |||
7ab71ade06 | |||
64f82e1e2a | |||
f40dbdfb65 | |||
033c2b78c1 | |||
34035316df | |||
f13214cfa7 | |||
238b1029c0 | |||
bc27850c41 | |||
3afeee3b19 | |||
a94a45f955 | |||
4af89c5087 | |||
0352f01c7e | |||
40c2dcfac7 | |||
097ec5e8a5 | |||
8ac52a2f30 | |||
4a6bb88239 | |||
609ad47c38 | |||
7d7e89f5c3 | |||
5aad1d42d2 | |||
3ff5c623f2 | |||
637b516694 | |||
31b811d3fe |
@ -1 +0,0 @@
|
|||||||
src_dir: .
|
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,2 +1,3 @@
|
|||||||
.DS_Store
|
.DS_Store
|
||||||
|
.idea
|
||||||
nbproject
|
nbproject
|
13
.travis.yml
13
.travis.yml
@ -1,15 +1,8 @@
|
|||||||
language: php
|
language: php
|
||||||
|
|
||||||
php:
|
php:
|
||||||
|
- 5.5
|
||||||
- 5.4
|
- 5.4
|
||||||
- 5.3
|
- 5.3
|
||||||
|
- 5.2
|
||||||
before_script:
|
- hhvm
|
||||||
- composer require satooshi/php-coveralls:dev-master
|
|
||||||
- mkdir -p build/logs
|
|
||||||
|
|
||||||
script:
|
|
||||||
- phpunit --coverage-clover build/logs/clover.xml
|
|
||||||
|
|
||||||
after_script:
|
|
||||||
- php vendor/bin/coveralls
|
|
35
LICENSE.txt
35
LICENSE.txt
@ -1,21 +1,20 @@
|
|||||||
Copyright 2013 Emanuil Rusev
|
The MIT License (MIT)
|
||||||
http://erusev.com
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Copyright (c) 2013 Emanuil Rusev, erusev.com
|
||||||
a copy of this software and associated documentation files (the
|
|
||||||
"Software"), to deal in the Software without restriction, including
|
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
|
||||||
the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||||
included in all copies or substantial portions of the Software.
|
this software and associated documentation files (the "Software"), to deal in
|
||||||
|
the Software without restriction, including without limitation the rights to
|
||||||
|
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||||
|
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||||
|
subject to the following conditions:
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
The above copyright notice and this permission notice shall be included in all
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
copies or substantial portions of the Software.
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||||
|
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
1538
Parsedown.php
1538
Parsedown.php
File diff suppressed because it is too large
Load Diff
25
README.md
25
README.md
@ -1,9 +1,20 @@
|
|||||||
## Parsedown PHP
|
## Parsedown
|
||||||
|
|
||||||
Parsedown is a parser for Markdown. It parses Markdown text the way people do. First, it divides texts into blocks. Then it looks at how these blocks start and how they relate to each other. Finally, it looks for special characters to identify inline elements. As a result, Parsedown is (super) fast, consistent and clean.
|
Better [Markdown](http://en.wikipedia.org/wiki/Markdown) parser for PHP.
|
||||||
|
|
||||||
[Explorer (demo)](http://parsedown.org/explorer/)
|
***
|
||||||
[Tests](http://parsedown.org/tests/)
|
|
||||||
|
[ [demo](http://parsedown.org/demo) ] [ [tests](http://parsedown.org/tests/) ]
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* [fast](http://parsedown.org/speed)
|
||||||
|
* [consistent](http://parsedown.org/consistency)
|
||||||
|
* [GitHub Flavored](https://help.github.com/articles/github-flavored-markdown)
|
||||||
|
* [tested](https://travis-ci.org/erusev/parsedown) in PHP 5.2, 5.3, 5.4, 5.5 and [hhvm](http://www.hhvm.com/)
|
||||||
|
* friendly to international input
|
||||||
|
|
||||||
### Installation
|
### Installation
|
||||||
|
|
||||||
@ -12,9 +23,9 @@ Include `Parsedown.php` or install [the composer package](https://packagist.org/
|
|||||||
### Example
|
### Example
|
||||||
|
|
||||||
```php
|
```php
|
||||||
$text = 'Hello **Parsedown**!';
|
$text = 'Hello *Parsedown*!';
|
||||||
|
|
||||||
$result = Parsedown::instance()->parse($text);
|
$result = Parsedown::instance()->parse($text);
|
||||||
|
|
||||||
echo $result; # prints: <p>Hello <strong>Parsedown</strong>!</p>
|
echo $result; # prints: <p>Hello <em>Parsedown</em>!</p>
|
||||||
```
|
```
|
||||||
|
@ -5,7 +5,7 @@ include 'Parsedown.php';
|
|||||||
class Test extends PHPUnit_Framework_TestCase
|
class Test extends PHPUnit_Framework_TestCase
|
||||||
{
|
{
|
||||||
const provider_dir = 'data/';
|
const provider_dir = 'data/';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @dataProvider provider
|
* @dataProvider provider
|
||||||
*/
|
*/
|
||||||
@ -15,31 +15,41 @@ class Test extends PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$this->assertEquals($expected_markup, $actual_markup);
|
$this->assertEquals($expected_markup, $actual_markup);
|
||||||
}
|
}
|
||||||
|
|
||||||
function provider()
|
function provider()
|
||||||
{
|
{
|
||||||
$provider = array();
|
$provider = array();
|
||||||
|
|
||||||
$DirectoryIterator = new DirectoryIterator(__DIR__ . '/' . self::provider_dir);
|
$path = dirname(__FILE__).'/';
|
||||||
|
|
||||||
|
$DirectoryIterator = new DirectoryIterator($path . '/' . self::provider_dir);
|
||||||
|
|
||||||
foreach ($DirectoryIterator as $Item)
|
foreach ($DirectoryIterator as $Item)
|
||||||
{
|
{
|
||||||
if ($Item->isFile() and $Item->getExtension() === 'md')
|
if ($Item->isFile())
|
||||||
{
|
{
|
||||||
|
$filename = $Item->getFilename();
|
||||||
|
|
||||||
|
$extension = pathinfo($filename, PATHINFO_EXTENSION);
|
||||||
|
|
||||||
|
if ($extension !== 'md')
|
||||||
|
continue;
|
||||||
|
|
||||||
$basename = $Item->getBasename('.md');
|
$basename = $Item->getBasename('.md');
|
||||||
|
|
||||||
$markdown = file_get_contents(__DIR__ . '/' . self::provider_dir . $basename . '.md');
|
$markdown = file_get_contents($path . '/' . self::provider_dir . $basename . '.md');
|
||||||
|
|
||||||
if (!$markdown)
|
if (!$markdown)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
$expected_markup = file_get_contents(__DIR__ . '/' . self::provider_dir . $basename . '.html');
|
$expected_markup = file_get_contents($path . '/' . self::provider_dir . $basename . '.html');
|
||||||
|
$expected_markup = str_replace("\r\n", "\n", $expected_markup);
|
||||||
|
$expected_markup = str_replace("\r", "\n", $expected_markup);
|
||||||
|
|
||||||
$provider [] = array($markdown, $expected_markup);
|
$provider [] = array($markdown, $expected_markup);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $provider;
|
return $provider;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,14 +1,8 @@
|
|||||||
<h1>This is an h1</h1>
|
<h1>h1</h1>
|
||||||
<h2>This is an h2</h2>
|
<h2>h2</h2>
|
||||||
<h3>This is an h3</h3>
|
<h3>h3</h3>
|
||||||
<h4>This is an h4</h4>
|
<h4>h4</h4>
|
||||||
<h5>This is an h5</h5>
|
<h5>h5</h5>
|
||||||
<h6>This is an h6</h6>
|
<h6>h6</h6>
|
||||||
<h1>This is a closed h1</h1>
|
<h1>closed h1</h1>
|
||||||
<h2>This is a closed h2</h2>
|
<p>#</p>
|
||||||
<h3>This is a closed h3</h3>
|
|
||||||
<h4>This is a closed h4</h4>
|
|
||||||
<h5>This is a closed h5</h5>
|
|
||||||
<h6>This is a closed h6</h6>
|
|
||||||
<h1>This is an irregularly closed h1</h1>
|
|
||||||
<h4>This is an irregularly closed h4</h4>
|
|
@ -1,27 +1,15 @@
|
|||||||
# This is an h1
|
# h1
|
||||||
|
|
||||||
## This is an h2
|
## h2
|
||||||
|
|
||||||
### This is an h3
|
### h3
|
||||||
|
|
||||||
#### This is an h4
|
#### h4
|
||||||
|
|
||||||
##### This is an h5
|
##### h5
|
||||||
|
|
||||||
###### This is an h6
|
###### h6
|
||||||
|
|
||||||
# This is a closed h1 #
|
# closed h1 #
|
||||||
|
|
||||||
## This is a closed h2 ##
|
#
|
||||||
|
|
||||||
### This is a closed h3 ###
|
|
||||||
|
|
||||||
#### This is a closed h4 ####
|
|
||||||
|
|
||||||
##### This is a closed h5 #####
|
|
||||||
|
|
||||||
###### This is a closed h6 ######
|
|
||||||
|
|
||||||
# This is an irregularly closed h1 ###
|
|
||||||
|
|
||||||
#### This is an irregularly closed h4 ##
|
|
5
tests/data/block-level_html.html
Normal file
5
tests/data/block-level_html.html
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<div>_content_</div>
|
||||||
|
<p>sparse:</p>
|
||||||
|
<div>
|
||||||
|
_content_
|
||||||
|
</div>
|
7
tests/data/block-level_html.md
Normal file
7
tests/data/block-level_html.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<div>_content_</div>
|
||||||
|
|
||||||
|
sparse:
|
||||||
|
|
||||||
|
<div>
|
||||||
|
_content_
|
||||||
|
</div>
|
@ -1,25 +0,0 @@
|
|||||||
<p>Here's a regular blockquote:</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>This is a blockquote.</p>
|
|
||||||
</blockquote>
|
|
||||||
<p>Here's one with no space after the ">":</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>This is a blockquote.</p>
|
|
||||||
</blockquote>
|
|
||||||
<p>Here's one with multiple paragraphs:</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>This is line one.</p>
|
|
||||||
<p>This is line two.</p>
|
|
||||||
</blockquote>
|
|
||||||
<p>Here's one with multiple types of blocks:</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>This is a quoted paragraph.</p>
|
|
||||||
<ul>
|
|
||||||
<li>This is a list item of a quoted list.</li>
|
|
||||||
<li>This is another list item.</li>
|
|
||||||
</ul>
|
|
||||||
<blockquote>
|
|
||||||
<p>This is a nested quote block.</p>
|
|
||||||
</blockquote>
|
|
||||||
<p>This is another paragraph.</p>
|
|
||||||
</blockquote>
|
|
@ -1,24 +0,0 @@
|
|||||||
Here's a regular blockquote:
|
|
||||||
|
|
||||||
> This is a blockquote.
|
|
||||||
|
|
||||||
Here's one with no space after the ">":
|
|
||||||
|
|
||||||
>This is a blockquote.
|
|
||||||
|
|
||||||
Here's one with multiple paragraphs:
|
|
||||||
|
|
||||||
> This is line one.
|
|
||||||
>
|
|
||||||
> This is line two.
|
|
||||||
|
|
||||||
Here's one with multiple types of blocks:
|
|
||||||
|
|
||||||
> This is a quoted paragraph.
|
|
||||||
>
|
|
||||||
> - This is a list item of a quoted list.
|
|
||||||
> - This is another list item.
|
|
||||||
>
|
|
||||||
> > This is a nested quote block.
|
|
||||||
>
|
|
||||||
> This is another paragraph.
|
|
@ -1,9 +1,8 @@
|
|||||||
<p>Here's a regular code block:</p>
|
<pre><code><?php
|
||||||
<pre><code><?php
|
|
||||||
|
$message = 'Hello World!';
|
||||||
echo 'Hello World!';
|
echo $message;</code></pre>
|
||||||
|
<hr />
|
||||||
?></code></pre>
|
<pre><code>> not a quote
|
||||||
<p>Here's one that holds a list:</p>
|
- not a list item
|
||||||
<pre><code>- list item
|
[not a reference]: http://foo.com</code></pre>
|
||||||
- another list item</code></pre>
|
|
@ -1,13 +1,11 @@
|
|||||||
Here's a regular code block:
|
<?php
|
||||||
|
|
||||||
<?php
|
$message = 'Hello World!';
|
||||||
|
echo $message;
|
||||||
echo 'Hello World!';
|
|
||||||
|
---
|
||||||
?>
|
|
||||||
|
> not a quote
|
||||||
Here's one that holds a list:
|
- not a list item
|
||||||
|
[not a reference]: http://foo.com
|
||||||
- list item
|
|
||||||
- another list item
|
|
||||||
|
|
@ -1 +1 @@
|
|||||||
<p>This is a <code>code span</code>.</p>
|
<p>a <code>code span</code></p>
|
@ -1 +1 @@
|
|||||||
This is a `code span`.
|
a `code span`
|
9
tests/data/compound_blockquote.html
Normal file
9
tests/data/compound_blockquote.html
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<blockquote>
|
||||||
|
<h2>header</h2>
|
||||||
|
<p>paragraph</p>
|
||||||
|
<ul>
|
||||||
|
<li>li</li>
|
||||||
|
</ul>
|
||||||
|
<hr />
|
||||||
|
<p>paragraph</p>
|
||||||
|
</blockquote>
|
10
tests/data/compound_blockquote.md
Normal file
10
tests/data/compound_blockquote.md
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
> header
|
||||||
|
> ------
|
||||||
|
>
|
||||||
|
> paragraph
|
||||||
|
>
|
||||||
|
> - li
|
||||||
|
>
|
||||||
|
> ---
|
||||||
|
>
|
||||||
|
> paragraph
|
2
tests/data/compound_emphasis.html
Normal file
2
tests/data/compound_emphasis.html
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
<p><em><code>code</code></em> <strong><code>code</code></strong></p>
|
||||||
|
<p><em><code>code</code><strong><code>code</code></strong><code>code</code></em></p>
|
4
tests/data/compound_emphasis.md
Normal file
4
tests/data/compound_emphasis.md
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
_`code`_ __`code`__
|
||||||
|
|
||||||
|
*`code`**`code`**`code`*
|
||||||
|
|
@ -1,13 +1,12 @@
|
|||||||
<p>Here's a compound list:</p>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<p>This is the first paragraph of the list item.</p>
|
<p>paragraph</p>
|
||||||
<p>This is the second one.</p>
|
<p>paragraph</p>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<p>This is another list item.</p>
|
<p>paragraph</p>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>This is a quote block that belongs to it.</p>
|
<p>quote</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
@ -1,10 +1,7 @@
|
|||||||
Here's a compound list:
|
- paragraph
|
||||||
|
|
||||||
- This is the first paragraph of the list item.
|
paragraph
|
||||||
|
|
||||||
This is the second one.
|
- paragraph
|
||||||
|
|
||||||
- This is another list item.
|
|
||||||
|
|
||||||
> This is a quote block that belongs to it.
|
|
||||||
|
|
||||||
|
> quote
|
8
tests/data/em_strong.html
Normal file
8
tests/data/em_strong.html
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<p><strong><em>em strong</em></strong></p>
|
||||||
|
<p><strong><em>em strong</em> strong</strong></p>
|
||||||
|
<p><strong>strong <em>em strong</em></strong></p>
|
||||||
|
<p><strong>strong <em>em strong</em> strong</strong></p>
|
||||||
|
<p><strong><em>em strong</em></strong></p>
|
||||||
|
<p><strong><em>em strong</em> strong</strong></p>
|
||||||
|
<p><strong>strong <em>em strong</em></strong></p>
|
||||||
|
<p><strong>strong <em>em strong</em> strong</strong></p>
|
15
tests/data/em_strong.md
Normal file
15
tests/data/em_strong.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
___em strong___
|
||||||
|
|
||||||
|
___em strong_ strong__
|
||||||
|
|
||||||
|
__strong _em strong___
|
||||||
|
|
||||||
|
__strong _em strong_ strong__
|
||||||
|
|
||||||
|
***em strong***
|
||||||
|
|
||||||
|
***em strong* strong**
|
||||||
|
|
||||||
|
**strong *em strong***
|
||||||
|
|
||||||
|
**strong *em strong* strong**
|
@ -0,0 +1 @@
|
|||||||
|
<p>my email is <a href="mailto:me@example.com">me@example.com</a></p>
|
@ -0,0 +1 @@
|
|||||||
|
my email is <me@example.com>
|
@ -1,8 +1,8 @@
|
|||||||
<p>Here's <em>an emphasis</em>.</p>
|
<p><em>underscore</em>, <em>asterisk</em>, <em>one two</em>, <em>three four</em>, <em>a</em>, <em>b</em></p>
|
||||||
<p>A short emphasis <em>a</em> <em>b</em> .</p>
|
<p><strong>strong</strong> and <em>em</em> and <strong>strong</strong> and <em>em</em></p>
|
||||||
<p>Here's <strong>a strong one</strong>. </p>
|
<p><em>line
|
||||||
<p>Here's <em>an emphasis that uses underscores</em>. </p>
|
line
|
||||||
<p>Here's <strong>a strong emphasis that uses underscores</strong>.</p>
|
line</em></p>
|
||||||
<p>This is _ not an emphasis _ neither is * that * .</p>
|
<p>this_is_not_an_emphasis</p>
|
||||||
<p>Empty emphasis ** is not __ an emphasis.</p>
|
<p>an empty emphasis __ ** is not an emphasis</p>
|
||||||
<p>Three asterisks are an emphasized asterisk <em>*</em> .</p>
|
<p>*mixed *<em>double and</em> single asterisk** spans</p>
|
@ -1,15 +1,13 @@
|
|||||||
Here's *an emphasis*.
|
_underscore_, *asterisk*, _one two_, *three four*, _a_, *b*
|
||||||
|
|
||||||
A short emphasis _a_ *b* .
|
**strong** and *em* and **strong** and *em*
|
||||||
|
|
||||||
Here's **a strong one**.
|
_line
|
||||||
|
line
|
||||||
Here's _an emphasis that uses underscores_.
|
line_
|
||||||
|
|
||||||
Here's __a strong emphasis that uses underscores__.
|
this_is_not_an_emphasis
|
||||||
|
|
||||||
This is _ not an emphasis _ neither is * that * .
|
an empty emphasis __ ** is not an emphasis
|
||||||
|
|
||||||
Empty emphasis ** is not __ an emphasis.
|
*mixed **double and* single asterisk** spans
|
||||||
|
|
||||||
Three asterisks are an emphasized asterisk *** .
|
|
@ -1,6 +1,4 @@
|
|||||||
<p>Here's an <em>emphasis</em> and here's an escaped *emphasis*. Here are also an escaped `code span`, escaped [inline link](http://example.com).</p>
|
<p>escaped *emphasis*.</p>
|
||||||
<p>Here's <code>an escaped \*emphasis\* inside of a code span</code>.</p>
|
<p><code>escaped \*emphasis\* in a code span</code></p>
|
||||||
<p>Here's one inside of a code block:</p>
|
<pre><code>escaped \*emphasis\* in a code block</code></pre>
|
||||||
<pre><code>An escaped \*emphasis\*.</code></pre>
|
<p>\ ` * _ { } [ ] ( ) > # + - . !</p>
|
||||||
<p>Finally, an escaped reference:</p>
|
|
||||||
<p>[1]: http://example.com</p>
|
|
@ -1,11 +1,7 @@
|
|||||||
Here's an *emphasis* and here's an escaped \*emphasis\*. Here are also an escaped \`code span\`, escaped \[inline link](http://example.com).
|
escaped \*emphasis\*.
|
||||||
|
|
||||||
Here's `an escaped \*emphasis\* inside of a code span`.
|
`escaped \*emphasis\* in a code span`
|
||||||
|
|
||||||
Here's one inside of a code block:
|
escaped \*emphasis\* in a code block
|
||||||
|
|
||||||
An escaped \*emphasis\*.
|
\\ \` \* \_ \{ \} \[ \] \( \) \> \# \+ \- \. \!
|
||||||
|
|
||||||
Finally, an escaped reference:
|
|
||||||
|
|
||||||
\[1]: http://example.com
|
|
6
tests/data/fenced_code_block.html
Normal file
6
tests/data/fenced_code_block.html
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<pre><code><?php
|
||||||
|
|
||||||
|
$message = 'fenced code block';
|
||||||
|
echo $message;</code></pre>
|
||||||
|
<pre><code>tilde</code></pre>
|
||||||
|
<pre><code class="language-php">echo 'language identifier';</code></pre>
|
14
tests/data/fenced_code_block.md
Normal file
14
tests/data/fenced_code_block.md
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
```
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$message = 'fenced code block';
|
||||||
|
echo $message;
|
||||||
|
```
|
||||||
|
|
||||||
|
~~~
|
||||||
|
tilde
|
||||||
|
~~~
|
||||||
|
|
||||||
|
```php
|
||||||
|
echo 'language identifier';
|
||||||
|
```
|
5
tests/data/horizontal_rule.html
Normal file
5
tests/data/horizontal_rule.html
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<hr />
|
||||||
|
<hr />
|
||||||
|
<hr />
|
||||||
|
<hr />
|
||||||
|
<hr />
|
9
tests/data/horizontal_rule.md
Normal file
9
tests/data/horizontal_rule.md
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
- - -
|
||||||
|
|
||||||
|
- - -
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
___
|
1
tests/data/html_entity.html
Normal file
1
tests/data/html_entity.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
<p>& © {</p>
|
1
tests/data/html_entity.md
Normal file
1
tests/data/html_entity.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
& © {
|
1
tests/data/image_reference.html
Normal file
1
tests/data/image_reference.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
<p><img alt="Markdown Logo" src="/md.png" /></p>
|
3
tests/data/image_reference.md
Normal file
3
tests/data/image_reference.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
![Markdown Logo][image]
|
||||||
|
|
||||||
|
[image]: /md.png
|
1
tests/data/image_title.html
Normal file
1
tests/data/image_title.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
<p><img alt="alt" src="/md.png" title="title" /></p>
|
1
tests/data/image_title.md
Normal file
1
tests/data/image_title.md
Normal file
@ -0,0 +1 @@
|
|||||||
|

|
3
tests/data/implicit_reference.html
Normal file
3
tests/data/implicit_reference.html
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
<p>an <a href="http://example.com">implicit</a> reference link</p>
|
||||||
|
<p>an <a href="http://example.com">implicit</a> reference link with an empty link definition</p>
|
||||||
|
<p>an <a href="http://example.com" title="Example">explicit</a> reference link with a title</p>
|
9
tests/data/implicit_reference.md
Normal file
9
tests/data/implicit_reference.md
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
an [implicit] reference link
|
||||||
|
|
||||||
|
[implicit]: http://example.com
|
||||||
|
|
||||||
|
an [implicit][] reference link with an empty link definition
|
||||||
|
|
||||||
|
an [explicit][example] reference link with a title
|
||||||
|
|
||||||
|
[example]: http://example.com "Example"
|
@ -0,0 +1,4 @@
|
|||||||
|
<p><a href="http://example.com">link</a> and <a href="/tests/">another link</a></p>
|
||||||
|
<p><a href="http://example.com"><code>link</code></a></p>
|
||||||
|
<p><a href="http://example.com"><img alt="MD Logo" src="http://parsedown.org/md.png" /></a></p>
|
||||||
|
<p><a href="http://example.com"><img alt="MD Logo" src="http://parsedown.org/md.png" /> and text</a></p>
|
@ -0,0 +1,7 @@
|
|||||||
|
[link](http://example.com) and [another link](/tests/)
|
||||||
|
|
||||||
|
[`link`](http://example.com)
|
||||||
|
|
||||||
|
[](http://example.com)
|
||||||
|
|
||||||
|
[ and text](http://example.com)
|
1
tests/data/inline_title.html
Normal file
1
tests/data/inline_title.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
<p><a href="http://example.com" title="Example">single quotes</a> and <a href="http://example.com" title="Example">double quotes</a></p>
|
1
tests/data/inline_title.md
Normal file
1
tests/data/inline_title.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
[single quotes](http://example.com 'Example') and [double quotes](http://example.com "Example")
|
4
tests/data/lazy_blockquote.html
Normal file
4
tests/data/lazy_blockquote.html
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<blockquote>
|
||||||
|
<p>quote
|
||||||
|
the rest of it</p>
|
||||||
|
</blockquote>
|
2
tests/data/lazy_blockquote.md
Normal file
2
tests/data/lazy_blockquote.md
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
> quote
|
||||||
|
the rest of it
|
4
tests/data/lazy_list.html
Normal file
4
tests/data/lazy_list.html
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<ul>
|
||||||
|
<li>li
|
||||||
|
the rest of it</li>
|
||||||
|
</ul>
|
2
tests/data/lazy_list.md
Normal file
2
tests/data/lazy_list.md
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
- li
|
||||||
|
the rest of it
|
2
tests/data/line_break.html
Normal file
2
tests/data/line_break.html
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
<p>line<br />
|
||||||
|
line</p>
|
2
tests/data/line_break.md
Normal file
2
tests/data/line_break.md
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
line
|
||||||
|
line
|
7
tests/data/multiline_list_paragraph.html
Normal file
7
tests/data/multiline_list_paragraph.html
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<p>li</p>
|
||||||
|
<p>line
|
||||||
|
line</p>
|
||||||
|
</li>
|
||||||
|
</ul>
|
4
tests/data/multiline_list_paragraph.md
Normal file
4
tests/data/multiline_list_paragraph.md
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
- li
|
||||||
|
|
||||||
|
line
|
||||||
|
line
|
10
tests/data/nested_block-level_html.html
Normal file
10
tests/data/nested_block-level_html.html
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
<div>
|
||||||
|
_parent_
|
||||||
|
<div>
|
||||||
|
_child_
|
||||||
|
</div>
|
||||||
|
<pre>
|
||||||
|
_adopted child_
|
||||||
|
</pre>
|
||||||
|
</div>
|
||||||
|
<p><em>outside</em></p>
|
11
tests/data/nested_block-level_html.md
Normal file
11
tests/data/nested_block-level_html.md
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<div>
|
||||||
|
_parent_
|
||||||
|
<div>
|
||||||
|
_child_
|
||||||
|
</div>
|
||||||
|
<pre>
|
||||||
|
_adopted child_
|
||||||
|
</pre>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
_outside_
|
@ -1,16 +1,13 @@
|
|||||||
<p>Here's a regular ordered list:</p>
|
|
||||||
<ol>
|
|
||||||
<li>one</li>
|
|
||||||
<li>two</li>
|
|
||||||
<li>three</li>
|
|
||||||
</ol>
|
|
||||||
<p>Here's one with repeating numbers:</p>
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>one</li>
|
<li>one</li>
|
||||||
<li>two</li>
|
<li>two</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p>Here's one with large numbers:</p>
|
<p>repeating numbers:</p>
|
||||||
<ol>
|
<ol>
|
||||||
<li>one</li>
|
<li>one</li>
|
||||||
<li>two</li>
|
<li>two</li>
|
||||||
|
</ol>
|
||||||
|
<p>large numbers:</p>
|
||||||
|
<ol>
|
||||||
|
<li>one</li>
|
||||||
</ol>
|
</ol>
|
@ -1,16 +1,11 @@
|
|||||||
Here's a regular ordered list:
|
|
||||||
|
|
||||||
1. one
|
1. one
|
||||||
2. two
|
2. two
|
||||||
3. three
|
|
||||||
|
|
||||||
Here's one with repeating numbers:
|
repeating numbers:
|
||||||
|
|
||||||
1. one
|
1. one
|
||||||
1. two
|
1. two
|
||||||
|
|
||||||
Here's one with large numbers:
|
large numbers:
|
||||||
|
|
||||||
123. one
|
|
||||||
123. two
|
|
||||||
|
|
||||||
|
123. one
|
@ -1,5 +1,12 @@
|
|||||||
<p>Here's a list that's "inside" a paragraph:</p>
|
<p>paragraph</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>list item</li>
|
<li>li</li>
|
||||||
<li>another list item</li>
|
<li>li</li>
|
||||||
|
</ul>
|
||||||
|
<p>paragraph</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<p>li</p>
|
||||||
|
</li>
|
||||||
|
<li>li</li>
|
||||||
</ul>
|
</ul>
|
@ -1,4 +1,9 @@
|
|||||||
Here's a list that's "inside" a paragraph:
|
paragraph
|
||||||
- list item
|
- li
|
||||||
- another list item
|
- li
|
||||||
|
|
||||||
|
paragraph
|
||||||
|
|
||||||
|
* li
|
||||||
|
|
||||||
|
* li
|
@ -1,20 +0,0 @@
|
|||||||
<p>Here's a regular quote block:</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>Some quoted text.
|
|
||||||
Here goes some more.</p>
|
|
||||||
</blockquote>
|
|
||||||
<p>Here's one with space before lines:</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>Some quoted text.
|
|
||||||
Here goes some more.</p>
|
|
||||||
</blockquote>
|
|
||||||
<p>Here's one with no space after >:</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>Some quoted text.
|
|
||||||
Here goes some more.</p>
|
|
||||||
</blockquote>
|
|
||||||
<p>Here's one with no > on the second line:</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>Some quoted text.
|
|
||||||
Here goes some more.</p>
|
|
||||||
</blockquote>
|
|
@ -1,19 +0,0 @@
|
|||||||
Here's a regular quote block:
|
|
||||||
|
|
||||||
> Some quoted text.
|
|
||||||
> Here goes some more.
|
|
||||||
|
|
||||||
Here's one with space before lines:
|
|
||||||
|
|
||||||
> Some quoted text.
|
|
||||||
> Here goes some more.
|
|
||||||
|
|
||||||
Here's one with no space after >:
|
|
||||||
|
|
||||||
>Some quoted text.
|
|
||||||
>Here goes some more.
|
|
||||||
|
|
||||||
Here's one with no > on the second line:
|
|
||||||
|
|
||||||
> Some quoted text.
|
|
||||||
Here goes some more.
|
|
@ -1,8 +0,0 @@
|
|||||||
<p>Here's a <a href="http://parsedown.org">reference link</a>.</p>
|
|
||||||
<p>Here's <a href="http://parsedown.org">one</a> with an alternative syntax.</p>
|
|
||||||
<p>Here's <a href="http://parsedown.org">one</a> on the next line.</p>
|
|
||||||
<p>Here's <a href="http://parsedown.org">one</a> on 2 lines.</p>
|
|
||||||
<p>Here's <a href="http://parsedown.org/tests/">one</a> with a different URL.</p>
|
|
||||||
<p>Here's <a href="http://parsedown.org">one</a> with a semantic name.</p>
|
|
||||||
<p>Here's [one][404] with no definition.</p>
|
|
||||||
<p>Here's an image: <img alt="Markdown Logo" src="https://raw.github.com/dcurtis/markdown-mark/master/png/32x20-solid.png"></p>
|
|
@ -1,29 +0,0 @@
|
|||||||
Here's a [reference link][1].
|
|
||||||
|
|
||||||
[1]: http://parsedown.org
|
|
||||||
|
|
||||||
Here's [one] [2] with an alternative syntax.
|
|
||||||
|
|
||||||
[2] :http://parsedown.org
|
|
||||||
|
|
||||||
Here's [one][3] on the next line.
|
|
||||||
[3]: http://parsedown.org
|
|
||||||
|
|
||||||
Here's [one][4] on 2 lines.
|
|
||||||
|
|
||||||
[4]:
|
|
||||||
http://parsedown.org
|
|
||||||
|
|
||||||
Here's [one][5] with a different URL.
|
|
||||||
|
|
||||||
[5]: http://parsedown.org/tests/
|
|
||||||
|
|
||||||
Here's [one][the website] with a semantic name.
|
|
||||||
|
|
||||||
[the website]: http://parsedown.org
|
|
||||||
|
|
||||||
Here's [one][404] with no definition.
|
|
||||||
|
|
||||||
Here's an image: ![Markdown Logo][image]
|
|
||||||
|
|
||||||
[image]: https://raw.github.com/dcurtis/markdown-mark/master/png/32x20-solid.png
|
|
1
tests/data/reference_title.html
Normal file
1
tests/data/reference_title.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
<p><a href="http://example.com" title="Title">single quotes</a> and <a href="http://example.com" title="Title">double quotes</a></p>
|
1
tests/data/reference_title.md
Normal file
1
tests/data/reference_title.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
[single quotes](http://example.com 'Title') and [double quotes](http://example.com "Title")
|
@ -1,17 +0,0 @@
|
|||||||
<p>Here's a regular list:</p>
|
|
||||||
<ul>
|
|
||||||
<li>list item</li>
|
|
||||||
<li>another list item</li>
|
|
||||||
<li>3rd list item</li>
|
|
||||||
</ul>
|
|
||||||
<p>Here's one with white space around items:</p>
|
|
||||||
<ul>
|
|
||||||
<li>list item </li>
|
|
||||||
<li>another list item </li>
|
|
||||||
</ul>
|
|
||||||
<p>Here's one with too much space before items:</p>
|
|
||||||
<pre><code>- list item
|
|
||||||
- another list item</code></pre>
|
|
||||||
<p>Here's one with no space after markers:</p>
|
|
||||||
<p>-list item
|
|
||||||
-another list item</p>
|
|
@ -1,20 +0,0 @@
|
|||||||
Here's a regular list:
|
|
||||||
|
|
||||||
- list item
|
|
||||||
- another list item
|
|
||||||
- 3rd list item
|
|
||||||
|
|
||||||
Here's one with white space around items:
|
|
||||||
|
|
||||||
- list item
|
|
||||||
- another list item
|
|
||||||
|
|
||||||
Here's one with too much space before items:
|
|
||||||
|
|
||||||
- list item
|
|
||||||
- another list item
|
|
||||||
|
|
||||||
Here's one with no space after markers:
|
|
||||||
|
|
||||||
-list item
|
|
||||||
-another list item
|
|
4
tests/data/self-closing_block-level_html.html
Normal file
4
tests/data/self-closing_block-level_html.html
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<hr />
|
||||||
|
<p>attributes:</p>
|
||||||
|
<hr style="background: #9bd;" />
|
||||||
|
<p>...</p>
|
7
tests/data/self-closing_block-level_html.md
Normal file
7
tests/data/self-closing_block-level_html.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<hr />
|
||||||
|
|
||||||
|
attributes:
|
||||||
|
|
||||||
|
<hr style="background: #9bd;" />
|
||||||
|
|
||||||
|
...
|
5
tests/data/setext_header.html
Normal file
5
tests/data/setext_header.html
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<h1>h1</h1>
|
||||||
|
<h2>h2</h2>
|
||||||
|
<h2>single character</h2>
|
||||||
|
<p>not a header</p>
|
||||||
|
<hr />
|
12
tests/data/setext_header.md
Normal file
12
tests/data/setext_header.md
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
h1
|
||||||
|
==
|
||||||
|
|
||||||
|
h2
|
||||||
|
--
|
||||||
|
|
||||||
|
single character
|
||||||
|
-
|
||||||
|
|
||||||
|
not a header
|
||||||
|
|
||||||
|
------------
|
@ -1,6 +0,0 @@
|
|||||||
<h1>Heading 1</h1>
|
|
||||||
<h2>Heading 2</h2>
|
|
||||||
<h2>Block Heading</h2>
|
|
||||||
<p>This is the rest of the block.</p>
|
|
||||||
<h1>Single "="</h1>
|
|
||||||
<h2>Single "-"</h2>
|
|
@ -1,16 +0,0 @@
|
|||||||
Heading 1
|
|
||||||
=========
|
|
||||||
|
|
||||||
Heading 2
|
|
||||||
---------
|
|
||||||
|
|
||||||
Block Heading
|
|
||||||
-------------
|
|
||||||
This is the rest of the block.
|
|
||||||
|
|
||||||
Single "="
|
|
||||||
=
|
|
||||||
|
|
||||||
Single "-"
|
|
||||||
-
|
|
||||||
|
|
11
tests/data/simple_blockquote.html
Normal file
11
tests/data/simple_blockquote.html
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<blockquote>
|
||||||
|
<p>quote</p>
|
||||||
|
</blockquote>
|
||||||
|
<p>indented:</p>
|
||||||
|
<blockquote>
|
||||||
|
<p>quote</p>
|
||||||
|
</blockquote>
|
||||||
|
<p>no space after <code>></code>:</p>
|
||||||
|
<blockquote>
|
||||||
|
<p>quote</p>
|
||||||
|
</blockquote>
|
7
tests/data/simple_blockquote.md
Normal file
7
tests/data/simple_blockquote.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
> quote
|
||||||
|
|
||||||
|
indented:
|
||||||
|
> quote
|
||||||
|
|
||||||
|
no space after `>`:
|
||||||
|
>quote
|
4
tests/data/span-level_html.html
Normal file
4
tests/data/span-level_html.html
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<p>an <b>important</b> <a href=''>link</a></p>
|
||||||
|
<p>broken<br/>
|
||||||
|
line</p>
|
||||||
|
<p><b>inline tag</b> at the beginning</p>
|
6
tests/data/span-level_html.md
Normal file
6
tests/data/span-level_html.md
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
an <b>important</b> <a href=''>link</a>
|
||||||
|
|
||||||
|
broken<br/>
|
||||||
|
line
|
||||||
|
|
||||||
|
<b>inline tag</b> at the beginning
|
@ -1,14 +1,15 @@
|
|||||||
<p>Here's a list where items are separated by empty lines:</p>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<p>list item</p>
|
<p>li</p>
|
||||||
</li>
|
</li>
|
||||||
<li>another list item</li>
|
<li>li</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Here's an ordered one:</p>
|
<hr />
|
||||||
<ol>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<p>item one</p>
|
<p>li</p>
|
||||||
|
<ul>
|
||||||
|
<li>indented li</li>
|
||||||
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>item two</li>
|
</ul>
|
||||||
</ol>
|
|
@ -1,11 +1,9 @@
|
|||||||
Here's a list where items are separated by empty lines:
|
- li
|
||||||
|
|
||||||
- list item
|
- li
|
||||||
|
|
||||||
- another list item
|
---
|
||||||
|
|
||||||
Here's an ordered one:
|
- li
|
||||||
|
|
||||||
1. item one
|
- indented li
|
||||||
|
|
||||||
2. item two
|
|
6
tests/data/special_characters.html
Normal file
6
tests/data/special_characters.html
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<p>AT&T has an ampersand in their name</p>
|
||||||
|
<p>this & that</p>
|
||||||
|
<p>4 < 5 and 6 > 5</p>
|
||||||
|
<p><a href="http://example.com/autolink?a=1&b=2">http://example.com/autolink?a=1&b=2</a></p>
|
||||||
|
<p><a href="/script?a=1&b=2">inline link</a></p>
|
||||||
|
<p><a href="http://example.com/?a=1&b=2">reference link</a></p>
|
13
tests/data/special_characters.md
Normal file
13
tests/data/special_characters.md
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
AT&T has an ampersand in their name
|
||||||
|
|
||||||
|
this & that
|
||||||
|
|
||||||
|
4 < 5 and 6 > 5
|
||||||
|
|
||||||
|
<http://example.com/autolink?a=1&b=2>
|
||||||
|
|
||||||
|
[inline link](/script?a=1&b=2)
|
||||||
|
|
||||||
|
[reference link][1]
|
||||||
|
|
||||||
|
[1]: http://example.com/?a=1&b=2
|
3
tests/data/strikethrough.html
Normal file
3
tests/data/strikethrough.html
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
<p><del>strikethrough</del></p>
|
||||||
|
<p>here's <del>one</del> followed by <del>another one</del></p>
|
||||||
|
<p>~~ this ~~ is not one neither is ~this~</p>
|
5
tests/data/strikethrough.md
Normal file
5
tests/data/strikethrough.md
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
~~strikethrough~~
|
||||||
|
|
||||||
|
here's ~~one~~ followed by ~~another one~~
|
||||||
|
|
||||||
|
~~ this ~~ is not one neither is ~this~
|
6
tests/data/strong_em.html
Normal file
6
tests/data/strong_em.html
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<p><em>em <strong>strong em</strong></em></p>
|
||||||
|
<p><em><strong>strong em</strong> em</em></p>
|
||||||
|
<p><em>em <strong>strong em</strong> em</em></p>
|
||||||
|
<p><em>em <strong>strong em</strong></em></p>
|
||||||
|
<p><em><strong>strong em</strong> em</em></p>
|
||||||
|
<p><em>em <strong>strong em</strong> em</em></p>
|
11
tests/data/strong_em.md
Normal file
11
tests/data/strong_em.md
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
*em **strong em***
|
||||||
|
|
||||||
|
***strong em** em*
|
||||||
|
|
||||||
|
*em **strong em** em*
|
||||||
|
|
||||||
|
_em __strong em___
|
||||||
|
|
||||||
|
___strong em__ em_
|
||||||
|
|
||||||
|
_em __strong em__ em_
|
6
tests/data/tab-indented_code_block.html
Normal file
6
tests/data/tab-indented_code_block.html
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<pre><code><?php
|
||||||
|
|
||||||
|
$message = 'Hello World!';
|
||||||
|
echo $message;
|
||||||
|
|
||||||
|
echo "following a blank line";</code></pre>
|
6
tests/data/tab-indented_code_block.md
Normal file
6
tests/data/tab-indented_code_block.md
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
$message = 'Hello World!';
|
||||||
|
echo $message;
|
||||||
|
|
||||||
|
echo "following a blank line";
|
7
tests/data/text_reference.html
Normal file
7
tests/data/text_reference.html
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<p><a href="http://example.com">reference link</a></p>
|
||||||
|
<p><a href="http://example.com">one</a> with a semantic name</p>
|
||||||
|
<p>[one][404] with no definition</p>
|
||||||
|
<p><a href="http://example.com">multiline
|
||||||
|
one</a> defined on 2 lines</p>
|
||||||
|
<p><a href="http://example.com">one</a> with an upper case label</p>
|
||||||
|
<p><a href="http://example.com"><code>link</code></a></p>
|
18
tests/data/text_reference.md
Normal file
18
tests/data/text_reference.md
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
[reference link][1]
|
||||||
|
|
||||||
|
[1]: http://example.com
|
||||||
|
|
||||||
|
[one][website] with a semantic name
|
||||||
|
|
||||||
|
[website]: http://example.com
|
||||||
|
|
||||||
|
[one][404] with no definition
|
||||||
|
|
||||||
|
[multiline
|
||||||
|
one][website] defined on 2 lines
|
||||||
|
|
||||||
|
[one][label] with an upper case label
|
||||||
|
|
||||||
|
[LABEL]: http://example.com
|
||||||
|
|
||||||
|
[`link`][website]
|
@ -1,20 +1,10 @@
|
|||||||
<p>Here's a regular unordered list:</p>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>list item</li>
|
<li>li</li>
|
||||||
<li>another list item</li>
|
<li>li</li>
|
||||||
<li>3rd list item</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
<p>Here's one with a variety of markers:</p>
|
<p>mixed markers:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>hyphen</li>
|
<li>li</li>
|
||||||
<li>plus</li>
|
<li>li</li>
|
||||||
<li>asterisk</li>
|
<li>li</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Here's one with white space around items:</p>
|
|
||||||
<ul>
|
|
||||||
<li>list item </li>
|
|
||||||
<li>another list item </li>
|
|
||||||
</ul>
|
|
||||||
<p>Here's one with no space after markers:</p>
|
|
||||||
<p>-list item
|
|
||||||
-another list item</p>
|
|
@ -1,21 +1,8 @@
|
|||||||
Here's a regular unordered list:
|
- li
|
||||||
|
- li
|
||||||
|
|
||||||
- list item
|
mixed markers:
|
||||||
- another list item
|
|
||||||
- 3rd list item
|
|
||||||
|
|
||||||
Here's one with a variety of markers:
|
* li
|
||||||
|
+ li
|
||||||
- hyphen
|
- li
|
||||||
+ plus
|
|
||||||
* asterisk
|
|
||||||
|
|
||||||
Here's one with white space around items:
|
|
||||||
|
|
||||||
- list item
|
|
||||||
- another list item
|
|
||||||
|
|
||||||
Here's one with no space after markers:
|
|
||||||
|
|
||||||
-list item
|
|
||||||
-another list item
|
|
2
tests/data/url_autolinking.html
Normal file
2
tests/data/url_autolinking.html
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
<p>an autolink <a href="http://example.com">http://example.com</a></p>
|
||||||
|
<p>inside of brackets [<a href="http://example.com">http://example.com</a>], inside of braces {<a href="http://example.com">http://example.com</a>}, inside of parentheses (<a href="http://example.com">http://example.com</a>)</p>
|
3
tests/data/url_autolinking.md
Normal file
3
tests/data/url_autolinking.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
an autolink http://example.com
|
||||||
|
|
||||||
|
inside of brackets [http://example.com], inside of braces {http://example.com}, inside of parentheses (http://example.com)
|
1
tests/data/whitespace.html
Normal file
1
tests/data/whitespace.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
<pre><code>code</code></pre>
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user