python-creole is an open-source (GPL) markup converter in pure Python for: creole2html, html2creole, html2ReSt, html2textile
Project description
about
python-creole is a OpenSource (GPL) Python lib for converting markup:
Existing converters:
creole markup -> html
html -> creole markup
reStructuredText -> html (for clean html code)
html -> reStructuredText markup (only a subset of reSt supported)
html -> textile markup (not completed yet)
python-creole is pure python. No external libs needed.
The creole2html part based on the creole markup parser and emitter from the MoinMoin project by Radomir Dopieralski and Thomas Waldmann.
install
Python packages available on: http://pypi.python.org/pypi/python-creole/
~$ easy_install python-creole
example
creole2html
Convert creole markup to html code:
>>> from creole import creole2html >>> creole2html("This is **creole //markup//**") u'<p>This is <strong>creole <i>markup</i></strong></p>\n'
html2creole
Convert html code back into creole markup:
>>> from creole import html2creole >>> html2creole(u'<p>This is <strong>creole <i>markup</i></strong></p>\n') u'This is **creole //markup//**'
rest2html
Convert ReStructuredText into clean html code (needs docutils):
>>> from creole.rest2html.clean_writer import rest2html >>> rest2html(u"A ReSt link to `PyLucid CMS <http://www.pylucid.org>`_ :)") u'<p>A ReSt link to <a href="http://www.pylucid.org">PyLucid CMS</a> :)</p>\\n'
(more information: rest2html wiki page)
html2rest
Convert html code into ReStructuredText markup:
>>> from creole import html2rest >>> html2rest(u'<p>This is <strong>ReStructuredText</strong> <em>markup</em>!</p>') u'This is **ReStructuredText** *markup*!'
html2textile
Convert html code into textile markup
>>> from creole import html2textile >>> html2textile(u'<p>This is <strong>textile <i>markup</i></strong>!</p>') u'This is *textile __markup__*!'
See also: http://github.com/jedie/python-creole/blob/master/demo.py
documentation
We store documentation/exmplate into the project wiki:
How to handle unknown html tags in html2creole:
Contributers should take a look at this page:
Use creole in README
With python-creole you can convert a README on-the-fly from creole into ReStructuredText in setup.py How to do this, read: https://code.google.com/p/python-creole/wiki/UseInSetup
history
v0.8
New GetLongDescription() helper for setup.py, see: https://code.google.com/p/python-creole/wiki/UseInSetup
v0.7.3
Bugfix in html2rest:
table without <th> header
new line after table
create reference hyperlinks in table cells intead of embedded urls.
Don’t always use raise_unknown_node()
Add child content to raise_unknown_node()
v0.7.2
Activate ---- to <hr> in html2rest
Update demo.py
v0.7.1
Bugfix if docutils are not installed
API change: rest2html is now here: from creole.rest2html.clean_writer import rest2html
v0.7.0
NEW: Add a html2reStructuredText converter (only a subset of reSt supported)
v0.6.1
Bugfix: separate lines with one space in “wiki style line breaks” mode
v0.6
NEW: html2textile converter
some API changed!
v0.5
API changed:
Html2CreoleEmitter optional argument ‘unknown_emit’ takes now a callable for handle unknown html tags.
No macros used as default in creole2html converting.
We remove the support for callable macros. Only dict and modules are allowed.
remove unknown html tags is default behaviour in html2creole converting.
restructure and cleanup sourcecode files.
v0.4
only emit children of empty tags like div and span (contributed by Eric O’Connell)
remove inter wiki links and doesn’t check the protocol
v0.3.3
Use <tt> when {{{ … }}} is inline and not <pre>, see: PyLucid Forum Thread
Bugfix in html2creole: insert newline before new list. TODO: apply to all block tags: issues 16
v0.3.2
Bugfix for spaces after Headline: issues 15
v0.3.1
Make argument ‘block_rules’ in Parser() optional
v0.3.0
creole2html() has the optional parameter ‘blog_line_breaks’ to switch from default blog to wiki line breaks
v0.2.8
bugfix in setup.py
v0.2.7
handle obsolete non-closed <br> tag
v0.2.6
bugfix in setup.py
Cleanup DocStrings
add unittests
v0.2.5
creole2html: Bugfix if “–”, “//” etc. stands alone, see also: issues 12
Note: bold, italic etc. can’t cross line any more.
v0.2.4
creole2html: ignore file extensions in image tag
see also: issues 7
v0.2.3
html2creole bugfix/enhanced: convert image tag without alt attribute:
see also: issues 6
Thanks Betz Stefan alias ‘encbladexp’
v0.2.2
html2creole bugfix: convert <a href="/url/">Search & Destroy</a>
v0.2.1
html2creole bugfixes in:
converting tables: ignore tbody tag and better handling p and a tags in td
converting named entity
v0.2
remove all django template tag stuff: issues 3
html code always escaped
v0.1.1
improve macros stuff, patch by Vitja Makarov: issues 2
v0.1.0
first version cut out from PyLucid CMS
donation
links
homepage: |
|
sourcecode: |
|
PyPi: |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.