Markdown is Hypertext.
Inspirational, fast, reversible, extendable, and filterable.
ॐ
>>> import hypermark
>>> content = "# fuck yea\nhttp://github.com"
>>> d = hypermark.text(content)
'<HyperText 7c7706acb8>'
>>> d.links
['http://github.com']
>>> d.hash
u'03a392ef91826a3506fcc54a4e1fa7b022688ec42bc4d53b4c36a8b6f8058606'
>>> print(d.html)
<h1>fuck yea</h1>
<p><a href="http://github.com">http://github.com</a></p>
>>> print(hypermark.html('<h1>test h1</h1>'))
# test h1
>>> print(d.filter('bleach').html)
<h1>fuck yea</h1>
<p><a href="http://github.com">http://github.com</a></p>
>>> print(d.filter('transpose_headers', levels=1).html)
<h2>fuck yea</h2>
<p><a href="http://github.com">http://github.com</a></p>
>>> print(d.filter('anchors').html)
<h1 id="toc-1">fuck yea</h1>
<p><a href="http://github.com">http://github.com</a></p>
Feature ideas:
- link extraction
- diff generation
- sha generation
- md->html, html->md
- header transposing
- stripping?
- targets for headers
This could, potentially, contain a lot of the basic functionality of wikis.org itself — would help explain the core concepts to the world, perhaps.