super-quick-rb 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/rdoc-8.0.0/CONTRIBUTING.md +195 -0
- data/rdoc-8.0.0/CVE-2013-0256.rdoc +49 -0
- data/rdoc-8.0.0/History.rdoc +1668 -0
- data/rdoc-8.0.0/LEGAL.rdoc +56 -0
- data/rdoc-8.0.0/LICENSE.rdoc +63 -0
- data/rdoc-8.0.0/README.md +236 -0
- data/rdoc-8.0.0/RI.md +842 -0
- data/rdoc-8.0.0/TODO.rdoc +60 -0
- data/rdoc-8.0.0/doc/markup_reference/markdown.md +659 -0
- data/rdoc-8.0.0/doc/markup_reference/rdoc.rdoc +1169 -0
- data/rdoc-8.0.0/exe/rdoc +43 -0
- data/rdoc-8.0.0/exe/ri +12 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/alias.rb +98 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/any_method.rb +387 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/attr.rb +178 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/class_module.rb +969 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/constant.rb +221 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/context/section.rb +182 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/context.rb +1238 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/extend.rb +9 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/include.rb +9 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/method_attr.rb +417 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/mixin.rb +123 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/normal_class.rb +92 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/normal_module.rb +73 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/require.rb +51 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/single_class.rb +30 -0
- data/rdoc-8.0.0/lib/rdoc/code_object/top_level.rb +286 -0
- data/rdoc-8.0.0/lib/rdoc/code_object.rb +393 -0
- data/rdoc-8.0.0/lib/rdoc/code_objects.rb +5 -0
- data/rdoc-8.0.0/lib/rdoc/comment.rb +353 -0
- data/rdoc-8.0.0/lib/rdoc/cross_reference.rb +215 -0
- data/rdoc-8.0.0/lib/rdoc/encoding.rb +120 -0
- data/rdoc-8.0.0/lib/rdoc/erb_partial.rb +18 -0
- data/rdoc-8.0.0/lib/rdoc/erbio.rb +37 -0
- data/rdoc-8.0.0/lib/rdoc/generator/aliki.rb +200 -0
- data/rdoc-8.0.0/lib/rdoc/generator/darkfish.rb +824 -0
- data/rdoc-8.0.0/lib/rdoc/generator/json_index.rb +284 -0
- data/rdoc-8.0.0/lib/rdoc/generator/markup.rb +196 -0
- data/rdoc-8.0.0/lib/rdoc/generator/pot/message_extractor.rb +68 -0
- data/rdoc-8.0.0/lib/rdoc/generator/pot/po.rb +84 -0
- data/rdoc-8.0.0/lib/rdoc/generator/pot/po_entry.rb +141 -0
- data/rdoc-8.0.0/lib/rdoc/generator/pot.rb +94 -0
- data/rdoc-8.0.0/lib/rdoc/generator/ri.rb +30 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/DESIGN.md +536 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_aside_toc.rhtml +8 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_footer.rhtml +23 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_head.rhtml +163 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_header.rhtml +56 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_icons.rhtml +208 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_ancestors.rhtml +16 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_classes.rhtml +15 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_extends.rhtml +27 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_includes.rhtml +27 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_installed.rhtml +16 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_methods.rhtml +41 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_pages.rhtml +67 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_search.rhtml +15 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_sections.rhtml +21 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_toggle.rhtml +3 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/class.rhtml +230 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/css/rdoc.css +2181 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/index.rhtml +22 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/aliki.js +513 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/bash_highlighter.js +167 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/c_highlighter.js +299 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/search_controller.js +129 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/search_navigation.js +105 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/search_ranker.js +239 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/theme-toggle.js +112 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/page.rhtml +18 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/servlet_not_found.rhtml +14 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/servlet_root.rhtml +65 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_footer.rhtml +5 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_head.rhtml +43 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +5 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +17 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +17 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +16 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +21 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_navigation.rhtml +11 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +32 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +6 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_search.rhtml +15 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +11 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +39 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_toggle.rhtml +3 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/class.rhtml +220 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/css/fonts.css +167 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/css/rdoc.css +701 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-Light.ttf +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-LightItalic.ttf +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-Regular.ttf +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-RegularItalic.ttf +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Bold.ttf +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Regular.ttf +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/add.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/arrow_up.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/brick.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/brick_link.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bug.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bullet_black.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bullet_toggle_minus.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bullet_toggle_plus.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/date.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/delete.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/find.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/loadingAnimation.gif +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/macFFBgHack.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/package.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/page_green.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/page_white_text.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/page_white_width.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/plugin.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/ruby.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/tag_blue.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/tag_green.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/transparent.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/wrench.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/wrench_orange.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/zoom.png +0 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/index.rhtml +24 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/js/darkfish.js +140 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/js/search.js +120 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/page.rhtml +19 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/servlet_not_found.rhtml +21 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/servlet_root.rhtml +65 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/table_of_contents.rhtml +72 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/json_index/js/navigation.js +105 -0
- data/rdoc-8.0.0/lib/rdoc/generator/template/json_index/js/searcher.js +271 -0
- data/rdoc-8.0.0/lib/rdoc/generator.rb +52 -0
- data/rdoc-8.0.0/lib/rdoc/i18n/locale.rb +102 -0
- data/rdoc-8.0.0/lib/rdoc/i18n/text.rb +126 -0
- data/rdoc-8.0.0/lib/rdoc/i18n.rb +10 -0
- data/rdoc-8.0.0/lib/rdoc/known_classes.rb +74 -0
- data/rdoc-8.0.0/lib/rdoc/markdown/entities.rb +2131 -0
- data/rdoc-8.0.0/lib/rdoc/markdown/literals.kpeg +21 -0
- data/rdoc-8.0.0/lib/rdoc/markdown/literals.rb +454 -0
- data/rdoc-8.0.0/lib/rdoc/markdown.kpeg +1315 -0
- data/rdoc-8.0.0/lib/rdoc/markdown.rb +16865 -0
- data/rdoc-8.0.0/lib/rdoc/markup/blank_line.rb +29 -0
- data/rdoc-8.0.0/lib/rdoc/markup/block_quote.rb +14 -0
- data/rdoc-8.0.0/lib/rdoc/markup/document.rb +164 -0
- data/rdoc-8.0.0/lib/rdoc/markup/element.rb +21 -0
- data/rdoc-8.0.0/lib/rdoc/markup/formatter.rb +285 -0
- data/rdoc-8.0.0/lib/rdoc/markup/hard_break.rb +34 -0
- data/rdoc-8.0.0/lib/rdoc/markup/heading.rb +170 -0
- data/rdoc-8.0.0/lib/rdoc/markup/include.rb +42 -0
- data/rdoc-8.0.0/lib/rdoc/markup/indented_paragraph.rb +47 -0
- data/rdoc-8.0.0/lib/rdoc/markup/inline_parser.rb +312 -0
- data/rdoc-8.0.0/lib/rdoc/markup/list.rb +101 -0
- data/rdoc-8.0.0/lib/rdoc/markup/list_item.rb +99 -0
- data/rdoc-8.0.0/lib/rdoc/markup/paragraph.rb +28 -0
- data/rdoc-8.0.0/lib/rdoc/markup/parser.rb +585 -0
- data/rdoc-8.0.0/lib/rdoc/markup/pre_process.rb +317 -0
- data/rdoc-8.0.0/lib/rdoc/markup/raw.rb +66 -0
- data/rdoc-8.0.0/lib/rdoc/markup/rule.rb +20 -0
- data/rdoc-8.0.0/lib/rdoc/markup/table.rb +64 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_ansi.rb +144 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_bs.rb +86 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_html.rb +682 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_html_crossref.rb +261 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_html_snippet.rb +287 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_joined_paragraph.rb +41 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_label.rb +84 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_markdown.rb +215 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_rdoc.rb +421 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_table_of_contents.rb +88 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_test.rb +77 -0
- data/rdoc-8.0.0/lib/rdoc/markup/to_tt_only.rb +107 -0
- data/rdoc-8.0.0/lib/rdoc/markup/verbatim.rb +83 -0
- data/rdoc-8.0.0/lib/rdoc/markup.rb +219 -0
- data/rdoc-8.0.0/lib/rdoc/options.rb +1412 -0
- data/rdoc-8.0.0/lib/rdoc/parser/c.rb +1227 -0
- data/rdoc-8.0.0/lib/rdoc/parser/changelog.rb +379 -0
- data/rdoc-8.0.0/lib/rdoc/parser/markdown.rb +22 -0
- data/rdoc-8.0.0/lib/rdoc/parser/rbs.rb +275 -0
- data/rdoc-8.0.0/lib/rdoc/parser/rd.rb +22 -0
- data/rdoc-8.0.0/lib/rdoc/parser/ruby.rb +1266 -0
- data/rdoc-8.0.0/lib/rdoc/parser/ruby_colorizer.rb +253 -0
- data/rdoc-8.0.0/lib/rdoc/parser/simple.rb +44 -0
- data/rdoc-8.0.0/lib/rdoc/parser/text.rb +11 -0
- data/rdoc-8.0.0/lib/rdoc/parser.rb +298 -0
- data/rdoc-8.0.0/lib/rdoc/rbs_helper.rb +186 -0
- data/rdoc-8.0.0/lib/rdoc/rd/block_parser.rb +1706 -0
- data/rdoc-8.0.0/lib/rdoc/rd/block_parser.ry +643 -0
- data/rdoc-8.0.0/lib/rdoc/rd/inline.rb +71 -0
- data/rdoc-8.0.0/lib/rdoc/rd/inline_parser.rb +1854 -0
- data/rdoc-8.0.0/lib/rdoc/rd/inline_parser.ry +593 -0
- data/rdoc-8.0.0/lib/rdoc/rd.rb +99 -0
- data/rdoc-8.0.0/lib/rdoc/rdoc.rb +724 -0
- data/rdoc-8.0.0/lib/rdoc/ri/driver.rb +1572 -0
- data/rdoc-8.0.0/lib/rdoc/ri/formatter.rb +6 -0
- data/rdoc-8.0.0/lib/rdoc/ri/paths.rb +171 -0
- data/rdoc-8.0.0/lib/rdoc/ri/servlet.rb +452 -0
- data/rdoc-8.0.0/lib/rdoc/ri/store.rb +6 -0
- data/rdoc-8.0.0/lib/rdoc/ri/task.rb +71 -0
- data/rdoc-8.0.0/lib/rdoc/ri.rb +21 -0
- data/rdoc-8.0.0/lib/rdoc/rubygems_hook.rb +327 -0
- data/rdoc-8.0.0/lib/rdoc/server.rb +460 -0
- data/rdoc-8.0.0/lib/rdoc/stats/normal.rb +58 -0
- data/rdoc-8.0.0/lib/rdoc/stats/quiet.rb +59 -0
- data/rdoc-8.0.0/lib/rdoc/stats/verbose.rb +44 -0
- data/rdoc-8.0.0/lib/rdoc/stats.rb +484 -0
- data/rdoc-8.0.0/lib/rdoc/store.rb +1205 -0
- data/rdoc-8.0.0/lib/rdoc/task.rb +355 -0
- data/rdoc-8.0.0/lib/rdoc/text.rb +244 -0
- data/rdoc-8.0.0/lib/rdoc/token_stream.rb +104 -0
- data/rdoc-8.0.0/lib/rdoc/tom_doc.rb +257 -0
- data/rdoc-8.0.0/lib/rdoc/version.rb +10 -0
- data/rdoc-8.0.0/lib/rdoc.rb +239 -0
- data/rdoc-8.0.0/lib/rubygems_plugin.rb +14 -0
- data/rdoc-8.0.0/man/ri.1 +249 -0
- data/rdoc-8.0.0/rdoc-logo.svg +43 -0
- data/rdoc-8.0.0/rdoc.gemspec +74 -0
- data/super-quick-rb.gemspec +12 -0
- metadata +257 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
= TODO
|
|
2
|
+
This file contains some things that might happen in RDoc, or might not.
|
|
3
|
+
Forward Looking Statements applies.
|
|
4
|
+
|
|
5
|
+
== RDoc::VERSION.succ
|
|
6
|
+
|
|
7
|
+
=== Blockers:
|
|
8
|
+
|
|
9
|
+
* Update LICENSE to match ruby's switch
|
|
10
|
+
* The alias keyword should not be bidirectional
|
|
11
|
+
* Fix RDoc::Parser#use_markup to handle the filename (see TODO)
|
|
12
|
+
* Restore backwards compatibility due to paragraph text joining from existing
|
|
13
|
+
ri files
|
|
14
|
+
* Fix consumption of , after link like: RDoc[rdoc-ref:RDoc], <- comma here
|
|
15
|
+
* Remove support for links like Matrix[*rows]
|
|
16
|
+
|
|
17
|
+
=== Nice to have:
|
|
18
|
+
|
|
19
|
+
* Parse only changed files (like in ruby)
|
|
20
|
+
* Page of Glory (or Shame) in HTML output showing documentation coverage
|
|
21
|
+
statistics.
|
|
22
|
+
* Link to the parent-class implementation of methods that use super
|
|
23
|
+
* Add direct accessor to RDoc::Options to RDoc::Task
|
|
24
|
+
* Remove "Public" in HTML output if there are only public methods
|
|
25
|
+
* Method markup support for rd documentation (per rd syntax)
|
|
26
|
+
* Improve SIGINFO handling
|
|
27
|
+
* Global variable support
|
|
28
|
+
* Provide the code_object to directive handlers
|
|
29
|
+
|
|
30
|
+
== More Future
|
|
31
|
+
|
|
32
|
+
=== API changes to RDoc
|
|
33
|
+
|
|
34
|
+
* RDoc::TopLevel#add_method should automatically create the appropriate method
|
|
35
|
+
class rather than requiring one be passed in.
|
|
36
|
+
* Remove #comment= from Context subclasses in favor of #add_comment
|
|
37
|
+
* Add versions to RDoc::Markup syntax tree marshal format
|
|
38
|
+
* Comments can no longer be Strings
|
|
39
|
+
|
|
40
|
+
== Crazy Ideas
|
|
41
|
+
|
|
42
|
+
* Auto-normalize heading levels to look OK. It's weird to see an <h1> in
|
|
43
|
+
the middle of a method section.
|
|
44
|
+
* RDoc::CodeObject
|
|
45
|
+
* Move into own namespace
|
|
46
|
+
* Rename TopLevel to File
|
|
47
|
+
* Rename Context to Container
|
|
48
|
+
* Rename NormalClass to Class
|
|
49
|
+
|
|
50
|
+
== Accessibility
|
|
51
|
+
|
|
52
|
+
Page title in right hand side
|
|
53
|
+
|
|
54
|
+
Table of contents in left hand side as sub-list under main heading
|
|
55
|
+
|
|
56
|
+
For class list, never method list, method summary at top
|
|
57
|
+
|
|
58
|
+
table-of-contents-navigation div => nav + role="navigation"
|
|
59
|
+
|
|
60
|
+
type "mod", focus is still on "mod"
|
|
@@ -0,0 +1,659 @@
|
|
|
1
|
+
# Markdown Reference
|
|
2
|
+
|
|
3
|
+
This document is the comprehensive reference for Markdown support in RDoc.
|
|
4
|
+
It covers all syntax, extensions, and formatting options available.
|
|
5
|
+
|
|
6
|
+
For Ruby-specific features that require actual code (like cross-reference targets
|
|
7
|
+
and directives that only work in Ruby comments), see RDoc::Example.
|
|
8
|
+
|
|
9
|
+
## About the Examples
|
|
10
|
+
|
|
11
|
+
- Examples show Markdown syntax.
|
|
12
|
+
- Rendered output is shown in blockquotes where helpful.
|
|
13
|
+
|
|
14
|
+
## Blocks
|
|
15
|
+
|
|
16
|
+
Markdown documents consist of various block types:
|
|
17
|
+
|
|
18
|
+
- [Paragraphs](#paragraphs): ordinary text blocks.
|
|
19
|
+
- [Headings](#headings): section titles.
|
|
20
|
+
- [Code Blocks](#code-blocks): verbatim text with syntax highlighting.
|
|
21
|
+
- [Blockquotes](#blockquotes): quoted passages.
|
|
22
|
+
- [Lists](#lists): bullet, numbered, and definition lists.
|
|
23
|
+
- [Tables](#tables): tabular data.
|
|
24
|
+
- [Horizontal Rules](#horizontal-rules): visual separators.
|
|
25
|
+
|
|
26
|
+
### Paragraphs
|
|
27
|
+
|
|
28
|
+
A paragraph is one or more consecutive lines of text,
|
|
29
|
+
separated from other blocks by blank lines.
|
|
30
|
+
|
|
31
|
+
Example:
|
|
32
|
+
|
|
33
|
+
```markdown
|
|
34
|
+
This is the first paragraph. It can span
|
|
35
|
+
multiple lines.
|
|
36
|
+
|
|
37
|
+
This is the second paragraph.
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Single newlines within a paragraph become spaces in the output.
|
|
41
|
+
|
|
42
|
+
### Headings
|
|
43
|
+
|
|
44
|
+
#### ATX-Style Headings
|
|
45
|
+
|
|
46
|
+
Use `#` characters at the start of a line. Levels 1-6 are supported:
|
|
47
|
+
|
|
48
|
+
```markdown
|
|
49
|
+
# Heading Level 1
|
|
50
|
+
## Heading Level 2
|
|
51
|
+
### Heading Level 3
|
|
52
|
+
#### Heading Level 4
|
|
53
|
+
##### Heading Level 5
|
|
54
|
+
###### Heading Level 6
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Optional closing `#` characters are allowed:
|
|
58
|
+
|
|
59
|
+
```markdown
|
|
60
|
+
## Heading ##
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
#### Setext-Style Headings
|
|
64
|
+
|
|
65
|
+
Underline text with `=` for level 1 or `-` for level 2:
|
|
66
|
+
|
|
67
|
+
```markdown
|
|
68
|
+
Heading Level 1
|
|
69
|
+
===============
|
|
70
|
+
|
|
71
|
+
Heading Level 2
|
|
72
|
+
---------------
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Code Blocks
|
|
76
|
+
|
|
77
|
+
#### Indented Code Blocks
|
|
78
|
+
|
|
79
|
+
Indent code by 4 spaces or 1 tab:
|
|
80
|
+
|
|
81
|
+
```markdown
|
|
82
|
+
This is a paragraph.
|
|
83
|
+
|
|
84
|
+
def hello
|
|
85
|
+
puts "world"
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
This is another paragraph.
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
#### Fenced Code Blocks
|
|
92
|
+
|
|
93
|
+
Use triple backticks with an optional language identifier:
|
|
94
|
+
|
|
95
|
+
```ruby
|
|
96
|
+
def hello
|
|
97
|
+
puts "world"
|
|
98
|
+
end
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Supported languages for syntax highlighting: `ruby` (and `rb` alias) with server-side
|
|
102
|
+
highlighting, and `c`, `bash`/`sh`/`shell`/`console` with client-side JavaScript highlighting.
|
|
103
|
+
Other info strings are accepted and added as a CSS class but receive no highlighting.
|
|
104
|
+
|
|
105
|
+
### Blockquotes
|
|
106
|
+
|
|
107
|
+
Prefix lines with `>`:
|
|
108
|
+
|
|
109
|
+
```markdown
|
|
110
|
+
> This is a blockquote.
|
|
111
|
+
> It can span multiple lines.
|
|
112
|
+
>
|
|
113
|
+
> Multiple paragraphs are supported.
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Blockquotes can contain other elements:
|
|
117
|
+
|
|
118
|
+
```markdown
|
|
119
|
+
> ## Heading inside blockquote
|
|
120
|
+
>
|
|
121
|
+
> - List item 1
|
|
122
|
+
> - List item 2
|
|
123
|
+
>
|
|
124
|
+
> Code inside blockquote:
|
|
125
|
+
>
|
|
126
|
+
> def example
|
|
127
|
+
> :ok
|
|
128
|
+
> end
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
Nested blockquotes:
|
|
132
|
+
|
|
133
|
+
```markdown
|
|
134
|
+
> Outer quote
|
|
135
|
+
>
|
|
136
|
+
> > Nested quote
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### Lists
|
|
140
|
+
|
|
141
|
+
#### Bullet Lists
|
|
142
|
+
|
|
143
|
+
Use `*`, `+`, or `-` followed by a space:
|
|
144
|
+
|
|
145
|
+
```markdown
|
|
146
|
+
* Item 1
|
|
147
|
+
* Item 2
|
|
148
|
+
* Item 3
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Or:
|
|
152
|
+
|
|
153
|
+
```markdown
|
|
154
|
+
- Item 1
|
|
155
|
+
- Item 2
|
|
156
|
+
- Item 3
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
#### Numbered Lists
|
|
160
|
+
|
|
161
|
+
Use digits followed by `.` and a space:
|
|
162
|
+
|
|
163
|
+
```markdown
|
|
164
|
+
1. First item
|
|
165
|
+
2. Second item
|
|
166
|
+
3. Third item
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
The actual numbers don't matter; they're renumbered in output:
|
|
170
|
+
|
|
171
|
+
```markdown
|
|
172
|
+
1. First
|
|
173
|
+
1. Second
|
|
174
|
+
1. Third
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
#### Nested Lists
|
|
178
|
+
|
|
179
|
+
Indent with 4 spaces to nest:
|
|
180
|
+
|
|
181
|
+
```markdown
|
|
182
|
+
* Item 1
|
|
183
|
+
* Nested item A
|
|
184
|
+
* Nested item B
|
|
185
|
+
* Item 2
|
|
186
|
+
1. Numbered nested
|
|
187
|
+
2. Also numbered
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
#### Definition Lists
|
|
191
|
+
|
|
192
|
+
Use a term on one line, then `:` followed by the definition:
|
|
193
|
+
|
|
194
|
+
```markdown
|
|
195
|
+
term
|
|
196
|
+
: Definition of the term.
|
|
197
|
+
|
|
198
|
+
cat
|
|
199
|
+
: A small furry mammal.
|
|
200
|
+
|
|
201
|
+
ant
|
|
202
|
+
: A little insect.
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
Multiple definitions for one term:
|
|
206
|
+
|
|
207
|
+
```markdown
|
|
208
|
+
apple
|
|
209
|
+
: A fruit
|
|
210
|
+
: A technology company
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
### Tables
|
|
214
|
+
|
|
215
|
+
Create tables with pipes and dashes:
|
|
216
|
+
|
|
217
|
+
```markdown
|
|
218
|
+
| Column 1 | Column 2 | Column 3 |
|
|
219
|
+
|----------|----------|----------|
|
|
220
|
+
| Cell 1 | Cell 2 | Cell 3 |
|
|
221
|
+
| Cell 4 | Cell 5 | Cell 6 |
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
#### Column Alignment
|
|
225
|
+
|
|
226
|
+
Use colons to specify alignment:
|
|
227
|
+
|
|
228
|
+
```markdown
|
|
229
|
+
| Left | Center | Right |
|
|
230
|
+
|:---------|:--------:|---------:|
|
|
231
|
+
| Left | Center | Right |
|
|
232
|
+
| aligned | aligned | aligned |
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
- `:---` or `---` for left alignment (default)
|
|
236
|
+
- `:---:` for center alignment
|
|
237
|
+
- `---:` for right alignment
|
|
238
|
+
|
|
239
|
+
Tables support inline formatting in cells:
|
|
240
|
+
|
|
241
|
+
```markdown
|
|
242
|
+
| Feature | Syntax |
|
|
243
|
+
|-------------|-----------------|
|
|
244
|
+
| **Bold** | `**text**` |
|
|
245
|
+
| *Italic* | `*text*` |
|
|
246
|
+
| `Code` | `` `text` `` |
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### Horizontal Rules
|
|
250
|
+
|
|
251
|
+
Use three or more `-`, `*`, or `_` on a line by themselves:
|
|
252
|
+
|
|
253
|
+
```markdown
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
* * *
|
|
257
|
+
|
|
258
|
+
___
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
## Text Markup
|
|
262
|
+
|
|
263
|
+
Inline text can be formatted with various markup:
|
|
264
|
+
|
|
265
|
+
- [Italic](#italic): emphasized text.
|
|
266
|
+
- [Bold](#bold): strong emphasis.
|
|
267
|
+
- [Bold and Italic](#bold-and-italic): combined emphasis.
|
|
268
|
+
- [Strikethrough](#strikethrough): deleted text.
|
|
269
|
+
- [Inline Code](#inline-code): monospace text.
|
|
270
|
+
|
|
271
|
+
### Italic
|
|
272
|
+
|
|
273
|
+
Use single asterisks or underscores:
|
|
274
|
+
|
|
275
|
+
```markdown
|
|
276
|
+
This is *italic* text.
|
|
277
|
+
This is _also italic_ text.
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
> This is *italic* text.
|
|
281
|
+
> This is _also italic_ text.
|
|
282
|
+
|
|
283
|
+
**Note:** Underscores within words are not interpreted as emphasis:
|
|
284
|
+
|
|
285
|
+
```markdown
|
|
286
|
+
foo_bar_baz remains plain text
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
### Bold
|
|
290
|
+
|
|
291
|
+
Use double asterisks or underscores:
|
|
292
|
+
|
|
293
|
+
```markdown
|
|
294
|
+
This is **bold** text.
|
|
295
|
+
This is __also bold__ text.
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
> This is **bold** text.
|
|
299
|
+
> This is __also bold__ text.
|
|
300
|
+
|
|
301
|
+
### Bold and Italic
|
|
302
|
+
|
|
303
|
+
Use triple asterisks or underscores:
|
|
304
|
+
|
|
305
|
+
```markdown
|
|
306
|
+
This is ***bold and italic*** text.
|
|
307
|
+
This is ___also bold and italic___ text.
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
> This is ***bold and italic*** text.
|
|
311
|
+
> This is ___also bold and italic___ text.
|
|
312
|
+
|
|
313
|
+
### Strikethrough
|
|
314
|
+
|
|
315
|
+
Use double tildes:
|
|
316
|
+
|
|
317
|
+
```markdown
|
|
318
|
+
This is ~~strikethrough~~ text.
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
> This is ~~strikethrough~~ text.
|
|
322
|
+
|
|
323
|
+
### Inline Code
|
|
324
|
+
|
|
325
|
+
Use backticks:
|
|
326
|
+
|
|
327
|
+
```markdown
|
|
328
|
+
Use the `puts` method.
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
> Use the `puts` method.
|
|
332
|
+
|
|
333
|
+
For code containing backticks, use multiple backticks:
|
|
334
|
+
|
|
335
|
+
```markdown
|
|
336
|
+
Use `` `backticks` `` in code.
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
> Use `` `backticks` `` in code.
|
|
340
|
+
|
|
341
|
+
## Links
|
|
342
|
+
|
|
343
|
+
### Inline Links
|
|
344
|
+
|
|
345
|
+
```markdown
|
|
346
|
+
[Link text](https://example.com)
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
> [Link text](https://example.com)
|
|
350
|
+
|
|
351
|
+
With optional title (title is parsed but not used in RDoc output):
|
|
352
|
+
|
|
353
|
+
```markdown
|
|
354
|
+
[Link text](https://example.com "Title")
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
### Reference Links
|
|
358
|
+
|
|
359
|
+
Define a reference, then use it:
|
|
360
|
+
|
|
361
|
+
```markdown
|
|
362
|
+
[Link text][ref]
|
|
363
|
+
|
|
364
|
+
[ref]: https://example.com
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
Implicit reference (link text matches reference):
|
|
368
|
+
|
|
369
|
+
```markdown
|
|
370
|
+
[Example][]
|
|
371
|
+
|
|
372
|
+
[Example]: https://example.com
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### Autolinks
|
|
376
|
+
|
|
377
|
+
URLs and emails in angle brackets become links:
|
|
378
|
+
|
|
379
|
+
```markdown
|
|
380
|
+
<https://example.com>
|
|
381
|
+
<user@example.com>
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
> <https://example.com>
|
|
385
|
+
> <user@example.com>
|
|
386
|
+
|
|
387
|
+
### Cross-References
|
|
388
|
+
|
|
389
|
+
Link to RDoc-documented classes, modules, and methods:
|
|
390
|
+
|
|
391
|
+
```markdown
|
|
392
|
+
[RDoc module](rdoc-ref:RDoc)
|
|
393
|
+
[Options class](rdoc-ref:RDoc::Options)
|
|
394
|
+
[document method](rdoc-ref:RDoc::RDoc#document)
|
|
395
|
+
```
|
|
396
|
+
|
|
397
|
+
See [rdoc.rdoc](rdoc.rdoc) for complete cross-reference documentation.
|
|
398
|
+
|
|
399
|
+
## Images
|
|
400
|
+
|
|
401
|
+
Basic image syntax:
|
|
402
|
+
|
|
403
|
+
```markdown
|
|
404
|
+

|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
Image as a link:
|
|
408
|
+
|
|
409
|
+
```markdown
|
|
410
|
+
[](https://example.com)
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
## Anchor Links
|
|
414
|
+
|
|
415
|
+
RDoc supports GitHub-style anchor links. You can link to any heading using its
|
|
416
|
+
anchor, which is the heading text converted to lowercase with spaces replaced
|
|
417
|
+
by hyphens and special characters removed.
|
|
418
|
+
|
|
419
|
+
For example:
|
|
420
|
+
|
|
421
|
+
* [Link to Footnotes](#footnotes)
|
|
422
|
+
* [Link to Blockquotes](#blockquotes)
|
|
423
|
+
* [Link to Anchor Links](#anchor-links)
|
|
424
|
+
|
|
425
|
+
When multiple headings produce the same anchor, RDoc appends `-1`, `-2`, etc.
|
|
426
|
+
to subsequent duplicates, matching GitHub's behavior.
|
|
427
|
+
|
|
428
|
+
## Footnotes
|
|
429
|
+
|
|
430
|
+
### Reference Footnotes
|
|
431
|
+
|
|
432
|
+
Add a footnote reference in text, then define it:
|
|
433
|
+
|
|
434
|
+
```markdown
|
|
435
|
+
Here is some text[^1] with a footnote[^note].
|
|
436
|
+
|
|
437
|
+
[^1]: This is the first footnote.
|
|
438
|
+
[^note]: This is another footnote.
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
### Inline Footnotes
|
|
442
|
+
|
|
443
|
+
Create footnotes inline:
|
|
444
|
+
|
|
445
|
+
```markdown
|
|
446
|
+
Here is text ^[with an inline footnote].
|
|
447
|
+
```
|
|
448
|
+
|
|
449
|
+
Footnotes are collected and rendered at the bottom of the section,
|
|
450
|
+
separated by a horizontal rule.
|
|
451
|
+
|
|
452
|
+
## HTML
|
|
453
|
+
|
|
454
|
+
### Block HTML
|
|
455
|
+
|
|
456
|
+
Raw HTML blocks are preserved:
|
|
457
|
+
|
|
458
|
+
```markdown
|
|
459
|
+
<div class="note">
|
|
460
|
+
<p>This is HTML content.</p>
|
|
461
|
+
</div>
|
|
462
|
+
```
|
|
463
|
+
|
|
464
|
+
Supported block-level tags include: `<address>`, `<blockquote>`, `<div>`,
|
|
465
|
+
`<fieldset>`, `<form>`, `<h1>`-`<h6>`, `<ol>`, `<p>`, `<pre>`, `<table>`, `<ul>`.
|
|
466
|
+
|
|
467
|
+
### Inline HTML
|
|
468
|
+
|
|
469
|
+
Inline HTML is also preserved:
|
|
470
|
+
|
|
471
|
+
```markdown
|
|
472
|
+
This has <b>bold</b> and <em>emphasized</em> HTML.
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
## Special Characters
|
|
476
|
+
|
|
477
|
+
### Escaping
|
|
478
|
+
|
|
479
|
+
Use backslash to escape special characters:
|
|
480
|
+
|
|
481
|
+
```markdown
|
|
482
|
+
\*not italic\*
|
|
483
|
+
\`not code\`
|
|
484
|
+
\[not a link\]
|
|
485
|
+
\# not a heading
|
|
486
|
+
```
|
|
487
|
+
|
|
488
|
+
Escapable characters: `` ` \ : | * _ { } [ ] ( ) # + . ! > < - ``
|
|
489
|
+
|
|
490
|
+
### HTML Entities
|
|
491
|
+
|
|
492
|
+
Named, decimal, and hexadecimal entities are supported:
|
|
493
|
+
|
|
494
|
+
```markdown
|
|
495
|
+
© — π
|
|
496
|
+
A A
|
|
497
|
+
```
|
|
498
|
+
|
|
499
|
+
## Line Breaks
|
|
500
|
+
|
|
501
|
+
End a line with two or more spaces for a hard line break:
|
|
502
|
+
|
|
503
|
+
```markdown
|
|
504
|
+
Line one
|
|
505
|
+
Line two
|
|
506
|
+
```
|
|
507
|
+
|
|
508
|
+
## Directives
|
|
509
|
+
|
|
510
|
+
RDoc directives work in Markdown files within Ruby comments.
|
|
511
|
+
Use the `:markup: markdown` directive to specify Markdown format.
|
|
512
|
+
|
|
513
|
+
```ruby
|
|
514
|
+
# :markup: markdown
|
|
515
|
+
|
|
516
|
+
# This class uses **Markdown** for documentation.
|
|
517
|
+
#
|
|
518
|
+
# ## Features
|
|
519
|
+
#
|
|
520
|
+
# - Bold with `**text**`
|
|
521
|
+
# - Italic with `*text*`
|
|
522
|
+
class MyClass
|
|
523
|
+
end
|
|
524
|
+
```
|
|
525
|
+
|
|
526
|
+
Common directives (same as RDoc markup):
|
|
527
|
+
|
|
528
|
+
- `:nodoc:` - Suppress documentation
|
|
529
|
+
- `:doc:` - Force documentation
|
|
530
|
+
- `:stopdoc:` / `:startdoc:` - Start/stop documentation parsing
|
|
531
|
+
- `:call-seq:` - Custom calling sequence
|
|
532
|
+
- `:section:` - Create documentation sections
|
|
533
|
+
|
|
534
|
+
See [rdoc.rdoc](rdoc.rdoc) for complete directive documentation.
|
|
535
|
+
|
|
536
|
+
## Comparison with RDoc Markup
|
|
537
|
+
|
|
538
|
+
| Feature | RDoc Markup | Markdown |
|
|
539
|
+
|---------|-------------|----------|
|
|
540
|
+
| Headings | `= Heading` | `# Heading` |
|
|
541
|
+
| Bold | `*word*` | `**word**` |
|
|
542
|
+
| Italic | `_word_` | `*word*` |
|
|
543
|
+
| Monospace | `+word+` or `` `word` `` | `` `word` `` |
|
|
544
|
+
| Links | `{text}[url]` | `[text](url)` |
|
|
545
|
+
| Code blocks | Indent beyond margin | Indent 4 spaces or fence |
|
|
546
|
+
| Block quotes | `>>>` | `>` |
|
|
547
|
+
| Tables | Not supported | Supported |
|
|
548
|
+
| Strikethrough | `<del>text</del>` | `~~text~~` |
|
|
549
|
+
| Footnotes | Not supported | `[^1]` |
|
|
550
|
+
|
|
551
|
+
## Notes and Limitations
|
|
552
|
+
|
|
553
|
+
1. **Link titles are parsed but not used** - The title in `[text](url "title")` is ignored.
|
|
554
|
+
|
|
555
|
+
2. **Underscores in words** - `foo_bar` is never italicized; emphasis requires whitespace boundaries.
|
|
556
|
+
|
|
557
|
+
3. **Footnotes are collapsed** - Multiple paragraphs in a footnote become a single paragraph.
|
|
558
|
+
|
|
559
|
+
4. **Syntax highlighting** - Only `ruby`/`rb` (server-side) and `c`, `bash`/`sh`/`shell`/`console` (client-side) receive syntax highlighting. Other info strings are accepted but not highlighted.
|
|
560
|
+
|
|
561
|
+
5. **Fenced code blocks** - Only triple backticks are supported. Tilde fences (`~~~`) are not supported as they conflict with strikethrough syntax. Four or more backticks for nesting are also not supported.
|
|
562
|
+
|
|
563
|
+
6. **Auto-linking** - RDoc automatically links class and method names in output, even without explicit link syntax.
|
|
564
|
+
|
|
565
|
+
## Comparison with GitHub Flavored Markdown (GFM)
|
|
566
|
+
|
|
567
|
+
This section compares RDoc's Markdown implementation with the
|
|
568
|
+
[GitHub Flavored Markdown Spec](https://github.github.com/gfm/) (Version 0.29-gfm, 2019-04-06).
|
|
569
|
+
|
|
570
|
+
### Block Elements
|
|
571
|
+
|
|
572
|
+
| Feature | GFM | RDoc | Notes |
|
|
573
|
+
|---------|:---:|:----:|-------|
|
|
574
|
+
| ATX Headings (`#`) | ✅ | ✅ | Both support levels 1-6, optional closing `#` |
|
|
575
|
+
| Setext Headings | ✅ | ✅ | `=` for H1, `-` for H2 |
|
|
576
|
+
| Paragraphs | ✅ | ✅ | Full match |
|
|
577
|
+
| Indented Code Blocks | ✅ | ✅ | 4 spaces or 1 tab |
|
|
578
|
+
| Fenced Code (backticks) | ✅ 3+ | ⚠️ 3 only | RDoc doesn't support 4+ backticks for nesting |
|
|
579
|
+
| Fenced Code (tildes) | ✅ `~~~` | ❌ | Conflicts with strikethrough syntax |
|
|
580
|
+
| Info strings (language) | ✅ any | ⚠️ limited | `ruby`/`rb`, `c`, and `bash`/`sh`/`shell`/`console` highlighted; others accepted as CSS class |
|
|
581
|
+
| Blockquotes | ✅ | ✅ | Full match, nested supported |
|
|
582
|
+
| Lazy Continuation | ✅ | ⚠️ | Continuation text is included in blockquote but line break is lost (becomes a space) |
|
|
583
|
+
| Bullet Lists | ✅ | ✅ | `*`, `+`, `-` supported |
|
|
584
|
+
| Ordered Lists | ✅ `.` `)` | ⚠️ `.` only | RDoc doesn't support `)` delimiter; numbers are always renumbered from 1 |
|
|
585
|
+
| Nested Lists | ✅ | ✅ | 4-space indentation |
|
|
586
|
+
| Tables | ✅ | ✅ | Full alignment support |
|
|
587
|
+
| Thematic Breaks | ✅ | ✅ | `---`, `***`, `___` |
|
|
588
|
+
| HTML Blocks | ✅ 7 types | ⚠️ | See below |
|
|
589
|
+
|
|
590
|
+
#### HTML Blocks
|
|
591
|
+
|
|
592
|
+
GFM defines 7 types of HTML blocks:
|
|
593
|
+
|
|
594
|
+
| Type | Description | GFM | RDoc | Notes |
|
|
595
|
+
|------|-------------|:---:|:----:|-------|
|
|
596
|
+
| 1 | `<script>`, `<pre>` | ✅ | ✅ | |
|
|
597
|
+
| 1 | `<style>` | ✅ | ❌ | Available via `css` extension (disabled by default) |
|
|
598
|
+
| 2 | HTML comments `<!-- -->` | ✅ | ✅ | |
|
|
599
|
+
| 3 | Processing instructions `<? ?>` | ✅ | ❌ | |
|
|
600
|
+
| 4 | Declarations `<!DOCTYPE>` | ✅ | ❌ | |
|
|
601
|
+
| 5 | CDATA `<![CDATA[ ]]>` | ✅ | ❌ | |
|
|
602
|
+
| 6 | Block-level tags | ✅ | ⚠️ | |
|
|
603
|
+
| 7 | Any complete open/close tag | ✅ | ❌ | |
|
|
604
|
+
|
|
605
|
+
RDoc uses a whitelist of block-level tags defined in
|
|
606
|
+
[lib/rdoc/markdown.kpeg](https://github.com/ruby/rdoc/blob/master/lib/rdoc/markdown.kpeg)
|
|
607
|
+
(see `HtmlBlockInTags`). HTML5 semantic elements like `<article>`, `<section>`,
|
|
608
|
+
`<nav>`, `<header>`, `<footer>` are not supported.
|
|
609
|
+
|
|
610
|
+
### Inline Elements
|
|
611
|
+
|
|
612
|
+
| Feature | GFM | RDoc | Notes |
|
|
613
|
+
|---------|:---:|:----:|-------|
|
|
614
|
+
| Emphasis `*text*` `_text_` | ✅ | ⚠️ | Intraword emphasis not supported (see [Notes](#notes-and-limitations)) |
|
|
615
|
+
| Strong `**text**` `__text__` | ✅ | ✅ | Full match |
|
|
616
|
+
| Combined `***text***` | ✅ | ✅ | Full match |
|
|
617
|
+
| Code spans | ✅ | ✅ | Multiple backticks supported |
|
|
618
|
+
| Inline links | ✅ | ✅ | Full match |
|
|
619
|
+
| Reference links | ✅ | ✅ | Full match |
|
|
620
|
+
| Link titles | ✅ | ⚠️ | Parsed but not rendered |
|
|
621
|
+
| Images | ✅ | ✅ | Full match |
|
|
622
|
+
| Autolinks `<url>` | ✅ | ✅ | Full match |
|
|
623
|
+
| Hard line breaks | ✅ | ⚠️ | 2+ trailing spaces only; backslash `\` at EOL not supported |
|
|
624
|
+
| Backslash escapes | ✅ | ⚠️ | Subset of GFM's escapable characters (e.g., `~` not escapable) |
|
|
625
|
+
| HTML entities | ✅ | ✅ | Named, decimal, hex |
|
|
626
|
+
| Inline HTML | ✅ | ⚠️ | `<b>` converted to `<strong>`, `<i>` to `<em>`; `<strong>` itself is escaped |
|
|
627
|
+
|
|
628
|
+
### GFM Extensions
|
|
629
|
+
|
|
630
|
+
| Feature | GFM | RDoc | Notes |
|
|
631
|
+
|---------|:---:|:----:|-------|
|
|
632
|
+
| Strikethrough `~~text~~` | ✅ | ✅ | Full match |
|
|
633
|
+
| Task Lists `[ ]` `[x]` | ✅ | ❌ | Not supported |
|
|
634
|
+
| Extended Autolinks | ✅ | ⚠️ | See below |
|
|
635
|
+
| Disallowed Raw HTML | ✅ | ❌ | No security filtering |
|
|
636
|
+
|
|
637
|
+
#### GFM Extended Autolinks
|
|
638
|
+
|
|
639
|
+
GFM automatically converts certain text patterns into links without requiring
|
|
640
|
+
angle brackets (`<>`). RDoc also auto-links URLs and `www.` prefixes through
|
|
641
|
+
its cross-reference system, but the behavior differs from GFM.
|
|
642
|
+
|
|
643
|
+
GFM recognizes these patterns:
|
|
644
|
+
|
|
645
|
+
- `www.example.com` — text starting with `www.` followed by a valid domain
|
|
646
|
+
- `https://example.com` — URLs starting with `http://` or `https://`
|
|
647
|
+
- `user@example.com` — valid email addresses
|
|
648
|
+
|
|
649
|
+
RDoc auto-links `www.` prefixes and `http://`/`https://` URLs similarly to GFM.
|
|
650
|
+
However, bare email addresses like `user@example.com` are not auto-linked;
|
|
651
|
+
use `<user@example.com>` instead.
|
|
652
|
+
|
|
653
|
+
### RDoc-Specific Features (not in GFM)
|
|
654
|
+
|
|
655
|
+
- [Definition Lists](#definition-lists)
|
|
656
|
+
- [Footnotes](#footnotes)
|
|
657
|
+
- [Cross-references](#cross-references)
|
|
658
|
+
- [Anchor Links](#anchor-links)
|
|
659
|
+
- [Directives](#directives)
|