Ef Markdown to HTML Converter ==================== [![Build Status](https://travis-ci.org/magiclen/ef.svg?branch=master)](https://travis-ci.org/magiclen/ef) Ef Markdown to HTML Converter is a free tool for converting a Markdown file to a single HTML file with built-in CSS and JS. ## Help ``` EXAMPLES: ef /path/to/file.md # Convert /path/to/file.md to /path/to/file.html, titled "file" ef /path/to/file.md -o /path/to/output.html # Convert /path/to/file.md to /path/to/output.html, titled "output" ef /path/to/file.md -t 'Hello World!' # Convert /path/to/file.md to /path/to/file.html, titled "Hello World!" USAGE: ef [FLAGS] [OPTIONS] FLAGS: --no-safe Allows raw HTML and dangerous URLs --no-highlight Not allow to use highlight.js --no-mathjax Not allow to use mathjax.js --no-cjk-fonts Not allow to use CJK fonts -f, --force Forces to output if the HTML file exists -h, --help Prints help information -V, --version Prints version information OPTIONS: -t, --title Specifies the title of your HTML file -o, --html-path <HTML_PATH> Specifies the path of your HTML file --css-path <CSS_PATH> Specifies the path of your custom CSS file --highlight-js-path <HIGHLIGHT_JS_PATH> Specifies the path of your custom highlight.js file --highlight-css-path <HIGHLIGHT_CSS_PATH> Specifies the path of your custom CSS file for highlight.js code blocks --mathjax-path-path <MATHJAX_JS_PATH> Specifies the path of your custom single MATH_JAX.js file ARGS: <MARKDOWN_PATH> Specifies the path of your Markdown file ``` ## Dependency Markdown is converted to HTML by the [comrak](https://crates.io/crates/comrak) crate. The default stylesheet (the CSS file) is from [sindresorhus/github-markdown-css](https://github.com/sindresorhus/github-markdown-css). If ` ``` ` is used in the input Markdown file, the [highlight.js](https://highlightjs.org/) will be automatically embedded in the output HTML file. The preset supported languages are listed below. * .properties * Apache * Bash * C * C# * C++ * C-like * CSS * CoffeeScript * Diff * Go * HTML, XML * HTTP * JSON * Java * JavaScript * Kotlin * Less * Lua * Makefile * Markdown * Nginx * Objective-C * PHP * PHP Template * Perl * Python * Python REPL * Ruby * Rust * SCSS * SQL * Shell Session * Swift * TOML, INI * TypeScript * YAML If `#{{` - `}}#` or `#{{{` - `}}}#` is used in the input Markdown file, the [mathjax.js](https://www.mathjax.org/) will be automatically embedded in the output HTML file. `#{{` and `}}#` are `inlineMath` delimiters. `#{{{` and `}}}#` are `displayMath` delimiters. The default **mathjax.js** are using the [tex-mml-chtml](http://docs.mathjax.org/en/latest/web/components/combined.html#tex-mml-chtml) configuration file. ## A Markdown Example [The Markdown File](https://github.com/magiclen/ef/blob/master/example.md) [The HTML File](https://jsfiddle.net/magiclen/jgs324w0/latest) ## License [MIT](LICENSE)