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.
Files changed (218) hide show
  1. checksums.yaml +7 -0
  2. data/rdoc-8.0.0/CONTRIBUTING.md +195 -0
  3. data/rdoc-8.0.0/CVE-2013-0256.rdoc +49 -0
  4. data/rdoc-8.0.0/History.rdoc +1668 -0
  5. data/rdoc-8.0.0/LEGAL.rdoc +56 -0
  6. data/rdoc-8.0.0/LICENSE.rdoc +63 -0
  7. data/rdoc-8.0.0/README.md +236 -0
  8. data/rdoc-8.0.0/RI.md +842 -0
  9. data/rdoc-8.0.0/TODO.rdoc +60 -0
  10. data/rdoc-8.0.0/doc/markup_reference/markdown.md +659 -0
  11. data/rdoc-8.0.0/doc/markup_reference/rdoc.rdoc +1169 -0
  12. data/rdoc-8.0.0/exe/rdoc +43 -0
  13. data/rdoc-8.0.0/exe/ri +12 -0
  14. data/rdoc-8.0.0/lib/rdoc/code_object/alias.rb +98 -0
  15. data/rdoc-8.0.0/lib/rdoc/code_object/any_method.rb +387 -0
  16. data/rdoc-8.0.0/lib/rdoc/code_object/attr.rb +178 -0
  17. data/rdoc-8.0.0/lib/rdoc/code_object/class_module.rb +969 -0
  18. data/rdoc-8.0.0/lib/rdoc/code_object/constant.rb +221 -0
  19. data/rdoc-8.0.0/lib/rdoc/code_object/context/section.rb +182 -0
  20. data/rdoc-8.0.0/lib/rdoc/code_object/context.rb +1238 -0
  21. data/rdoc-8.0.0/lib/rdoc/code_object/extend.rb +9 -0
  22. data/rdoc-8.0.0/lib/rdoc/code_object/include.rb +9 -0
  23. data/rdoc-8.0.0/lib/rdoc/code_object/method_attr.rb +417 -0
  24. data/rdoc-8.0.0/lib/rdoc/code_object/mixin.rb +123 -0
  25. data/rdoc-8.0.0/lib/rdoc/code_object/normal_class.rb +92 -0
  26. data/rdoc-8.0.0/lib/rdoc/code_object/normal_module.rb +73 -0
  27. data/rdoc-8.0.0/lib/rdoc/code_object/require.rb +51 -0
  28. data/rdoc-8.0.0/lib/rdoc/code_object/single_class.rb +30 -0
  29. data/rdoc-8.0.0/lib/rdoc/code_object/top_level.rb +286 -0
  30. data/rdoc-8.0.0/lib/rdoc/code_object.rb +393 -0
  31. data/rdoc-8.0.0/lib/rdoc/code_objects.rb +5 -0
  32. data/rdoc-8.0.0/lib/rdoc/comment.rb +353 -0
  33. data/rdoc-8.0.0/lib/rdoc/cross_reference.rb +215 -0
  34. data/rdoc-8.0.0/lib/rdoc/encoding.rb +120 -0
  35. data/rdoc-8.0.0/lib/rdoc/erb_partial.rb +18 -0
  36. data/rdoc-8.0.0/lib/rdoc/erbio.rb +37 -0
  37. data/rdoc-8.0.0/lib/rdoc/generator/aliki.rb +200 -0
  38. data/rdoc-8.0.0/lib/rdoc/generator/darkfish.rb +824 -0
  39. data/rdoc-8.0.0/lib/rdoc/generator/json_index.rb +284 -0
  40. data/rdoc-8.0.0/lib/rdoc/generator/markup.rb +196 -0
  41. data/rdoc-8.0.0/lib/rdoc/generator/pot/message_extractor.rb +68 -0
  42. data/rdoc-8.0.0/lib/rdoc/generator/pot/po.rb +84 -0
  43. data/rdoc-8.0.0/lib/rdoc/generator/pot/po_entry.rb +141 -0
  44. data/rdoc-8.0.0/lib/rdoc/generator/pot.rb +94 -0
  45. data/rdoc-8.0.0/lib/rdoc/generator/ri.rb +30 -0
  46. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/DESIGN.md +536 -0
  47. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_aside_toc.rhtml +8 -0
  48. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_footer.rhtml +23 -0
  49. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_head.rhtml +163 -0
  50. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_header.rhtml +56 -0
  51. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_icons.rhtml +208 -0
  52. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_ancestors.rhtml +16 -0
  53. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_classes.rhtml +15 -0
  54. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_extends.rhtml +27 -0
  55. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_includes.rhtml +27 -0
  56. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_installed.rhtml +16 -0
  57. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_methods.rhtml +41 -0
  58. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_pages.rhtml +67 -0
  59. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_search.rhtml +15 -0
  60. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_sections.rhtml +21 -0
  61. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/_sidebar_toggle.rhtml +3 -0
  62. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/class.rhtml +230 -0
  63. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/css/rdoc.css +2181 -0
  64. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/index.rhtml +22 -0
  65. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/aliki.js +513 -0
  66. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/bash_highlighter.js +167 -0
  67. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/c_highlighter.js +299 -0
  68. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/search_controller.js +129 -0
  69. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/search_navigation.js +105 -0
  70. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/search_ranker.js +239 -0
  71. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/js/theme-toggle.js +112 -0
  72. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/page.rhtml +18 -0
  73. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/servlet_not_found.rhtml +14 -0
  74. data/rdoc-8.0.0/lib/rdoc/generator/template/aliki/servlet_root.rhtml +65 -0
  75. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_footer.rhtml +5 -0
  76. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_head.rhtml +43 -0
  77. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +5 -0
  78. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +17 -0
  79. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +17 -0
  80. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +16 -0
  81. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +21 -0
  82. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_navigation.rhtml +11 -0
  83. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +32 -0
  84. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +6 -0
  85. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_search.rhtml +15 -0
  86. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +11 -0
  87. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +39 -0
  88. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/_sidebar_toggle.rhtml +3 -0
  89. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/class.rhtml +220 -0
  90. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/css/fonts.css +167 -0
  91. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/css/rdoc.css +701 -0
  92. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-Light.ttf +0 -0
  93. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-LightItalic.ttf +0 -0
  94. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-Regular.ttf +0 -0
  95. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/Lato-RegularItalic.ttf +0 -0
  96. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Bold.ttf +0 -0
  97. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Regular.ttf +0 -0
  98. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/add.png +0 -0
  99. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/arrow_up.png +0 -0
  100. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/brick.png +0 -0
  101. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/brick_link.png +0 -0
  102. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bug.png +0 -0
  103. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bullet_black.png +0 -0
  104. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bullet_toggle_minus.png +0 -0
  105. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/bullet_toggle_plus.png +0 -0
  106. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/date.png +0 -0
  107. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/delete.png +0 -0
  108. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/find.png +0 -0
  109. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/loadingAnimation.gif +0 -0
  110. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/macFFBgHack.png +0 -0
  111. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/package.png +0 -0
  112. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/page_green.png +0 -0
  113. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/page_white_text.png +0 -0
  114. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/page_white_width.png +0 -0
  115. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/plugin.png +0 -0
  116. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/ruby.png +0 -0
  117. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/tag_blue.png +0 -0
  118. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/tag_green.png +0 -0
  119. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/transparent.png +0 -0
  120. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/wrench.png +0 -0
  121. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/wrench_orange.png +0 -0
  122. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/images/zoom.png +0 -0
  123. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/index.rhtml +24 -0
  124. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/js/darkfish.js +140 -0
  125. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/js/search.js +120 -0
  126. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/page.rhtml +19 -0
  127. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/servlet_not_found.rhtml +21 -0
  128. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/servlet_root.rhtml +65 -0
  129. data/rdoc-8.0.0/lib/rdoc/generator/template/darkfish/table_of_contents.rhtml +72 -0
  130. data/rdoc-8.0.0/lib/rdoc/generator/template/json_index/js/navigation.js +105 -0
  131. data/rdoc-8.0.0/lib/rdoc/generator/template/json_index/js/searcher.js +271 -0
  132. data/rdoc-8.0.0/lib/rdoc/generator.rb +52 -0
  133. data/rdoc-8.0.0/lib/rdoc/i18n/locale.rb +102 -0
  134. data/rdoc-8.0.0/lib/rdoc/i18n/text.rb +126 -0
  135. data/rdoc-8.0.0/lib/rdoc/i18n.rb +10 -0
  136. data/rdoc-8.0.0/lib/rdoc/known_classes.rb +74 -0
  137. data/rdoc-8.0.0/lib/rdoc/markdown/entities.rb +2131 -0
  138. data/rdoc-8.0.0/lib/rdoc/markdown/literals.kpeg +21 -0
  139. data/rdoc-8.0.0/lib/rdoc/markdown/literals.rb +454 -0
  140. data/rdoc-8.0.0/lib/rdoc/markdown.kpeg +1315 -0
  141. data/rdoc-8.0.0/lib/rdoc/markdown.rb +16865 -0
  142. data/rdoc-8.0.0/lib/rdoc/markup/blank_line.rb +29 -0
  143. data/rdoc-8.0.0/lib/rdoc/markup/block_quote.rb +14 -0
  144. data/rdoc-8.0.0/lib/rdoc/markup/document.rb +164 -0
  145. data/rdoc-8.0.0/lib/rdoc/markup/element.rb +21 -0
  146. data/rdoc-8.0.0/lib/rdoc/markup/formatter.rb +285 -0
  147. data/rdoc-8.0.0/lib/rdoc/markup/hard_break.rb +34 -0
  148. data/rdoc-8.0.0/lib/rdoc/markup/heading.rb +170 -0
  149. data/rdoc-8.0.0/lib/rdoc/markup/include.rb +42 -0
  150. data/rdoc-8.0.0/lib/rdoc/markup/indented_paragraph.rb +47 -0
  151. data/rdoc-8.0.0/lib/rdoc/markup/inline_parser.rb +312 -0
  152. data/rdoc-8.0.0/lib/rdoc/markup/list.rb +101 -0
  153. data/rdoc-8.0.0/lib/rdoc/markup/list_item.rb +99 -0
  154. data/rdoc-8.0.0/lib/rdoc/markup/paragraph.rb +28 -0
  155. data/rdoc-8.0.0/lib/rdoc/markup/parser.rb +585 -0
  156. data/rdoc-8.0.0/lib/rdoc/markup/pre_process.rb +317 -0
  157. data/rdoc-8.0.0/lib/rdoc/markup/raw.rb +66 -0
  158. data/rdoc-8.0.0/lib/rdoc/markup/rule.rb +20 -0
  159. data/rdoc-8.0.0/lib/rdoc/markup/table.rb +64 -0
  160. data/rdoc-8.0.0/lib/rdoc/markup/to_ansi.rb +144 -0
  161. data/rdoc-8.0.0/lib/rdoc/markup/to_bs.rb +86 -0
  162. data/rdoc-8.0.0/lib/rdoc/markup/to_html.rb +682 -0
  163. data/rdoc-8.0.0/lib/rdoc/markup/to_html_crossref.rb +261 -0
  164. data/rdoc-8.0.0/lib/rdoc/markup/to_html_snippet.rb +287 -0
  165. data/rdoc-8.0.0/lib/rdoc/markup/to_joined_paragraph.rb +41 -0
  166. data/rdoc-8.0.0/lib/rdoc/markup/to_label.rb +84 -0
  167. data/rdoc-8.0.0/lib/rdoc/markup/to_markdown.rb +215 -0
  168. data/rdoc-8.0.0/lib/rdoc/markup/to_rdoc.rb +421 -0
  169. data/rdoc-8.0.0/lib/rdoc/markup/to_table_of_contents.rb +88 -0
  170. data/rdoc-8.0.0/lib/rdoc/markup/to_test.rb +77 -0
  171. data/rdoc-8.0.0/lib/rdoc/markup/to_tt_only.rb +107 -0
  172. data/rdoc-8.0.0/lib/rdoc/markup/verbatim.rb +83 -0
  173. data/rdoc-8.0.0/lib/rdoc/markup.rb +219 -0
  174. data/rdoc-8.0.0/lib/rdoc/options.rb +1412 -0
  175. data/rdoc-8.0.0/lib/rdoc/parser/c.rb +1227 -0
  176. data/rdoc-8.0.0/lib/rdoc/parser/changelog.rb +379 -0
  177. data/rdoc-8.0.0/lib/rdoc/parser/markdown.rb +22 -0
  178. data/rdoc-8.0.0/lib/rdoc/parser/rbs.rb +275 -0
  179. data/rdoc-8.0.0/lib/rdoc/parser/rd.rb +22 -0
  180. data/rdoc-8.0.0/lib/rdoc/parser/ruby.rb +1266 -0
  181. data/rdoc-8.0.0/lib/rdoc/parser/ruby_colorizer.rb +253 -0
  182. data/rdoc-8.0.0/lib/rdoc/parser/simple.rb +44 -0
  183. data/rdoc-8.0.0/lib/rdoc/parser/text.rb +11 -0
  184. data/rdoc-8.0.0/lib/rdoc/parser.rb +298 -0
  185. data/rdoc-8.0.0/lib/rdoc/rbs_helper.rb +186 -0
  186. data/rdoc-8.0.0/lib/rdoc/rd/block_parser.rb +1706 -0
  187. data/rdoc-8.0.0/lib/rdoc/rd/block_parser.ry +643 -0
  188. data/rdoc-8.0.0/lib/rdoc/rd/inline.rb +71 -0
  189. data/rdoc-8.0.0/lib/rdoc/rd/inline_parser.rb +1854 -0
  190. data/rdoc-8.0.0/lib/rdoc/rd/inline_parser.ry +593 -0
  191. data/rdoc-8.0.0/lib/rdoc/rd.rb +99 -0
  192. data/rdoc-8.0.0/lib/rdoc/rdoc.rb +724 -0
  193. data/rdoc-8.0.0/lib/rdoc/ri/driver.rb +1572 -0
  194. data/rdoc-8.0.0/lib/rdoc/ri/formatter.rb +6 -0
  195. data/rdoc-8.0.0/lib/rdoc/ri/paths.rb +171 -0
  196. data/rdoc-8.0.0/lib/rdoc/ri/servlet.rb +452 -0
  197. data/rdoc-8.0.0/lib/rdoc/ri/store.rb +6 -0
  198. data/rdoc-8.0.0/lib/rdoc/ri/task.rb +71 -0
  199. data/rdoc-8.0.0/lib/rdoc/ri.rb +21 -0
  200. data/rdoc-8.0.0/lib/rdoc/rubygems_hook.rb +327 -0
  201. data/rdoc-8.0.0/lib/rdoc/server.rb +460 -0
  202. data/rdoc-8.0.0/lib/rdoc/stats/normal.rb +58 -0
  203. data/rdoc-8.0.0/lib/rdoc/stats/quiet.rb +59 -0
  204. data/rdoc-8.0.0/lib/rdoc/stats/verbose.rb +44 -0
  205. data/rdoc-8.0.0/lib/rdoc/stats.rb +484 -0
  206. data/rdoc-8.0.0/lib/rdoc/store.rb +1205 -0
  207. data/rdoc-8.0.0/lib/rdoc/task.rb +355 -0
  208. data/rdoc-8.0.0/lib/rdoc/text.rb +244 -0
  209. data/rdoc-8.0.0/lib/rdoc/token_stream.rb +104 -0
  210. data/rdoc-8.0.0/lib/rdoc/tom_doc.rb +257 -0
  211. data/rdoc-8.0.0/lib/rdoc/version.rb +10 -0
  212. data/rdoc-8.0.0/lib/rdoc.rb +239 -0
  213. data/rdoc-8.0.0/lib/rubygems_plugin.rb +14 -0
  214. data/rdoc-8.0.0/man/ri.1 +249 -0
  215. data/rdoc-8.0.0/rdoc-logo.svg +43 -0
  216. data/rdoc-8.0.0/rdoc.gemspec +74 -0
  217. data/super-quick-rb.gemspec +12 -0
  218. 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
+ ![Alt text](path/to/image.png)
405
+ ```
406
+
407
+ Image as a link:
408
+
409
+ ```markdown
410
+ [![Alt text](image.png)](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
+ &copy; &mdash; &pi;
496
+ &#65; &#x41;
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)