next_url: install.html
next_title: Installation
Python-Markdown
===============
This is a Python implementation of John Gruber's
[Markdown](http://daringfireball.net/projects/markdown/).
It is almost completely compliant with the reference implementation,
though there are a few very minor differences. See John's
[Syntax Documentation](http://daringfireball.net/projects/markdown/syntax)
for the syntax rules.
See the [installation instructions](install.html) to get started.
Features
--------
In addition to the basic markdown syntax, Python-Markdown supports the following
features:
* __International Input__
Python-Markdown will accept input in any language supported by Unicode
including bi-directional text. In fact the test suite includes documents
written in Russian and Arabic.
* __Middle-Word Emphasis__
Python-Markdown defaults to ignoring middle-word emphasis. In other words,
`some_long_filename.txt` will not become `somelongfilename.txt`.
This can be switched off if desired. See the
[Library Reference](reference.html) for details.
* __Extensions__
Various [extensions](extensions/index.html) are provided (including
[extra](extensions/extra.html)) to expand the base syntax. Additionally,
a public [Extension API](extensions/api.html) is available to write
your own extensions.
* __Output Formats__
Python-Markdown can output documents in HTML4, XHTML and HTML5.
* __"Safe Mode"__
When using Python-Markdown to parse input from untrusted users on the web,
the handling of raw HTML can be controlled in various ways to prevent
harmful code from being injected into your site.
* __Command Line Interface__
In addition to being a Python Library, a
[command line script](cli.html) is available for your convenience.
Support
-------
You may ask for help and discuss various other issues on the [mailing list][]
and report bugs on the [bug tracker][].
[mailing list]: http://lists.sourceforge.net/lists/listinfo/python-markdown-discuss
[bug tracker]: http://github.com/waylan/Python-Markdown/issues