aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorWaylan Limberg <waylan@gmail.com>2012-01-24 07:57:58 -0500
committerWaylan Limberg <waylan@gmail.com>2012-01-24 07:57:58 -0500
commita9cd895467b3caa08d585458fdcbcc5525356493 (patch)
tree2d99fb25c551217a6e59698f193b649ebdca65b8 /docs
parentacd09498fbd2b13e65038c96a118fd859a6df235 (diff)
downloadmarkdown-a9cd895467b3caa08d585458fdcbcc5525356493.tar.gz
markdown-a9cd895467b3caa08d585458fdcbcc5525356493.tar.bz2
markdown-a9cd895467b3caa08d585458fdcbcc5525356493.zip
Fixes #64. Added sane_list extension.
This is an extension which alters the behavior of lists to be less surprising. If turned out to be rather simple to code. I'm surprised no one had written it yet. I should note that this extension does not generate separate lists if different unordered list markers are used (`*` verses `-` verses `+`) The way the parser works that would be a little more tricky.
Diffstat (limited to 'docs')
-rw-r--r--docs/extensions/index.md1
-rw-r--r--docs/extensions/sane_lists.md75
2 files changed, 76 insertions, 0 deletions
diff --git a/docs/extensions/index.md b/docs/extensions/index.md
index 7ab2414..82f00a4 100644
--- a/docs/extensions/index.md
+++ b/docs/extensions/index.md
@@ -40,6 +40,7 @@ available to you.
* [Meta-Data](meta_data.html)
* [New Line to Break](nl2br.html)
* [RSS](rss.html)
+* [Sane Lists](sane_lists.html)
* [Table of Contents](toc.html)
* [WikiLinks](wikilinks.html)
diff --git a/docs/extensions/sane_lists.md b/docs/extensions/sane_lists.md
new file mode 100644
index 0000000..b1c1d06
--- /dev/null
+++ b/docs/extensions/sane_lists.md
@@ -0,0 +1,75 @@
+Sane Lists
+----------
+
+Summary
+-------
+
+The Sane Lists Extension alters the behavior of the Markdown List syntax
+to be less surprising.
+
+This extension is included in the standard Markdown library.
+
+Syntax
+------
+
+Sane Lists do not allow the mixing of list types. In other words, an ordered
+list will not continue when an unordered list item is encountered and
+vice versa. For example:
+
+ 1. Ordered item 1
+ 2. Ordered item 2
+
+ * Unordered item 1
+ * Unordered item 2
+
+will result in the following output:
+
+ <ol>
+ <li>Ordered item 1</li>
+ <li>Ordered item 2</li>
+ </ol>
+
+ <ul>
+ <li>Unordered item 1</li>
+ <li>Unordered item 2</li>
+ </ul>
+
+Whereas the default Markdown behavior would be to generate an unordered list.
+
+Note that, unlike the default Markdown behavior, if a blank line is not
+included between list items, the different list type is ignored completely.
+This corresponds to the behavior of paragraphs. For example:
+
+ A Paragraph.
+ * Not a list item.
+
+ 1. Ordered list item.
+ * Not a separate list item.
+
+With this extension the above will result in the following output:
+
+ <p>A Paragraph.
+ * Not a list item.</p>
+
+ <ol>
+ <li>Ordered list item.
+ * Not a separate list item.</li>
+ </ol>
+
+In all other ways, Sane Lists should behave as normal Markdown lists.
+
+Usage
+-----
+
+From the Python interpreter:
+
+ >>> html = markdown.markdown(text, ['sane_lists'])
+
+To use with other extensions, just add them to the list, like this:
+
+ >>> html = markdown.markdown(text, ['def_list', 'sane_lists'])
+
+The extension can also be called from the command line using Markdown's `-x`
+parameter:
+
+ python -m markdown -x sane_lists source.txt > output.html