aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xmarkdown.py32
-rw-r--r--tests/extensions-x-tables/tables.html47
-rw-r--r--tests/markdown-test/amps-and-angle-encoding.html2
-rw-r--r--tests/markdown-test/angle-links-and-img.html11
-rw-r--r--tests/markdown-test/auto-links.html23
-rw-r--r--tests/markdown-test/backlash-escapes.html48
-rw-r--r--tests/markdown-test/blockquotes-with-code-blocks.html8
-rw-r--r--tests/markdown-test/links-inline.html12
-rw-r--r--tests/markdown-test/markdown-documentation-basics.html3
-rw-r--r--tests/markdown-test/markdown-syntax.html111
-rw-r--r--tests/markdown-test/ordered-and-unordered-list.html2
-rw-r--r--tests/markdown-test/strong-and-em-together.html20
-rw-r--r--tests/markdown-test/tabs.html12
-rw-r--r--tests/misc/amp-in-url.html4
-rw-r--r--tests/misc/arabic.html7
-rw-r--r--tests/misc/attributes2.html2
-rw-r--r--tests/misc/autolinks_with_asterisks.html4
-rw-r--r--tests/misc/autolinks_with_asterisks_russian.html4
-rw-r--r--tests/misc/backtick-escape.html2
-rw-r--r--tests/misc/bidi.html19
-rw-r--r--tests/misc/blank-block-quote.html2
-rw-r--r--tests/misc/blockquote-below-paragraph.html5
-rw-r--r--tests/misc/blockquote-hr.html2
-rw-r--r--tests/misc/blockquote.html14
-rw-r--r--tests/misc/bold_links.html5
-rw-r--r--tests/misc/div.html4
-rw-r--r--tests/misc/email.html3
-rw-r--r--tests/misc/funky-list.html15
-rw-r--r--tests/misc/headers.html6
-rw-r--r--tests/misc/html-comments.html2
-rw-r--r--tests/misc/html.html9
-rw-r--r--tests/misc/image-2.html12
-rw-r--r--tests/misc/image.html4
-rw-r--r--tests/misc/image_in_links.html6
-rw-r--r--tests/misc/inside_html.html2
-rw-r--r--tests/misc/japanese.html12
-rw-r--r--tests/misc/link-with-parenthesis.html4
-rw-r--r--tests/misc/markup-inside-p.html6
-rw-r--r--tests/misc/mismatched-tags.html7
-rw-r--r--tests/misc/missing-link-def.html4
-rw-r--r--tests/misc/more_comments.html2
-rw-r--r--tests/misc/multi-test.html9
-rw-r--r--tests/misc/nested-patterns.html45
-rw-r--r--tests/misc/normalize.html4
-rw-r--r--tests/misc/numeric-entity.html6
-rw-r--r--tests/misc/php.html3
-rw-r--r--tests/misc/russian.html9
-rw-r--r--tests/misc/some-test.html78
-rw-r--r--tests/misc/strong-with-underscores.html4
-rw-r--r--tests/misc/stronintags.html10
-rw-r--r--tests/misc/two-spaces.html6
-rw-r--r--tests/misc/uche.html18
-rw-r--r--tests/misc/underscores.html5
-rw-r--r--tests/misc/url_spaces.html8
-rw-r--r--tests/safe_mode/script_tags.html5
-rw-r--r--tests/safe_mode/unsafe_urls.html18
56 files changed, 246 insertions, 481 deletions
diff --git a/markdown.py b/markdown.py
index 66fd286..d594b99 100755
--- a/markdown.py
+++ b/markdown.py
@@ -98,22 +98,20 @@ in extensions use: `from markdown import etree`
to access to the ElemetTree module, do not import it by yourself"""
etree = importETree()
-def indentETree(elem, level=0):
- """ Indent ElementTree before serialization """
+def prettifyETree(elem):
+ """ Add linebreaks to ElementTree before serialization """
- if level > 1:
- i = "\n" + (level-1) * " "
- else:
- i = "\n"
-
- if len(elem) and elem.tag not in ['code', 'pre']:
- if not elem.text or not elem.text.strip():
- elem.text = i + " "
+ i = "\n"
+ if isBlockLevel(elem.tag) and elem.tag not in ['code', 'pre']:
+ if (not elem.text or not elem.text.strip()) \
+ and len(elem) and isBlockLevel(elem[0].tag):
+ elem.text = i
for e in elem:
- indentETree(e, level+1)
- if not e.tail or not e.tail.strip():
- e.tail = i
- if level and (not elem.tail or not elem.tail.strip()):
+ if isBlockLevel(e.tag):
+ prettifyETree(e)
+ if not elem.tail or not elem.tail.strip():
+ elem.tail = i
+ if not elem.tail or not elem.tail.strip():
elem.tail = i
class AtomicString(unicode):
@@ -181,7 +179,7 @@ INLINE_PLACEHOLDER_SUFFIX = ETX
AMP_SUBSTITUTE = STX+"amp"+ETX
-BLOCK_LEVEL_ELEMENTS = re.compile('p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del|hr|hr/|style')
+BLOCK_LEVEL_ELEMENTS = re.compile('p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del|hr|hr/|style|li|tr')
def isBlockLevel(tag):
"""
@@ -1324,7 +1322,7 @@ class Markdown:
"""
# Setup the document
- self.root = etree.Element("span")
+ self.root = etree.Element("div")
# Split into lines and run the preprocessors that will work with
# self.lines
@@ -1964,7 +1962,7 @@ class Markdown:
if newRoot:
root = newRoot
- indentETree(root)
+ prettifyETree(root)
xml, length = codecs.utf_8_decode(etree.tostring(root, encoding="utf8"))
diff --git a/tests/extensions-x-tables/tables.html b/tests/extensions-x-tables/tables.html
index 59e7da3..55042dd 100644
--- a/tests/extensions-x-tables/tables.html
+++ b/tests/extensions-x-tables/tables.html
@@ -1,45 +1,14 @@
<p>Before</p>
<table>
-<tr>
-<td> a </td>
-<th> b </th>
-</tr>
-<tr>
-<td>
-<a href="#link">c</a>
-</td>
-<td>
-<em>d</em>
-</td>
-</tr>
+<tr><td> a </td><th> b </th></tr>
+<tr><td> <a href="#link">c</a> </td><td> <em>d</em> </td></tr>
</table>
<p>Another</p>
<table>
-<tr>
-<td> a </td>
-<td> b </td>
-</tr>
-<tr>
-<td>
-<em>a</em>
-</td>
-<td> b </td>
-</tr>
-<tr>
-<td> a </td>
-<td> b </td>
-</tr>
-<tr>
-<td> a </td>
-<td> b </td>
-</tr>
-<tr>
-<td> c </td>
-<td>
-<em>d</em>
-</td>
-</tr>
+<tr><td> a </td><td> b </td></tr>
+<tr><td> <em>a</em> </td><td> b </td></tr>
+<tr><td> a </td><td> b </td></tr>
+<tr><td> a </td><td> b </td></tr>
+<tr><td> c </td><td> <em>d</em> </td></tr>
</table>
-<p>After</p>
-
-
+<p>After</p> \ No newline at end of file
diff --git a/tests/markdown-test/amps-and-angle-encoding.html b/tests/markdown-test/amps-and-angle-encoding.html
index fc1b2c3..2c466c1 100644
--- a/tests/markdown-test/amps-and-angle-encoding.html
+++ b/tests/markdown-test/amps-and-angle-encoding.html
@@ -6,4 +6,4 @@
<p>Here's a <a href="http://example.com/?foo=1&amp;bar=2">link</a> with an ampersand in the URL.</p>
<p>Here's a link with an amersand in the link text: <a href="http://att.com/" title="AT&amp;T">AT&amp;T</a>.</p>
<p>Here's an inline <a href="/script?foo=1&amp;bar=2">link</a>.</p>
-<p>Here's an inline <a href="/script?foo=1&amp;bar=2">link</a>.</p>
+<p>Here's an inline <a href="/script?foo=1&amp;bar=2">link</a>.</p> \ No newline at end of file
diff --git a/tests/markdown-test/angle-links-and-img.html b/tests/markdown-test/angle-links-and-img.html
index e32b6e6..1ca3b0b 100644
--- a/tests/markdown-test/angle-links-and-img.html
+++ b/tests/markdown-test/angle-links-and-img.html
@@ -1,7 +1,4 @@
-<p>
- <a href="simple link" title="title">link</a>
- <img alt="image" src="http://example.com/image.jpg" />
- <a href="http://example.com/(()((())923)(">link</a>
- <img alt="image" src="link(()))(" />
-</p>
-
+<p><a href="simple link" title="title">link</a>
+<img alt="image" src="http://example.com/image.jpg" />
+<a href="http://example.com/(()((())923)(">link</a>
+<img alt="image" src="link(()))(" /></p> \ No newline at end of file
diff --git a/tests/markdown-test/auto-links.html b/tests/markdown-test/auto-links.html
index 913e1a4..7481fe2 100644
--- a/tests/markdown-test/auto-links.html
+++ b/tests/markdown-test/auto-links.html
@@ -1,22 +1,15 @@
<p>Link: <a href="http://example.com/">http://example.com/</a>.</p>
-<p>Https link: <a href="https://example.com">https://example.com</a>
-</p>
-<p>Ftp link: <a href="ftp://example.com">ftp://example.com</a>
-</p>
-<p>With an ampersand: <a href="http://example.com/?foo=1&amp;bar=2">http://example.com/?foo=1&amp;bar=2</a>
-</p>
+<p>Https link: <a href="https://example.com">https://example.com</a></p>
+<p>Ftp link: <a href="ftp://example.com">ftp://example.com</a></p>
+<p>With an ampersand: <a href="http://example.com/?foo=1&amp;bar=2">http://example.com/?foo=1&amp;bar=2</a></p>
<ul>
- <li>In a list?</li>
- <li>
- <a href="http://example.com/">http://example.com/</a>
- </li>
- <li>It should.</li>
+<li>In a list?</li>
+<li><a href="http://example.com/">http://example.com/</a></li>
+<li>It should.</li>
</ul>
<blockquote>
- <p>Blockquoted: <a href="http://example.com/">http://example.com/</a>
- </p>
+<p>Blockquoted: <a href="http://example.com/">http://example.com/</a></p>
</blockquote>
-<p>Auto-links should not occur here: <code>&lt;http://example.com/&gt;</code>
-</p>
+<p>Auto-links should not occur here: <code>&lt;http://example.com/&gt;</code></p>
<pre><code>or here: &lt;http://example.com/&gt;
</code></pre> \ No newline at end of file
diff --git a/tests/markdown-test/backlash-escapes.html b/tests/markdown-test/backlash-escapes.html
index 18a67cc..876775f 100644
--- a/tests/markdown-test/backlash-escapes.html
+++ b/tests/markdown-test/backlash-escapes.html
@@ -49,35 +49,19 @@ Plus: \+
Minus: \-
</code></pre>
<p>Nor should these, which occur in code spans:</p>
-<p>Backslash: <code>\\</code>
-</p>
-<p>Backtick: <code>\`</code>
-</p>
-<p>Asterisk: <code>\*</code>
-</p>
-<p>Underscore: <code>\_</code>
-</p>
-<p>Left brace: <code>\{</code>
-</p>
-<p>Right brace: <code>\}</code>
-</p>
-<p>Left bracket: <code>\[</code>
-</p>
-<p>Right bracket: <code>\]</code>
-</p>
-<p>Left paren: <code>\(</code>
-</p>
-<p>Right paren: <code>\)</code>
-</p>
-<p>Greater-than: <code>\&gt;</code>
-</p>
-<p>Hash: <code>\#</code>
-</p>
-<p>Period: <code>\.</code>
-</p>
-<p>Bang: <code>\!</code>
-</p>
-<p>Plus: <code>\+</code>
-</p>
-<p>Minus: <code>\-</code>
-</p> \ No newline at end of file
+<p>Backslash: <code>\\</code></p>
+<p>Backtick: <code>\`</code></p>
+<p>Asterisk: <code>\*</code></p>
+<p>Underscore: <code>\_</code></p>
+<p>Left brace: <code>\{</code></p>
+<p>Right brace: <code>\}</code></p>
+<p>Left bracket: <code>\[</code></p>
+<p>Right bracket: <code>\]</code></p>
+<p>Left paren: <code>\(</code></p>
+<p>Right paren: <code>\)</code></p>
+<p>Greater-than: <code>\&gt;</code></p>
+<p>Hash: <code>\#</code></p>
+<p>Period: <code>\.</code></p>
+<p>Bang: <code>\!</code></p>
+<p>Plus: <code>\+</code></p>
+<p>Minus: <code>\-</code></p> \ No newline at end of file
diff --git a/tests/markdown-test/blockquotes-with-code-blocks.html b/tests/markdown-test/blockquotes-with-code-blocks.html
index 4b09449..5fc98b1 100644
--- a/tests/markdown-test/blockquotes-with-code-blocks.html
+++ b/tests/markdown-test/blockquotes-with-code-blocks.html
@@ -1,11 +1,11 @@
<blockquote>
- <p>Example:</p>
- <pre><code>sub status {
+<p>Example:</p>
+<pre><code>sub status {
print "working";
}
</code></pre>
- <p>Or:</p>
- <pre><code>sub status {
+<p>Or:</p>
+<pre><code>sub status {
return "working";
}
</code></pre>
diff --git a/tests/markdown-test/links-inline.html b/tests/markdown-test/links-inline.html
index e1aaf27..707937a 100644
--- a/tests/markdown-test/links-inline.html
+++ b/tests/markdown-test/links-inline.html
@@ -1,9 +1,5 @@
<p>Just a <a href="/url/">URL</a>.</p>
-<p>
-<a href="/url/" title="title">URL and title</a>.</p>
-<p>
-<a href="/url/" title="title preceded by two spaces">URL and title</a>.</p>
-<p>
-<a href="/url/" title="title preceded by a tab">URL and title</a>.</p>
-<p>
-<a href="">Empty</a>.</p> \ No newline at end of file
+<p><a href="/url/" title="title">URL and title</a>.</p>
+<p><a href="/url/" title="title preceded by two spaces">URL and title</a>.</p>
+<p><a href="/url/" title="title preceded by a tab">URL and title</a>.</p>
+<p><a href="">Empty</a>.</p> \ No newline at end of file
diff --git a/tests/markdown-test/markdown-documentation-basics.html b/tests/markdown-test/markdown-documentation-basics.html
index e0edcdc..3bcaea9 100644
--- a/tests/markdown-test/markdown-documentation-basics.html
+++ b/tests/markdown-test/markdown-documentation-basics.html
@@ -17,8 +17,7 @@ HTML output produced by Markdown.</p>
<p>It's also helpful to simply try Markdown out; the <a href="/projects/markdown/dingus" title="Markdown Dingus">Dingus</a> is a
web application that allows you type your own Markdown-formatted text
and translate it to XHTML.</p>
-<p>
- <strong>Note:</strong> This document is itself written using Markdown; you
+<p><strong>Note:</strong> This document is itself written using Markdown; you
can <a href="/projects/markdown/basics.text">see the source for it by adding '.text' to the URL</a>.</p>
<h2>Paragraphs, Headers, Blockquotes</h2>
<p>A paragraph is simply one or more consecutive lines of text, separated
diff --git a/tests/markdown-test/markdown-syntax.html b/tests/markdown-test/markdown-syntax.html
index c53c045..2f63b4b 100644
--- a/tests/markdown-test/markdown-syntax.html
+++ b/tests/markdown-test/markdown-syntax.html
@@ -8,74 +8,35 @@
</ul>
<ul>
- <li>
- <a href="#overview">Overview</a>
- <ul>
- <li>
- <a href="#philosophy">Philosophy</a>
- </li>
- <li>
- <a href="#html">Inline HTML</a>
- </li>
- <li>
- <a href="#autoescape">Automatic Escaping for Special Characters</a>
- </li>
- </ul>
- </li>
- <li>
- <a href="#block">Block Elements</a>
- <ul>
- <li>
- <a href="#p">Paragraphs and Line Breaks</a>
- </li>
- <li>
- <a href="#header">Headers</a>
- </li>
- <li>
- <a href="#blockquote">Blockquotes</a>
- </li>
- <li>
- <a href="#list">Lists</a>
- </li>
- <li>
- <a href="#precode">Code Blocks</a>
- </li>
- <li>
- <a href="#hr">Horizontal Rules</a>
- </li>
- </ul>
- </li>
- <li>
- <a href="#span">Span Elements</a>
- <ul>
- <li>
- <a href="#link">Links</a>
- </li>
- <li>
- <a href="#em">Emphasis</a>
- </li>
- <li>
- <a href="#code">Code</a>
- </li>
- <li>
- <a href="#img">Images</a>
- </li>
- </ul>
- </li>
- <li>
- <a href="#misc">Miscellaneous</a>
- <ul>
- <li>
- <a href="#backslash">Backslash Escapes</a>
- </li>
- <li>
- <a href="#autolink">Automatic Links</a>
- </li>
- </ul>
- </li>
+<li><a href="#overview">Overview</a><ul>
+<li><a href="#philosophy">Philosophy</a></li>
+<li><a href="#html">Inline HTML</a></li>
+<li><a href="#autoescape">Automatic Escaping for Special Characters</a></li>
</ul>
-<p>
- <strong>Note:</strong> This document is itself written using Markdown; you
+</li>
+<li><a href="#block">Block Elements</a><ul>
+<li><a href="#p">Paragraphs and Line Breaks</a></li>
+<li><a href="#header">Headers</a></li>
+<li><a href="#blockquote">Blockquotes</a></li>
+<li><a href="#list">Lists</a></li>
+<li><a href="#precode">Code Blocks</a></li>
+<li><a href="#hr">Horizontal Rules</a></li>
+</ul>
+</li>
+<li><a href="#span">Span Elements</a><ul>
+<li><a href="#link">Links</a></li>
+<li><a href="#em">Emphasis</a></li>
+<li><a href="#code">Code</a></li>
+<li><a href="#img">Images</a></li>
+</ul>
+</li>
+<li><a href="#misc">Miscellaneous</a><ul>
+<li><a href="#backslash">Backslash Escapes</a></li>
+<li><a href="#autolink">Automatic Links</a></li>
+</ul>
+</li>
+</ul>
+<p><strong>Note:</strong> This document is itself written using Markdown; you
can <a href="/projects/markdown/syntax.text">see the source for it by adding '.text' to the URL</a>.</p>
<hr />
<h2 id="overview">Overview</h2>
@@ -522,12 +483,12 @@ on a line by itself:</p>
</code></pre>
<p>That is:</p>
<ul>
- <li>Square brackets containing the link identifier (optionally
+<li>Square brackets containing the link identifier (optionally
indented from the left margin using up to three spaces);</li>
- <li>followed by a colon;</li>
- <li>followed by one or more spaces (or tabs);</li>
- <li>followed by the URL for the link;</li>
- <li>optionally followed by a title attribute for the link, enclosed
+<li>followed by a colon;</li>
+<li>followed by one or more spaces (or tabs);</li>
+<li>followed by the URL for the link;</li>
+<li>optionally followed by a title attribute for the link, enclosed
in double or single quotes.</li>
</ul>
<p>The link URL may, optionally, be surrounded by angle brackets:</p>
@@ -697,10 +658,10 @@ for links, allowing for two styles: <em>inline</em> and <em>reference</em>.</p>
</code></pre>
<p>That is:</p>
<ul>
- <li>An exclamation mark: <code>!</code>;</li>
- <li>followed by a set of square brackets, containing the <code>alt</code>
+<li>An exclamation mark: <code>!</code>;</li>
+<li>followed by a set of square brackets, containing the <code>alt</code>
attribute text for the image;</li>
- <li>followed by a set of parentheses, containing the URL or path to
+<li>followed by a set of parentheses, containing the URL or path to
the image, and an optional <code>title</code> attribute enclosed in double
or single quotes.</li>
</ul>
diff --git a/tests/markdown-test/ordered-and-unordered-list.html b/tests/markdown-test/ordered-and-unordered-list.html
index e96cdba..090c43c 100644
--- a/tests/markdown-test/ordered-and-unordered-list.html
+++ b/tests/markdown-test/ordered-and-unordered-list.html
@@ -143,4 +143,4 @@ back.</p>
<li>
<p>Third</p>
</li>
-</ol>
+</ol> \ No newline at end of file
diff --git a/tests/markdown-test/strong-and-em-together.html b/tests/markdown-test/strong-and-em-together.html
index 04c1850..7bf5163 100644
--- a/tests/markdown-test/strong-and-em-together.html
+++ b/tests/markdown-test/strong-and-em-together.html
@@ -1,16 +1,4 @@
-<p>
-<strong>
-<em>This is strong and em.</em>
-</strong>
-</p>
-<p>So is <strong>
-<em>this</em>
-</strong> word.</p>
-<p>
-<strong>
-<em>This is strong and em.</em>
-</strong>
-</p>
-<p>So is <strong>
-<em>this</em>
-</strong> word.</p>
+<p><strong><em>This is strong and em.</em></strong></p>
+<p>So is <strong><em>this</em></strong> word.</p>
+<p><strong><em>This is strong and em.</em></strong></p>
+<p>So is <strong><em>this</em></strong> word.</p> \ No newline at end of file
diff --git a/tests/markdown-test/tabs.html b/tests/markdown-test/tabs.html
index f302d5f..b26391b 100644
--- a/tests/markdown-test/tabs.html
+++ b/tests/markdown-test/tabs.html
@@ -1,12 +1,12 @@
<ul>
- <li>
- <p>this is a list item
+<li>
+<p>this is a list item
indented with tabs</p>
- </li>
- <li>
- <p>this is a list item
+</li>
+<li>
+<p>this is a list item
indented with spaces</p>
- </li>
+</li>
</ul>
<p>Code:</p>
<pre><code>this code block is indented by one tab
diff --git a/tests/misc/amp-in-url.html b/tests/misc/amp-in-url.html
index e0ca599..2170a54 100644
--- a/tests/misc/amp-in-url.html
+++ b/tests/misc/amp-in-url.html
@@ -1,3 +1 @@
-<p>
-<a href="http://www.freewisdom.org/this&amp;that">link</a>
-</p> \ No newline at end of file
+<p><a href="http://www.freewisdom.org/this&amp;that">link</a></p> \ No newline at end of file
diff --git a/tests/misc/arabic.html b/tests/misc/arabic.html
index 073febb..4908264 100644
--- a/tests/misc/arabic.html
+++ b/tests/misc/arabic.html
@@ -1,6 +1,5 @@
<h1>بايثون</h1>
-<p>
- <strong>بايثون</strong> لغة برمجة حديثة بسيطة، واضحة، سريعة ، تستخدم أسلوب البرمجة الكائنية (OOP) وقابلة للتطوير بالإضافة إلى أنها مجانية و مفتوحة المصدر. صُنفت بالأساس كلغة تفسيرية ، بايثون مصممة أصلاً للأداء بعض المهام الخاصة أو المحدودة. إلا أنه يمكن استخدامها بايثون لإنجاز المشاريع الضخمه كأي لغة برمجية أخرى، غالباً ما يُنصح المبتدئين في ميدان البرمجة بتعلم هذه اللغة لأنها من بين أسهل اللغات البرمجية تعلماً.</p>
+<p><strong>بايثون</strong> لغة برمجة حديثة بسيطة، واضحة، سريعة ، تستخدم أسلوب البرمجة الكائنية (OOP) وقابلة للتطوير بالإضافة إلى أنها مجانية و مفتوحة المصدر. صُنفت بالأساس كلغة تفسيرية ، بايثون مصممة أصلاً للأداء بعض المهام الخاصة أو المحدودة. إلا أنه يمكن استخدامها بايثون لإنجاز المشاريع الضخمه كأي لغة برمجية أخرى، غالباً ما يُنصح المبتدئين في ميدان البرمجة بتعلم هذه اللغة لأنها من بين أسهل اللغات البرمجية تعلماً.</p>
<p>نشأت بايثون في مركز CWI (مركز العلوم والحاسب الآلي) بأمستردام على يد جويدو فان رُزوم. تم تطويرها بلغة C. أطلق فان رُزوم اسم "بايثون" على لغته تعبيرًا عن إعجابه بفِرقَة مسرحية هزلية شهيرة من بريطانيا، كانت تطلق على نفسها اسم مونتي بايثون Monty Python.</p>
<p>تتميز بايثون بمجتمعها النشط ، كما أن لها الكثير من المكتبات البرمجية ذات الأغراض الخاصة والتي برمجها أشخاص من مجتمع هذه اللغة ، مثلاً مكتبة PyGame التي توفر مجموعه من الوظائف من اجل برمجة الالعاب. ويمكن لبايثون التعامل مع العديد من أنواع قواعد البيانات مثل MySQL وغيره.</p>
<h2>أمثلة</h2>
@@ -23,8 +22,6 @@ else:
</code></pre>
<h2>وصلات خارجية</h2>
<ul>
- <li>
- <a href="http://www.python.org">الموقع الرسمي للغة بايثون</a>
- </li>
+<li><a href="http://www.python.org">الموقع الرسمي للغة بايثون</a></li>
</ul>
<p> بذرة حاس </p> \ No newline at end of file
diff --git a/tests/misc/attributes2.html b/tests/misc/attributes2.html
index cc1ae26..5971cc8 100644
--- a/tests/misc/attributes2.html
+++ b/tests/misc/attributes2.html
@@ -3,4 +3,4 @@
<li id="TABLEOFCONTENTS" />
</ul>
<p id="TABLEOFCONTENTS">Or in the middle of the text </p>
-<p id="tableofcontents" />
+<p id="tableofcontents" /> \ No newline at end of file
diff --git a/tests/misc/autolinks_with_asterisks.html b/tests/misc/autolinks_with_asterisks.html
index a7f2609..7cb852f 100644
--- a/tests/misc/autolinks_with_asterisks.html
+++ b/tests/misc/autolinks_with_asterisks.html
@@ -1,3 +1 @@
-<p>
- <a href="http://some.site/weird*url*thing">http://some.site/weird*url*thing</a>
-</p> \ No newline at end of file
+<p><a href="http://some.site/weird*url*thing">http://some.site/weird*url*thing</a></p> \ No newline at end of file
diff --git a/tests/misc/autolinks_with_asterisks_russian.html b/tests/misc/autolinks_with_asterisks_russian.html
index 05c44c5..64cd635 100644
--- a/tests/misc/autolinks_with_asterisks_russian.html
+++ b/tests/misc/autolinks_with_asterisks_russian.html
@@ -1,3 +1 @@
-<p>
- <a href="http://some.site/нечто*очень*странное">http://some.site/нечто*очень*странное</a>
-</p> \ No newline at end of file
+<p><a href="http://some.site/нечто*очень*странное">http://some.site/нечто*очень*странное</a></p> \ No newline at end of file
diff --git a/tests/misc/backtick-escape.html b/tests/misc/backtick-escape.html
index dd736d4..07f5115 100644
--- a/tests/misc/backtick-escape.html
+++ b/tests/misc/backtick-escape.html
@@ -1,3 +1,3 @@
<p>\`This should not be in code.\`
`This also should not be in code.`
-`And finally this should not be in code.`</p>
+`And finally this should not be in code.`</p> \ No newline at end of file
diff --git a/tests/misc/bidi.html b/tests/misc/bidi.html
index 8f94062..acd36c8 100644
--- a/tests/misc/bidi.html
+++ b/tests/misc/bidi.html
@@ -1,17 +1,14 @@
-<p>
- <strong>Python</strong>(パイソン)は、<a href="http://en.wikipedia.org/wiki/Guido_van_Rossum">Guido van Rossum</a> によって作られたオープンソースのオブジェクト指向スクリプト言語。<a href="http://ja.wikipedia.org/wiki/Perl">Perl</a>とともに欧米で広く普及している。イギリスのテレビ局 BBC が製作したコメディ番組『空飛ぶモンティ・パイソン』にちなんで名付けられた。 (Pythonには、爬虫類のニシキヘビの意味があり、Python言語のマスコットやアイコンとして使われることがある。)</p>
+<p><strong>Python</strong>(パイソン)は、<a href="http://en.wikipedia.org/wiki/Guido_van_Rossum">Guido van Rossum</a> によって作られたオープンソースのオブジェクト指向スクリプト言語。<a href="http://ja.wikipedia.org/wiki/Perl">Perl</a>とともに欧米で広く普及している。イギリスのテレビ局 BBC が製作したコメディ番組『空飛ぶモンティ・パイソン』にちなんで名付けられた。 (Pythonには、爬虫類のニシキヘビの意味があり、Python言語のマスコットやアイコンとして使われることがある。)</p>
<p>|||||||||||||||||||||||||||||THIS SHOULD BE LTR|||||||||||||||||||||||||</p>
<p dir="rtl">|||||||||||||||||||||||||||||THIS SHOULD BE RTL||||||||||||||||||||||||| </p>
<p dir="ltr">(<strong>بايثون</strong> لغة برمجة حديثة بسيطة، واضحة، سريعة ، تستخدم أسلوب البرمجة الكائنية (THIS SHOULD BE LTR ) وقابلة للتطوير بالإضافة إلى أنها مجانية و مفتوح </p>
<p>پایتون زبان برنامه‌نویسی تفسیری و سطح بالا ، شی‌گرا و یک زبان برنامه‌نویسی تفسیری سمت سرور قدرتمند است که توسط گیدو ون روسوم در سال ۱۹۹۰ ساخته شد. این زبان در ویژگی‌ها شبیه پرل، روبی، اسکیم، اسمال‌تاک و تی‌سی‌ال است و از مدیریت خودکار حافظه استفاده می‌کند</p>
<p>Python,是一种面向对象的、直譯式的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。</p>
<p>ބްލޫ ވޭލްގެ ދޫ މަތީގައި އެއްފަހަރާ 50 މީހުންނަށް ތިބެވިދާނެވެ. ބޮޑު މަހުގެ ދުލަކީ އެހާމެ ބޮޑު އެއްޗެކެވެ.</p>
-<p>
- <strong>உருது</strong> 13ஆம் நூற்றாண்டில் உருவான ஒரு இந்தோ-ஐரோப்பிய மொழியாகும். உருது, ஹிந்தியுடன் சேர்த்து "ஹிந்துஸ்தானி" என அழைக்கப்படுகின்றது. மண்டரின், ஆங்கிலம் ஆகியவற்றுக்கு அடுத்தபடியாக மூன்றாவது கூடிய அளவு மக்களால் புரிந்து கொள்ளப்படக்கூடியது ஹிந்துஸ்தானியேயாகும். தாய் மொழியாகப் பேசுபவர்கள் எண்ணிக்கையின் அடிப்படையில் உருது உலகின் 20 ஆவது பெரிய மொழியாகும். 6 கோடி மக்கள் இதனைத் தாய் மொழியாகக் கொண்டுள்ளார்கள். இரண்டாவது மொழியாகக் கொண்டுள்ளவர்கள் உட்பட 11 கோடிப் பேர் இதனைப் பேசுகிறார்கள். உருது பாகிஸ்தானின் அரசகரும மொழியாகவும், இந்தியாவின் அரசகரும மொழிகளுள் ஒன்றாகவும் விளங்குகிறது.</p>
+<p><strong>உருது</strong> 13ஆம் நூற்றாண்டில் உருவான ஒரு இந்தோ-ஐரோப்பிய மொழியாகும். உருது, ஹிந்தியுடன் சேர்த்து "ஹிந்துஸ்தானி" என அழைக்கப்படுகின்றது. மண்டரின், ஆங்கிலம் ஆகியவற்றுக்கு அடுத்தபடியாக மூன்றாவது கூடிய அளவு மக்களால் புரிந்து கொள்ளப்படக்கூடியது ஹிந்துஸ்தானியேயாகும். தாய் மொழியாகப் பேசுபவர்கள் எண்ணிக்கையின் அடிப்படையில் உருது உலகின் 20 ஆவது பெரிய மொழியாகும். 6 கோடி மக்கள் இதனைத் தாய் மொழியாகக் கொண்டுள்ளார்கள். இரண்டாவது மொழியாகக் கொண்டுள்ளவர்கள் உட்பட 11 கோடிப் பேர் இதனைப் பேசுகிறார்கள். உருது பாகிஸ்தானின் அரசகரும மொழியாகவும், இந்தியாவின் அரசகரும மொழிகளுள் ஒன்றாகவும் விளங்குகிறது.</p>
<p>اردو ہندوآریائی زبانوں کی ہندويورپی شاخ کی ایک زبان ہے جو تيرھويں صدی ميں بر صغير ميں پيدا ہوئی ـ اردو پاکستان کی سرکاری زبان ہے اور بھارت کی سرکاری زبانوں ميں سے ايک ہے۔ اردو بھارت ميں 5 کروڑ اور پاکستان ميں 1 کروڑ لوگوں کی مادری زبان ہے مگر اسے بھارت اور پاکستان کے تقریباً 50 کروڑ لوگ بول اور سمجھ سکتے ھیں ۔ جن میں سے تقریباً 10.5 کروڑ لوگ اسے باقاعدہ بولتے ھیں۔</p>
<h1>بايثون</h1>
-<p>
- <strong>بايثون</strong> لغة برمجة حديثة بسيطة، واضحة، سريعة ، تستخدم أسلوب البرمجة الكائنية (OOP) وقابلة للتطوير بالإضافة إلى أنها مجانية و مفتوحة المصدر. صُنفت بالأساس كلغة تفسيرية ، بايثون مصممة أصلاً للأداء بعض المهام الخاصة أو المحدودة. إلا أنه يمكن استخدامها بايثون لإنجاز المشاريع الضخمه كأي لغة برمجية أخرى، غالباً ما يُنصح المبتدئين في ميدان البرمجة بتعلم هذه اللغة لأنها من بين أسهل اللغات البرمجية تعلماً.</p>
+<p><strong>بايثون</strong> لغة برمجة حديثة بسيطة، واضحة، سريعة ، تستخدم أسلوب البرمجة الكائنية (OOP) وقابلة للتطوير بالإضافة إلى أنها مجانية و مفتوحة المصدر. صُنفت بالأساس كلغة تفسيرية ، بايثون مصممة أصلاً للأداء بعض المهام الخاصة أو المحدودة. إلا أنه يمكن استخدامها بايثون لإنجاز المشاريع الضخمه كأي لغة برمجية أخرى، غالباً ما يُنصح المبتدئين في ميدان البرمجة بتعلم هذه اللغة لأنها من بين أسهل اللغات البرمجية تعلماً.</p>
<p>|||||||||||||||||||||||||||||THIS SHOULD BE RTL|||||||||||||||||||||||||</p>
<p>(نشأت بايثون في مركز CWI (مركز العلوم والحاسب الآلي) بأمستردام على يد جويدو فان رُزوم. تم تطويرها بلغة C. أطلق فان رُزوم اسم "بايثون" على لغته تعبيرًا عن إعجابه بفِرقَة مسرحية هزلية شهيرة من بريطانيا، كانت تطلق على نفسها اسم مونتي بايثون Monty Python.</p>
<p>تتميز بايثون بمجتمعها النشط ، كما أن لها الكثير من المكتبات البرمجية ذات الأغراض الخاصة والتي برمجها أشخاص من مجتمع هذه اللغة ، مثلاً مكتبة PyGame التي توفر مجموعه من الوظائف من اجل برمجة الالعاب. ويمكن لبايثون التعامل مع العديد من أنواع قواعد البيانات مثل MySQL وغيره.</p>
@@ -35,12 +32,8 @@ else:
</code></pre>
<h2>وصلات خارجية</h2>
<ul>
- <li>
- <a href="http://www.python.org">الموقع الرسمي للغة بايثون</a>
- </li>
+<li><a href="http://www.python.org">الموقع الرسمي للغة بايثون</a></li>
</ul>
<p> بذرة حاس </p>
-<p>
- <strong>Недвард «Нед» Фландерс</strong> (Nedward «Ned» Flanders) — вымышленный персонаж мультсериала «[Симпсоны][]», озвученный Гарри Ширером. Он и его семья живут по соседству от семьи Симпсонов. Набожный христианин, Нед является одним из столпов морали Спрингфилда. В эпизоде «Alone Again, Natura-Diddily» он овдовел, его жена Мод погибла в результате несчастного случая. </p>
-<p>Нед был одним из первых персонажей в мультсериале, который не был членом семьи Симпсонов. Начиная с первых серий, он регулярно появляется в «Симпсонах». Считается, что Нед Фландерс был назван в честь улицы <em>Northeast Flanders St.</em> в <a href="http://www.portland.gov">Портленде</a>, Орегон, родном городе создателя мультсериала Мэтта Грейнинга]]. Надпись на указателе улицы <em>NE Flanders St.</em> хулиганы часто исправляли на <em>NED Flanders St.</em>
-</p> \ No newline at end of file
+<p><strong>Недвард «Нед» Фландерс</strong> (Nedward «Ned» Flanders) — вымышленный персонаж мультсериала «[Симпсоны][]», озвученный Гарри Ширером. Он и его семья живут по соседству от семьи Симпсонов. Набожный христианин, Нед является одним из столпов морали Спрингфилда. В эпизоде «Alone Again, Natura-Diddily» он овдовел, его жена Мод погибла в результате несчастного случая. </p>
+<p>Нед был одним из первых персонажей в мультсериале, который не был членом семьи Симпсонов. Начиная с первых серий, он регулярно появляется в «Симпсонах». Считается, что Нед Фландерс был назван в честь улицы <em>Northeast Flanders St.</em> в <a href="http://www.portland.gov">Портленде</a>, Орегон, родном городе создателя мультсериала Мэтта Грейнинга]]. Надпись на указателе улицы <em>NE Flanders St.</em> хулиганы часто исправляли на <em>NED Flanders St.</em></p> \ No newline at end of file
diff --git a/tests/misc/blank-block-quote.html b/tests/misc/blank-block-quote.html
index eae7ae0..23df17a 100644
--- a/tests/misc/blank-block-quote.html
+++ b/tests/misc/blank-block-quote.html
@@ -1,3 +1,3 @@
<p>aaaaaaaaaaa</p>
<blockquote />
-<p>bbbbbbbbbbb</p>
+<p>bbbbbbbbbbb</p> \ No newline at end of file
diff --git a/tests/misc/blockquote-below-paragraph.html b/tests/misc/blockquote-below-paragraph.html
index 5757a9a..c6f622e 100644
--- a/tests/misc/blockquote-below-paragraph.html
+++ b/tests/misc/blockquote-below-paragraph.html
@@ -1,6 +1,5 @@
<p>Paragraph</p>
<blockquote>
- <p>Block quote
+<p>Block quote
Yep</p>
-</blockquote>
-
+</blockquote> \ No newline at end of file
diff --git a/tests/misc/blockquote-hr.html b/tests/misc/blockquote-hr.html
index e437766..61c1a3c 100644
--- a/tests/misc/blockquote-hr.html
+++ b/tests/misc/blockquote-hr.html
@@ -13,4 +13,4 @@ With multiple lines.
Even a lazy line.</p>
<hr />
<p>The last line.</p>
-</blockquote>
+</blockquote> \ No newline at end of file
diff --git a/tests/misc/blockquote.html b/tests/misc/blockquote.html
index 7268578..b52e92d 100644
--- a/tests/misc/blockquote.html
+++ b/tests/misc/blockquote.html
@@ -1,13 +1,13 @@
<blockquote>
- <p>blockquote with no whitespace before <code>&gt;</code>.</p>
+<p>blockquote with no whitespace before <code>&gt;</code>.</p>
</blockquote>
<p>foo</p>
<blockquote>
- <p>blockquote with one space before the <code>&gt;</code>.</p>
+<p>blockquote with one space before the <code>&gt;</code>.</p>
</blockquote>
<p>bar</p>
<blockquote>
- <p>blockquote with 2 spaces.</p>
+<p>blockquote with 2 spaces.</p>
</blockquote>
<p>baz</p>
<p> &gt; this has three spaces so its a paragraph.</p>
@@ -15,8 +15,8 @@
<pre><code>&gt; this one had four so it's a code block.
</code></pre>
<blockquote>
- <blockquote>
- <p>this nested blockquote has 0 on level one and 3 (one after the first <code>&gt;</code> + 2 more) on level 2.</p>
- </blockquote>
- <p> &gt; and this has 4 on level 2 - another code block.</p>
+<blockquote>
+<p>this nested blockquote has 0 on level one and 3 (one after the first <code>&gt;</code> + 2 more) on level 2.</p>
+</blockquote>
+<p> &gt; and this has 4 on level 2 - another code block.</p>
</blockquote> \ No newline at end of file
diff --git a/tests/misc/bold_links.html b/tests/misc/bold_links.html
index 55dcaa3..5a78e57 100644
--- a/tests/misc/bold_links.html
+++ b/tests/misc/bold_links.html
@@ -1,4 +1 @@
-<p>
-<strong>bold <a href="http://example.com">link</a>
-</strong>
-</p> \ No newline at end of file
+<p><strong>bold <a href="http://example.com">link</a></strong></p> \ No newline at end of file
diff --git a/tests/misc/div.html b/tests/misc/div.html
index acd8eaf..0ba9e5b 100644
--- a/tests/misc/div.html
+++ b/tests/misc/div.html
@@ -1,6 +1,4 @@
<div id="sidebar">
-<p>
- <em>foo</em>
-</p>
+<p> <em>foo</em></p>
</div> \ No newline at end of file
diff --git a/tests/misc/email.html b/tests/misc/email.html
index d3bf521..0d033bb 100644
--- a/tests/misc/email.html
+++ b/tests/misc/email.html
@@ -1,3 +1,2 @@
<p>asdfasdfadsfasd <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#121;&#117;&#114;&#105;&#64;&#102;&#114;&#101;&#101;&#119;&#105;&#115;&#100;&#111;&#109;&#46;&#111;&#114;&#103;">&#121;&#117;&#114;&#105;&#64;&#102;&#114;&#101;&#101;&#119;&#105;&#115;&#100;&#111;&#109;&#46;&#111;&#114;&#103;</a> or you can say
-instead <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#121;&#117;&#114;&#105;&#64;&#102;&#114;&#101;&#101;&#119;&#105;&#115;&#100;&#111;&#109;&#46;&#111;&#114;&#103;">&#121;&#117;&#114;&#105;&#64;&#102;&#114;&#101;&#101;&#119;&#105;&#115;&#100;&#111;&#109;&#46;&#111;&#114;&#103;</a>
-</p>
+instead <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#121;&#117;&#114;&#105;&#64;&#102;&#114;&#101;&#101;&#119;&#105;&#115;&#100;&#111;&#109;&#46;&#111;&#114;&#103;">&#121;&#117;&#114;&#105;&#64;&#102;&#114;&#101;&#101;&#119;&#105;&#115;&#100;&#111;&#109;&#46;&#111;&#114;&#103;</a></p> \ No newline at end of file
diff --git a/tests/misc/funky-list.html b/tests/misc/funky-list.html
index f489d56..313db8f 100644
--- a/tests/misc/funky-list.html
+++ b/tests/misc/funky-list.html
@@ -1,12 +1,11 @@
<ol>
- <li>this starts a list <em>with</em> numbers</li>
- <li>this will show as number "2"</li>
- <li>this will show as number "3."</li>
- <li>any number, +, -, or * will keep the list going.</li>
+<li>this starts a list <em>with</em> numbers</li>
+<li>this will show as number "2"</li>
+<li>this will show as number "3."</li>
+<li>any number, +, -, or * will keep the list going.</li>
</ol>
<p>aaaaaaaaaaaaaaa</p>
<ul>
- <li>now a normal list</li>
- <li>and more</li>
-</ul>
-
+<li>now a normal list</li>
+<li>and more</li>
+</ul> \ No newline at end of file
diff --git a/tests/misc/headers.html b/tests/misc/headers.html
index fb553ff..2a737e2 100644
--- a/tests/misc/headers.html
+++ b/tests/misc/headers.html
@@ -2,11 +2,9 @@
<p>Line 2
Line 3</p>
<h1>[Markdown][5]</h1>
-<h1>
- <a href="http://some.link.com/">Markdown</a>
-</h1>
+<h1><a href="http://some.link.com/">Markdown</a></h1>
<h1>[5]: http://foo.com/</h1>
<h1>Issue #1: Markdown</h1>
<p>Text</p>
<h1>Header</h1>
-<p>Some other text</p>
+<p>Some other text</p> \ No newline at end of file
diff --git a/tests/misc/html-comments.html b/tests/misc/html-comments.html
index ac08082..7b36246 100644
--- a/tests/misc/html-comments.html
+++ b/tests/misc/html-comments.html
@@ -1,2 +1,2 @@
<p>Here is HTML <!-- **comment** -->
-and once more <p><!--comment--></p></p>
+and once more <p><!--comment--></p></p> \ No newline at end of file
diff --git a/tests/misc/html.html b/tests/misc/html.html
index 2f27a3e..84fe763 100644
--- a/tests/misc/html.html
+++ b/tests/misc/html.html
@@ -1,9 +1,8 @@
<h1>Block level html</h1>
-<p>Some inline <b>stuff<b>.<br />
-</p>
+
+<p>Some inline <b>stuff<b>.<br /></p>
<p>Now some <arbitrary>arbitrary tags</arbitrary>.</p>
<div>More block level html.</div>
+
<p>And of course <script>blah</script>.</p>
-<p>
- <a href="script&gt;stuff&lt;/script">this <script>link</a>
-</p>
+<p><a href="script&gt;stuff&lt;/script">this <script>link</a></p> \ No newline at end of file
diff --git a/tests/misc/image-2.html b/tests/misc/image-2.html
index bb649e7..9343d29 100644
--- a/tests/misc/image-2.html
+++ b/tests/misc/image-2.html
@@ -1,10 +1,2 @@
-<p>
-<a href="http://src.com/">
-<em>link!</em>
-</a>
-</p>
-<p>
-<em>
-<a href="http://www.freewisdom.org">link</a>
-</em>
-</p> \ No newline at end of file
+<p><a href="http://src.com/"><em>link!</em></a></p>
+<p><em><a href="http://www.freewisdom.org">link</a></em></p> \ No newline at end of file
diff --git a/tests/misc/image.html b/tests/misc/image.html
index e87015c..16be2d5 100644
--- a/tests/misc/image.html
+++ b/tests/misc/image.html
@@ -1,3 +1 @@
-<p>
-<img alt="Poster" src="http://humane_man.jpg" title="The most humane man." />
-</p>
+<p><img alt="Poster" src="http://humane_man.jpg" title="The most humane man." /></p> \ No newline at end of file
diff --git a/tests/misc/image_in_links.html b/tests/misc/image_in_links.html
index d3edba9..5a8cdc3 100644
--- a/tests/misc/image_in_links.html
+++ b/tests/misc/image_in_links.html
@@ -1,5 +1 @@
-<p>
-<a href="path/to/image.png">
-<img alt="altname" src="path/to/img_thumb.png" />
-</a>
-</p>
+<p><a href="path/to/image.png"><img alt="altname" src="path/to/img_thumb.png" /></a></p> \ No newline at end of file
diff --git a/tests/misc/inside_html.html b/tests/misc/inside_html.html
index 673beac..6343dd9 100644
--- a/tests/misc/inside_html.html
+++ b/tests/misc/inside_html.html
@@ -1 +1 @@
-<p><a href="stuff"> <strong>ok</strong>? </a></p>
+<p><a href="stuff"> <strong>ok</strong>? </a></p> \ No newline at end of file
diff --git a/tests/misc/japanese.html b/tests/misc/japanese.html
index ae1df5d..930891b 100644
--- a/tests/misc/japanese.html
+++ b/tests/misc/japanese.html
@@ -1,13 +1,11 @@
<h1>パイソン (Python)</h1>
-<p>
- <strong>Python</strong>(パイソン)は、<a href="http://en.wikipedia.org/wiki/Guido_van_Rossum">Guido van Rossum</a> によって作られたオープンソースのオブジェクト指向スクリプト言語。<a href="http://ja.wikipedia.org/wiki/Perl">Perl</a>とともに欧米で広く普及している。イギリスのテレビ局 BBC が製作したコメディ番組『空飛ぶモンティ・パイソン』にちなんで名付けられた。 (Pythonには、爬虫類のニシキヘビの意味があり、Python言語のマスコットやアイコンとして使われることがある。)</p>
+<p><strong>Python</strong>(パイソン)は、<a href="http://en.wikipedia.org/wiki/Guido_van_Rossum">Guido van Rossum</a> によって作られたオープンソースのオブジェクト指向スクリプト言語。<a href="http://ja.wikipedia.org/wiki/Perl">Perl</a>とともに欧米で広く普及している。イギリスのテレビ局 BBC が製作したコメディ番組『空飛ぶモンティ・パイソン』にちなんで名付けられた。 (Pythonには、爬虫類のニシキヘビの意味があり、Python言語のマスコットやアイコンとして使われることがある。)</p>
<h2>概要</h2>
<p>プログラミング言語 Python は初心者から専門家まで幅広いユーザ層を獲得している。利用目的は汎用で、方向性としてはJavaに近い。ただし、最初からネットワーク利用をメインとして考えられているJavaよりセキュリティについてはやや寛大である。多くのプラットフォームをサポートしており(⇒<a href="#somelink">動作するプラットフォーム</a>)、豊富なライブラリがあることから、産業界でも利用が増えつつある。また、Pythonは純粋なプログラミング言語のほかにも、多くの異なる言語で書かれたモジュールをまとめる糊言語のひとつとして位置づけることができる。実際Pythonは多くの商用アプリケーションでスクリプト言語として採用されている(⇒Pythonを使っている製品あるいはソフトウェアの一覧)。豊富なドキュメントをもち、Unicodeによる文字列操作をサポートしており、日本語処理も標準で可能である。</p>
<p>Python は基本的にインタプリタ上で実行されることを念頭において設計されており、以下のような特徴をもっている:</p>
<ul>
- <li>動的な型付け。</li>
- <li>オブジェクトのメンバに対するアクセスが制限されていない。(属性や専用のメソッドフックを実装することによって制限は可能。)</li>
- <li>モジュール、クラス、オブジェクト等の言語の要素が内部からアクセス可能であり、リフレクションを利用した記述が可能。</li>
+<li>動的な型付け。</li>
+<li>オブジェクトのメンバに対するアクセスが制限されていない。(属性や専用のメソッドフックを実装することによって制限は可能。)</li>
+<li>モジュール、クラス、オブジェクト等の言語の要素が内部からアクセス可能であり、リフレクションを利用した記述が可能。</li>
</ul>
-<p>また、Pythonではインデントによりブロックを指定する構文を採用している(⇒<a href="#jklj">オフサイドルール</a>)。この構文はPythonに慣れたユーザからは称賛をもって受け入れられているが、他の言語のユーザからは批判も多い。このほかにも、大きすぎる実行ファイルや、Javaに比べて遅い処理速度などが欠点として指摘されている。しかし <strong>プロトタイピング</strong> の際にはこれらの点はさして問題とはならないことから、研究開発部門では頻繁に利用されている。</p>
-
+<p>また、Pythonではインデントによりブロックを指定する構文を採用している(⇒<a href="#jklj">オフサイドルール</a>)。この構文はPythonに慣れたユーザからは称賛をもって受け入れられているが、他の言語のユーザからは批判も多い。このほかにも、大きすぎる実行ファイルや、Javaに比べて遅い処理速度などが欠点として指摘されている。しかし <strong>プロトタイピング</strong> の際にはこれらの点はさして問題とはならないことから、研究開発部門では頻繁に利用されている。</p> \ No newline at end of file
diff --git a/tests/misc/link-with-parenthesis.html b/tests/misc/link-with-parenthesis.html
index 5f6d1b1..a56ed8d 100644
--- a/tests/misc/link-with-parenthesis.html
+++ b/tests/misc/link-with-parenthesis.html
@@ -1,3 +1 @@
-<p>
- <a href="http://en.wikipedia.org/wiki/ZIP_(file_format)" title="ZIP (file format) - Wikipedia, the free encyclopedia">ZIP archives</a>
-</p>
+<p><a href="http://en.wikipedia.org/wiki/ZIP_(file_format)" title="ZIP (file format) - Wikipedia, the free encyclopedia">ZIP archives</a></p> \ No newline at end of file
diff --git a/tests/misc/markup-inside-p.html b/tests/misc/markup-inside-p.html
index 28592bc..1b6b420 100644
--- a/tests/misc/markup-inside-p.html
+++ b/tests/misc/markup-inside-p.html
@@ -3,15 +3,19 @@
_foo_
</p>
+
<p>
_foo_
</p>
+
<p>_foo_</p>
+
<p>
_foo_
</p>
+
<p>
_foo_
-</p>
+</p> \ No newline at end of file
diff --git a/tests/misc/mismatched-tags.html b/tests/misc/mismatched-tags.html
index cab7b4e..8472043 100644
--- a/tests/misc/mismatched-tags.html
+++ b/tests/misc/mismatched-tags.html
@@ -5,10 +5,7 @@
<p>and a bit more</p>
<p>And this output</p>
-<p>
- <em>Compatible with PHP Markdown Extra 1.2.2 and Markdown.pl1.0.2b8:</em>
-</p>
+<p> <em>Compatible with PHP Markdown Extra 1.2.2 and Markdown.pl1.0.2b8:</em></p>
<!-- comment --><p><div>text</div><br /></p><br />
-<p>Should be in p</p>
-
+<p>Should be in p</p> \ No newline at end of file
diff --git a/tests/misc/missing-link-def.html b/tests/misc/missing-link-def.html
index bab2a75..e04b5eb 100644
--- a/tests/misc/missing-link-def.html
+++ b/tests/misc/missing-link-def.html
@@ -1,3 +1 @@
-<p>This is a [missing link][empty] and a <a href="http://example.com">valid</a> and [missing][again].</p>
-
-
+<p>This is a [missing link][empty] and a <a href="http://example.com">valid</a> and [missing][again].</p> \ No newline at end of file
diff --git a/tests/misc/more_comments.html b/tests/misc/more_comments.html
index 37436c5..97074d5 100644
--- a/tests/misc/more_comments.html
+++ b/tests/misc/more_comments.html
@@ -4,4 +4,4 @@
<asd!@asdfd.com>
-<p>Test</p>
+<p>Test</p> \ No newline at end of file
diff --git a/tests/misc/multi-test.html b/tests/misc/multi-test.html
index 552852d..a7e0487 100644
--- a/tests/misc/multi-test.html
+++ b/tests/misc/multi-test.html
@@ -1,14 +1,13 @@
<h1 id="inthebeginning">Header </h1>
<p>Now, let's try something <em class="special">inline</em>, to see if it works</p>
-<p>Blah blah blah <a href="http://www.slashdot.org">http://www.slashdot.org</a>
-</p>
+<p>Blah blah blah <a href="http://www.slashdot.org">http://www.slashdot.org</a></p>
<ul>
- <li>Basic list</li>
- <li>Basic list 2</li>
+<li>Basic list</li>
+<li>Basic list 2</li>
</ul>
<p>addss</p>
<ul>
- <li>Lazy list</li>
+<li>Lazy list</li>
</ul>
<p>An <a href="http://example.com" title="Title">example</a> (oops)</p>
<p>Now, let's use a footnote[^1]. Not bad, eh?
diff --git a/tests/misc/nested-patterns.html b/tests/misc/nested-patterns.html
index f41bb34..b90d46d 100644
--- a/tests/misc/nested-patterns.html
+++ b/tests/misc/nested-patterns.html
@@ -1,38 +1,7 @@
-<p>
- <strong>
- <em>
- <a href="http://www.freewisdom.org">link</a>
- </em>
- </strong>
- <strong>
- <em>
- <a href="http://www.freewisdom.org">link</a>
- </em>
- </strong>
- <strong>
- <a href="http://www.freewisdom.org">
- <em>link</em>
- </a>
- </strong>
- <strong>
- <a href="http://www.freewisdom.org">
- <em>link</em>
- </a>
- </strong>
- <strong>
- <a href="http://www.freewisdom.org">
- <em>link</em>
- </a>
- </strong>
- <strong>
- <a href="http://www.freewisdom.org">
- <em>link</em>
- </a>
- </strong>
- <a href="http://www.freewisdom.org">
- <strong>
- <em>link</em>
- </strong>
- </a>
-</p>
-
+<p><strong><em><a href="http://www.freewisdom.org">link</a></em></strong>
+<strong><em><a href="http://www.freewisdom.org">link</a></em></strong>
+<strong><a href="http://www.freewisdom.org"><em>link</em></a></strong>
+<strong><a href="http://www.freewisdom.org"><em>link</em></a></strong>
+<strong><a href="http://www.freewisdom.org"><em>link</em></a></strong>
+<strong><a href="http://www.freewisdom.org"><em>link</em></a></strong>
+<a href="http://www.freewisdom.org"><strong><em>link</em></strong></a></p> \ No newline at end of file
diff --git a/tests/misc/normalize.html b/tests/misc/normalize.html
index a6daf8f..8d05375 100644
--- a/tests/misc/normalize.html
+++ b/tests/misc/normalize.html
@@ -1,3 +1 @@
-<p>
-<a href="http://www.stuff.com/q?x=1&amp;y=2&lt;&gt;">Link</a>
-</p> \ No newline at end of file
+<p><a href="http://www.stuff.com/q?x=1&amp;y=2&lt;&gt;">Link</a></p> \ No newline at end of file
diff --git a/tests/misc/numeric-entity.html b/tests/misc/numeric-entity.html
index 720a601..3ad3b7a 100644
--- a/tests/misc/numeric-entity.html
+++ b/tests/misc/numeric-entity.html
@@ -1,4 +1,2 @@
-<p>
-<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#117;&#115;&#101;&#114;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">&#117;&#115;&#101;&#114;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;</a>
-</p>
-<p>This is an entity: &#234; </p>
+<p><a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#117;&#115;&#101;&#114;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">&#117;&#115;&#101;&#114;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;</a></p>
+<p>This is an entity: &#234; </p> \ No newline at end of file
diff --git a/tests/misc/php.html b/tests/misc/php.html
index 6d91404..875457c 100644
--- a/tests/misc/php.html
+++ b/tests/misc/php.html
@@ -2,11 +2,10 @@
"http://www.w3.org/TR/html4/strict.dtd">
<p><b>This should have a p tag</b></p>
-
<!--This is a comment -->
<div>This shouldn't</div>
<?php echo "block_level";?>
-<p> &lt;?php echo "not_block_level";?&gt;</p>
+<p> &lt;?php echo "not_block_level";?&gt;</p> \ No newline at end of file
diff --git a/tests/misc/russian.html b/tests/misc/russian.html
index 06efb99..57c9688 100644
--- a/tests/misc/russian.html
+++ b/tests/misc/russian.html
@@ -1,9 +1,6 @@
<h1>Недвард «Нед» Фландерс</h1>
-<p>
- <strong>Недвард «Нед» Фландерс</strong> (Nedward «Ned» Flanders) — вымышленный персонаж мультсериала «[Симпсоны][]», озвученный Гарри Ширером. Он и его семья живут по соседству от семьи Симпсонов. Набожный христианин, Нед является одним из столпов морали Спрингфилда. В эпизоде «Alone Again, Natura-Diddily» он овдовел, его жена Мод погибла в результате несчастного случая. </p>
-<p>Нед был одним из первых персонажей в мультсериале, который не был членом семьи Симпсонов. Начиная с первых серий, он регулярно появляется в «Симпсонах». Считается, что Нед Фландерс был назван в честь улицы <em>Northeast Flanders St.</em> в <a href="http://www.portland.gov">Портленде</a>, Орегон, родном городе создателя мультсериала Мэтта Грейнинга]]. Надпись на указателе улицы <em>NE Flanders St.</em> хулиганы часто исправляли на <em>NED Flanders St.</em>
-</p>
+<p><strong>Недвард «Нед» Фландерс</strong> (Nedward «Ned» Flanders) — вымышленный персонаж мультсериала «[Симпсоны][]», озвученный Гарри Ширером. Он и его семья живут по соседству от семьи Симпсонов. Набожный христианин, Нед является одним из столпов морали Спрингфилда. В эпизоде «Alone Again, Natura-Diddily» он овдовел, его жена Мод погибла в результате несчастного случая. </p>
+<p>Нед был одним из первых персонажей в мультсериале, который не был членом семьи Симпсонов. Начиная с первых серий, он регулярно появляется в «Симпсонах». Считается, что Нед Фландерс был назван в честь улицы <em>Northeast Flanders St.</em> в <a href="http://www.portland.gov">Портленде</a>, Орегон, родном городе создателя мультсериала Мэтта Грейнинга]]. Надпись на указателе улицы <em>NE Flanders St.</em> хулиганы часто исправляли на <em>NED Flanders St.</em></p>
<h2>Биография</h2>
<p>Нед Фландерс родился в Нью-Йорке, его родители были битниками. Его отец в точности похож на взрослого Неда, только он носил козлиную бородку. Их отказ от воспитания Неда и то, что они, в общем-то, были плохими родителями («мы ничего в этом не понимаем и не знаем как начать») привело к тому, что Нед превратился в ужасного сорванца. В конце концов они согласились на экспериментальную восьмимесячную шлепологическую терапию Миннесотского Университета (воспоминания Неда в эпизоде «Hurricane Neddy»), которая научила его подавлять чувство злости. Побочным эфектом терапии стало то, что Нед стал ненавидеть своих родителей (это одна из двух вещей которые ненавидит Фландерс, вторая — отделения почты, чьи длинные очереди, суета и угрюмый персонал раздражают его).</p>
-<p>У Неда есть странная привычка добавлять «дидли», «дадли» и другие бессмысленные слова в свои фразы при разговоре, например: «Hi-diddly-ho, neighbor-ino» («Приветик, соседушка»). Это результат сублимации его злости, вызванной сдерживанием гнева, который не имеет никакого другого выхода.</p>
-
+<p>У Неда есть странная привычка добавлять «дидли», «дадли» и другие бессмысленные слова в свои фразы при разговоре, например: «Hi-diddly-ho, neighbor-ino» («Приветик, соседушка»). Это результат сублимации его злости, вызванной сдерживанием гнева, который не имеет никакого другого выхода.</p> \ No newline at end of file
diff --git a/tests/misc/some-test.html b/tests/misc/some-test.html
index e43cb94..9f26092 100644
--- a/tests/misc/some-test.html
+++ b/tests/misc/some-test.html
@@ -1,63 +1,63 @@
<hr />
<ul>
- <li>
- <p>as if</p>
- </li>
- <li>
- <p>as if2</p>
- </li>
+<li>
+<p>as if</p>
+</li>
+<li>
+<p>as if2</p>
+</li>
</ul>
<hr />
<ul>
- <li>
- <p>as if</p>
- </li>
- <li>
- <p>as if2</p>
- </li>
+<li>
+<p>as if</p>
+</li>
+<li>
+<p>as if2</p>
+</li>
</ul>
<hr />
<ul>
- <li>as if
+<li>as if
non_code</li>
- <li>as if2</li>
+<li>as if2</li>
</ul>
<p>Markdown</p>
<ul>
- <li>
- <p>Python
+<li>
+<p>Python
is ok</p>
- <ul>
- <li>Therefore i am</li>
- </ul>
- </li>
- <li>
- <p>Perl sucks
+<ul>
+<li>Therefore i am</li>
+</ul>
+</li>
+<li>
+<p>Perl sucks
big time</p>
- <ul>
- <li>But that's
+<ul>
+<li>But that's
ok</li>
- </ul>
- </li>
- <li>
- <p>Python is
+</ul>
+</li>
+<li>
+<p>Python is
ok
Or not?</p>
- </li>
+</li>
</ul>
<p>Here is a normal paragraph</p>
<ol>
- <li>
- <p>Another list
+<li>
+<p>Another list
with a bunch of items</p>
- </li>
- <li>
- <p>Mostly fruits</p>
- <ol>
- <li>Apple</li>
- <li>Pare</li>
- </ol>
- </li>
+</li>
+<li>
+<p>Mostly fruits</p>
+<ol>
+<li>Apple</li>
+<li>Pare</li>
+</ol>
+</li>
</ol>
<p>asdfasdfasd</p>
<pre><code># This is a code example
diff --git a/tests/misc/strong-with-underscores.html b/tests/misc/strong-with-underscores.html
index cab3863..08e6744 100644
--- a/tests/misc/strong-with-underscores.html
+++ b/tests/misc/strong-with-underscores.html
@@ -1,3 +1 @@
-<p>
-<strong>this_is_strong</strong>
-</p> \ No newline at end of file
+<p><strong>this_is_strong</strong></p> \ No newline at end of file
diff --git a/tests/misc/stronintags.html b/tests/misc/stronintags.html
index 48e4364..cf18bd0 100644
--- a/tests/misc/stronintags.html
+++ b/tests/misc/stronintags.html
@@ -1,10 +1,4 @@
-<p>this is a <a href="http://example.com/">
-<strong>test</strong>
-</a>
-</p>
-<p>this is a second <strong>
-<a href="http://example.com">test</a>
-</strong>
-</p>
+<p>this is a <a href="http://example.com/"><strong>test</strong></a></p>
+<p>this is a second <strong><a href="http://example.com">test</a></strong></p>
<p>reference <strong>[test][]</strong>
reference [<strong>test</strong>][]</p> \ No newline at end of file
diff --git a/tests/misc/two-spaces.html b/tests/misc/two-spaces.html
index fe765de..b0e872c 100644
--- a/tests/misc/two-spaces.html
+++ b/tests/misc/two-spaces.html
@@ -3,14 +3,12 @@ but this line has three <br />and this is the second from last line
in this test message</p>
<ul>
<li>
-<p>This list item has two spaces.<br />
-</p>
+<p>This list item has two spaces.<br /></p>
</li>
<li>
<p>This has none.
This line has three. <br />This line has none.
-And this line two.<br />
-</p>
+And this line two.<br /></p>
<p>This line has none.</p>
</li>
<li>
diff --git a/tests/misc/uche.html b/tests/misc/uche.html
index ddd569d..99531ce 100644
--- a/tests/misc/uche.html
+++ b/tests/misc/uche.html
@@ -1,14 +1,4 @@
-<p>
-<img alt="asif" src="http://fourthought.com/images/ftlogo.png" title="Fourthought logo" />
-</p>
-<p>
-<a href="http://fourthought.com/">
-<img alt="" src="http://fourthought.com/images/ftlogo.png" style="float: left; margin: 10px; border:
-none;" title="Fourthought logo" />
-</a>
-</p>
-<p>
-<a href="http://link.com/">
-<img alt="text" src="x" />
-</a>
-</p>
+<p><img alt="asif" src="http://fourthought.com/images/ftlogo.png" title="Fourthought logo" /></p>
+<p><a href="http://fourthought.com/"><img alt="" src="http://fourthought.com/images/ftlogo.png" style="float: left; margin: 10px; border:
+none;" title="Fourthought logo" /></a></p>
+<p><a href="http://link.com/"><img alt="text" src="x" /></a></p> \ No newline at end of file
diff --git a/tests/misc/underscores.html b/tests/misc/underscores.html
index fa9e642..54bd9f9 100644
--- a/tests/misc/underscores.html
+++ b/tests/misc/underscores.html
@@ -3,7 +3,4 @@
<p>Ok, at least <em>this</em> should work.</p>
<p>THIS<strong>SHOULD</strong>STAY</p>
<p>Here is some <strong>strong</strong> stuff.</p>
-<p>THIS<strong>
- <em>SHOULD</em>
- </strong>STAY?</p>
-
+<p>THIS<strong><em>SHOULD</em></strong>STAY?</p> \ No newline at end of file
diff --git a/tests/misc/url_spaces.html b/tests/misc/url_spaces.html
index f81f55e..ebacb75 100644
--- a/tests/misc/url_spaces.html
+++ b/tests/misc/url_spaces.html
@@ -1,6 +1,2 @@
-<p>
-<a href="http://wikipedia.org/wiki/Dawn of War">Dawn of War</a>
-</p>
-<p>
-<a href="http://wikipedia.org/wiki/Dawn of War" title="Dawn of War">Dawn of War</a>
-</p> \ No newline at end of file
+<p><a href="http://wikipedia.org/wiki/Dawn of War">Dawn of War</a></p>
+<p><a href="http://wikipedia.org/wiki/Dawn of War" title="Dawn of War">Dawn of War</a></p> \ No newline at end of file
diff --git a/tests/safe_mode/script_tags.html b/tests/safe_mode/script_tags.html
index 940329f..df63ffc 100644
--- a/tests/safe_mode/script_tags.html
+++ b/tests/safe_mode/script_tags.html
@@ -9,8 +9,7 @@ alert(&quot;Hello world!&quot;)
&lt;/script&gt;</p>
<p>Now with some weirdness</p>
-<p>
-<code>&lt;script &lt;!--
+<p><code>&lt;script &lt;!--
alert("Hello world!")
&lt;/script &lt;&gt;</code> `</p>
<p>Try another way.</p>
@@ -26,4 +25,4 @@ alert(&quot;Hello world!&quot;)
&lt;/script &lt;&gt;
-</p>
+</p> \ No newline at end of file
diff --git a/tests/safe_mode/unsafe_urls.html b/tests/safe_mode/unsafe_urls.html
index 6dabe64..e617f35 100644
--- a/tests/safe_mode/unsafe_urls.html
+++ b/tests/safe_mode/unsafe_urls.html
@@ -1,5 +1,5 @@
<p>These links should be unsafe and not allowed in safe_mode</p>
-<p>
+<p><a href="">link</a>
<a href="">link</a>
<a href="">link</a>
<a href="">link</a>
@@ -9,18 +9,12 @@
<a href="">link</a>
<a href="">link</a>
<a href="">link</a>
-<a href="">link</a>
-<a href="">link</a>
-</p>
-<p>
-<img alt="img" src="" />
+<a href="">link</a></p>
+<p><img alt="img" src="" />
<a href="">ref</a>
-<img alt="imgref" src="" />
-</p>
+<img alt="imgref" src="" /></p>
<p>These should work regardless:</p>
-<p>
-<a href="relative/url.html">relative</a>
+<p><a href="relative/url.html">relative</a>
<a href="mailto:foo@bar.com">email</a>
<a href="news:some.news.group.com">news scheme</a>
-<a href="http://example.com">http link</a>
-</p>
+<a href="http://example.com">http link</a></p> \ No newline at end of file