Ruby Markdown



Markdown Implementations

Gmas / Ruby.markdown Forked from avdi/Ruby.markdown. Created Feb 17, 2014. Star 0 Fork 0; Star Code Revisions 1. What would you like to do? The Markdown Guide is a free and open-source reference guide that explains how to use Markdown, the simple and easy-to-use markup language you can use to format virtually any document. Get Started DigitalOcean App Platform, a new PaaS that gets your apps to market, faster. The RDoc Markdown parser has the following built-in behaviors that cannot be disabled. Underscores embedded in words are never interpreted as emphasis. (While the markdown dingus emphasizes in-word underscores, neither the Markdown syntax nor MarkdownTest mention this behavior.) For HTML output, RDoc always auto-links bare URLs. Some styles failed to load. 😵 Please try reloading this page. I use markdown for virtually any work I do. I actually wrote then entire Hello Rails course in markdown. This blog's post editor is based in markdown as well. It's safe to say I love it over any other type of word editor out there. Adding support for it in a Ruby on Rails app is quite trivial thanks to a few gems out there.

Either direct or other lists

  • stackoverflow Question 11 lists some and references

Specific implementations

In Python universe, some packages. There are more.

  • Markdown with its features

In Perl, there is a package:


Wikipedia has a list that is reproduced here, so that we can add/remove columns and Markdown processors.


Name Language Type Description Official site


mmd2pdf Autoit - MultiMarkdown to PDF convertergoogle code


md2html.awk Awk Converter Markdown to Htmlbitbucket


apache-mod-sundown C Apache HTTPd module Using Sundown C librarygithub
Discount C Library and HTML converter -site
libpandoc C Multiconverter -github
peg-multimarkdown C - Using parsing expressing grammar (PEG)github, github fork
peg-markdown C - Using parsing expressing grammar (PEG)github
PEG Markdown Highlight C Syntax highlighter Using parsing expressing grammar (PEG)site
Sundown C - -github
libupskirt C Parser Fork of libsoldoutgithub
libsoldout C Parser Simple parser onlysite
Doxygen C++ Sourcecode documentation generator Doxygen supports Markdown with extra featuressite
Cpp-Markdown C++ Generator Markdown to HTMLsourceforge
RStudio C++ IDE for R (programming language) C++ wrapper for sundownsite
Qarkdown C++ Editor (Qt) Simple crossplatform Markdown editor using Qtsite


MarkdownSharp C# - -google code
MoonShine C# - -github
Sundown.net C# - -github
markdown-clj Clojure Converter Generates HTML from Markdown, compiles to both Clojure and ClojureScriptgithub


Blackfriday Go - -github
Goskirt Go - -github
MaTeS Go Converter to HTML5 Creates web pages or presentation slides. Supports citation, tables, math and charts.site
Upskirt.go Go - -github


Pandoc Haskell Converter (Multiformat) -site
Sundown HS Haskell - -github
MarkdownJ Java - -google code
pegdown Java - -github
MarkdownPapers Java - Implementation based on a JavaCC parsersite
Txtmark Java - -github
Markdown4j Java - Extensible markdown java implementationgoogle code
Dillinger JavaScript Editor 'WYSIWYM' editorsite, github
uedit JavaScript Editor 'WYSIWYM' editorgithub
node-discount JavaScript - node.js binding for Discountgithub
markdown-js JavaScript - Parser for JavaScript/node.jsgithub
marked JavaScript - A fast markdown parsergithub
PageDown JavaScript Webeditor and viewer Used by Stack Exchange sitesgoogle code and github
PageDown-Bootstrap JavaScript Webeditor and viewer Fork of PageDown which uses the Twitter Bootstrap template frameworkgithub
Showdown JavaScript Webeditor and viewer -site/github
markdown.pioul.fr JavaScript Webeditor and viewer Minimalist Online Markdown Editorsite
TextDown JavaScript Editor plugin for Chrome -chrome store/github
texts.js JavaScript Node.js module PEG-based grammar, intermediate format in JSONgithub
markdown.lua Lua - -luaforge
Lunamark Lua Converter HTML and LaTeX convertergithub
lua-discount Lua Binding -site


node-multimarkdown Node.js Parser Native MultiMarkdown extension for Node.jsgithub
RobotSkirt Node.js - -github
node-markdown Node.js - Parse Markdown syntax with node.jsgithub
gfm Node.js - The port of Showdown used on github.comgithub
Markdown Perl 6 Parser Markdown parser in Perl 6github
Markdown.pl Perl Converter to (X)HTML Official author perl markdown implementationsite
MultiMarkdown Perl Converter Markdowns originals MultiMarkdown supersetsite, github
text-markdown Perl Converter to (X)HTML -github
markdown-oo-php PHP Converter to (X)HTML Object-oriented implementation of Markdowngithub
markdown-handler PHP Converter to (X)HTMLgithub
PHP Markdown PHP Converter to HTML -site
PHP Markdown Extra PHP Converter to HTML Markdown with extra optionssite
PHP Markdown Extended PHP Converter to various formats (HTML, MAN, extensible) Markdown extended syntaxgithub
PHP Markdown Viewer PHP Viewer Wrapper for PHP Markdownsite
secondcrack PHP Blog A static-file Markdown blogging enginegithub, site
qlmarkdown Objective C - A Mac OS X Quicklook extension that uses Discount.github
Python-Markdown Python - A implementation with various extensions such as tables and ignoring internal bold/italic markings.site
Misaka Python Binding Python binding for Sundownsite
BlueCloth Ruby - -site
BlueFeather Ruby - -site
ffi-sundown Ruby - -github
gimli Ruby Markdown to PDF -gimli
kramdown Ruby Library -rubyforge
md2man Ruby Converter Markdown to manpagegithub
markdownr.com Ruby Webviewer and Editor A nifty markdown notepadsite/github
Maruku Ruby Interpreter -github
RDiscount Ruby Binding Ruby binding for Discountgithub
Redcarpet Ruby Binding Ruby binding for Sundowngithub
Knockoff Scala - -site
Actuarius Scala - -site
Lowdown Chicken Scheme Parser library (egg) Can emit SXMLchicken wiki, Bitbucket
markdown.bash Bash Converter Markdown to HtmlGithub

Alternative lightweight markup formats

Retrieved from 'https://www.w3.org/community/markdown/wiki/index.php?title=MarkdownImplementations&oldid=146'

RDoc::Markdown as described by the markdownsyntax.

To choose Markdown as your only default formatsee Saved Options atRDoc::Options for instructions on setting up a.doc_options file to store your project default.

Usage

Here is a brief example of using this parse to read a markdown file byhand.

Extensions

The following markdown extensions are supported by the parser, but not allare used in RDoc output by default.

RDoc

The RDocMarkdownparser has the following built-in behaviors that cannot be disabled.

Underscores embedded in words are never interpreted as emphasis. (While themarkdowndingus emphasizes in-word underscores, neither the Markdown syntax nor MarkdownTest mention thisbehavior.)

For HTML output, RDoc always auto-links bareURLs.

Break on Newline

The #break_on_newlineextension converts all newlines into hard line breaks as in Github FlavoredMarkdown. This extension is disabled by default.

CSS

The css extension enables CSSblocks to be included in the output, but they are not used for any built-inRDoc output format. This extension is disabledby default.

Example:

Definition Lists

The #definition_listsextension allows definition lists using the PHPMarkdown Extra syntax, but only one label and definition are supportedat this time. This extension is enabled by default.

Example:

Produces:

cat

A small furry mammal that seems to sleep a lot

ant

A little insect that is known to enjoy picnics

Strike

Example:

Produces:

This is ~~striked~~.

Github

The github extension enables apartial set of Github FlavoredMarkdown. This extension is enabled by default.

Supported github extensions include:

Fenced code blocks

Use ``` around a block of code instead of indenting it fourspaces.

Syntax highlighting

Use ``` ruby as the start of a code fence to add syntaxhighlighting. (Currently only ruby syntax is supported).

HTML

Ruby Markdown Download

Enables raw HTML to be included in the output. This extension is enabled bydefault.

Example:

Notes

The notes extension enablesfootnote support. This extension is enabled by default.

Example:

Produces:

Here is some text1including an inline footnote 2

Limitations

Ruby Markdownify

  • Link titles are not used

  • Footnotes are collapsed into a single paragraph

Author

This markdown parser is a port to kpeg from peg-markdown by JohnMacFarlane.

It is used under the MIT license:

Permission is hereby granted, free of charge, to any person obtaining acopy of this software and associated documentation files (the “Software”),to deal in the Software without restriction, including without limitationthe rights to use, copy, modify, merge, publish, distribute, sublicense,and/or sell copies of the Software, and to permit persons to whom theSoftware is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included inall copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISINGFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHERDEALINGS IN THE SOFTWARE.

The port to kpeg was performed by Eric Hodel and Evan Phoenix

1 With the footnotetext down at the bottom

Ruby

Ruby Markdown Game

2 for short footnotes