- 1_8_6_287
- 1_8_7_72
- 1_8_7_330
- 1_9_1_378
- 1_9_2_180
- 1_9_3_125
- 1_9_3_392
- 2_1_10 (0)
- 2_2_9 (0)
- 2_4_6 (0)
- 2_5_5 (38)
- 2_6_3 (0)
- What's this?
RDoc::Markdown as described by the [markdown syntax][syntax].
To choose Markdown as your only default format see RDoc::Options@Saved+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 by hand.
data = File.read("README.md") formatter = RDoc::Markup::ToHtml.new(RDoc::Options.new, nil) html = RDoc::Markdown.parse(data).accept(formatter) # do something with html
## Extensions
The following markdown extensions are supported by the parser, but not all are used in RDoc output by default.
### RDoc
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][dingus
-
emphasizes in-word underscores, neither the
Markdown syntax nor MarkdownTest mention this behavior.)
For HTML output, RDoc always auto-links bare URLs.
### Break on Newline
The break_on_newline extension converts all newlines into hard line breaks as in [Github Flavored Markdown][GFM]. This extension is disabled by default.
### CSS
The #css extension enables CSS blocks to be included in the output, but they are not used for any built-in RDoc output format. This extension is disabled by default.
Example:
<style type="text/css"> h1 { font-size: 3em } </style>
### Definition Lists
The definition_lists extension allows definition lists using the [PHP Markdown Extra syntax][PHPE], but only one label and definition are supported at this time. This extension is enabled by default.
Example:
“` cat : A small furry mammal that seems to sleep a lot
ant : A little insect that is known to enjoy picnics
“`
Produces:
cat : A small furry mammal that seems to sleep a lot
ant : A little insect that is known to enjoy picnics
### Strike
Example:
“` This is ~~striked~~. “`
Produces:
This is ~~striked~~.
### Github
The #github extension enables a partial set of [Github Flavored Markdown] [GFM]. This extension is enabled by default.
Supported github extensions include:
#### Fenced code blocks
Use ` “` ` around a block of code instead of indenting it four spaces.
#### Syntax highlighting
Use ` “` ruby ` as the start of a code fence to add syntax highlighting. (Currently only `ruby` syntax is supported).
### HTML
Enables raw HTML to be included in the output. This extension is enabled by default.
Example:
<table> ... </table>
### Notes
The #notes extension enables footnote support. This extension is enabled by default.
Example:
Here is some text[^1] including an inline footnote ^[for short footnotes] ... [^1]: With the footnote text down at the bottom
Produces:
Here is some text[^1] including an inline footnote ^[for short footnotes]
[^1]: With the footnote text down at the bottom
## Limitations
-
Link titles are not used
-
Footnotes are collapsed into a single paragraph
## Author
This markdown parser is a port to kpeg from [peg-markdown][pegmarkdown] by John MacFarlane.
It is used under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
The port to kpeg was performed by Eric Hodel and Evan Phoenix
[dingus]: http://daringfireball.net/projects/markdown/dingus [GFM]: http://github.github.com/github-flavored-markdown/ [pegmarkdown]: github.com/jgm/peg-markdown [PHPE]: http://michelf.com/projects/php-markdown/extra/#def-list [syntax]: http://daringfireball.net/projects/markdown/syntax
Constants
DEFAULT_EXTENSIONS = [ :definition_lists, :github, :html, :notes, :strike, ]
EXTENSIONS = []