render_readme 0.15.0

Render Markdown or reStructuredText with syntax highlighting and image filtering similar to GitHub's
Documentation
# Render README files the same way(ish) as GitHub et al.

Readme to HTML conversion for lib.rs.

Supports:

 * Markdown with GitHub's extensions (natively in Rust), reStructuredText (via `rst2html`), and a tiny subset of AsciiDoc.
 * URL rewriting.
 * Filtering out unsafe HTML.
 * GitHub Emoji.
 * GitHub's hack for light/dark images.
 * Supports syntax highlighting using Sublime Text syntax definitions. The markup is color agnostic.
   Instead of hardcoding colors, it writes scope class names. Actual theme colors are in the [style subproject]https://gitlab.com/lib.rs/style.
 * Fuzzy detection of programming languages used in `<code>` tags, tuned for languages mentioned by Rust crates.

## Installation

Install `docutils` package, so that `rst2html` command is available (in `PATH`).

It needs to write a file to system's temp directory for `rst2html`. If you clear temp while the program is running, rst support may fail.

## Making a theme

It generates HTML `<span>` class names based on scope names from Sublime Syntax files, but:

 * words used in the scopes are abbreviated. See `highlight.rs` for the list of abbreviations.
 * Only scopes with 2 and 3 levels are added (more specific scopes are truncated to the first 3 words).

## Adding more languages

All languages are precompiled from `syntaxes/` submodule.

`tmLanguage` definitions need to be [converted first](https://github.com/aziz/SublimeSyntaxConvertor).