gitdown 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (416) hide show
  1. data/AUTHORS +1 -0
  2. data/COPYING +24 -0
  3. data/GPL +674 -0
  4. data/README +43 -0
  5. data/Rakefile +370 -0
  6. data/VERSION +1 -0
  7. data/benchmark/benchmark.rb +34 -0
  8. data/benchmark/benchmark.sh +74 -0
  9. data/benchmark/generate_data.rb +119 -0
  10. data/benchmark/mdbasics.text +306 -0
  11. data/benchmark/mdsyntax.text +888 -0
  12. data/benchmark/testing.sh +9 -0
  13. data/benchmark/timing.sh +10 -0
  14. data/bin/kramdown +78 -0
  15. data/data/kramdown/document.html +18 -0
  16. data/data/kramdown/document.latex +43 -0
  17. data/doc/default.scss.css +530 -0
  18. data/doc/default.template +80 -0
  19. data/doc/documentation.page +71 -0
  20. data/doc/index.page +98 -0
  21. data/doc/installation.page +88 -0
  22. data/doc/links.markdown +6 -0
  23. data/doc/news.feed +10 -0
  24. data/doc/news.page +28 -0
  25. data/doc/quickref.page +585 -0
  26. data/doc/syntax.page +1644 -0
  27. data/doc/tests.page +52 -0
  28. data/doc/virtual +2 -0
  29. data/lib/kramdown.rb +23 -0
  30. data/lib/kramdown/compatibility.rb +35 -0
  31. data/lib/kramdown/converter.rb +41 -0
  32. data/lib/kramdown/converter/base.rb +169 -0
  33. data/lib/kramdown/converter/html.rb +410 -0
  34. data/lib/kramdown/converter/kramdown.rb +422 -0
  35. data/lib/kramdown/converter/latex.rb +607 -0
  36. data/lib/kramdown/converter/toc.rb +82 -0
  37. data/lib/kramdown/document.rb +117 -0
  38. data/lib/kramdown/element.rb +524 -0
  39. data/lib/kramdown/error.rb +30 -0
  40. data/lib/kramdown/options.rb +373 -0
  41. data/lib/kramdown/parser.rb +40 -0
  42. data/lib/kramdown/parser/base.rb +136 -0
  43. data/lib/kramdown/parser/github_markdown.rb +44 -0
  44. data/lib/kramdown/parser/github_markdown/github_codeblock.rb +44 -0
  45. data/lib/kramdown/parser/html.rb +570 -0
  46. data/lib/kramdown/parser/kramdown.rb +338 -0
  47. data/lib/kramdown/parser/kramdown/abbreviation.rb +71 -0
  48. data/lib/kramdown/parser/kramdown/autolink.rb +53 -0
  49. data/lib/kramdown/parser/kramdown/blank_line.rb +43 -0
  50. data/lib/kramdown/parser/kramdown/block_boundary.rb +46 -0
  51. data/lib/kramdown/parser/kramdown/blockquote.rb +51 -0
  52. data/lib/kramdown/parser/kramdown/codeblock.rb +63 -0
  53. data/lib/kramdown/parser/kramdown/codespan.rb +56 -0
  54. data/lib/kramdown/parser/kramdown/emphasis.rb +70 -0
  55. data/lib/kramdown/parser/kramdown/eob.rb +39 -0
  56. data/lib/kramdown/parser/kramdown/escaped_chars.rb +38 -0
  57. data/lib/kramdown/parser/kramdown/extensions.rb +204 -0
  58. data/lib/kramdown/parser/kramdown/footnote.rb +74 -0
  59. data/lib/kramdown/parser/kramdown/header.rb +68 -0
  60. data/lib/kramdown/parser/kramdown/horizontal_rule.rb +39 -0
  61. data/lib/kramdown/parser/kramdown/html.rb +169 -0
  62. data/lib/kramdown/parser/kramdown/html_entity.rb +44 -0
  63. data/lib/kramdown/parser/kramdown/line_break.rb +38 -0
  64. data/lib/kramdown/parser/kramdown/link.rb +148 -0
  65. data/lib/kramdown/parser/kramdown/list.rb +240 -0
  66. data/lib/kramdown/parser/kramdown/math.rb +64 -0
  67. data/lib/kramdown/parser/kramdown/paragraph.rb +63 -0
  68. data/lib/kramdown/parser/kramdown/smart_quotes.rb +214 -0
  69. data/lib/kramdown/parser/kramdown/table.rb +178 -0
  70. data/lib/kramdown/parser/kramdown/typographic_symbol.rb +52 -0
  71. data/lib/kramdown/parser/markdown.rb +69 -0
  72. data/lib/kramdown/utils.rb +37 -0
  73. data/lib/kramdown/utils/entities.rb +348 -0
  74. data/lib/kramdown/utils/html.rb +85 -0
  75. data/lib/kramdown/utils/ordered_hash.rb +100 -0
  76. data/lib/kramdown/version.rb +28 -0
  77. data/setup.rb +1585 -0
  78. data/test/run_tests.rb +59 -0
  79. data/test/test_files.rb +197 -0
  80. data/test/testcases/block/01_blank_line/spaces.html +1 -0
  81. data/test/testcases/block/01_blank_line/spaces.text +3 -0
  82. data/test/testcases/block/01_blank_line/tabs.html +1 -0
  83. data/test/testcases/block/01_blank_line/tabs.text +6 -0
  84. data/test/testcases/block/02_eob/beginning.html +1 -0
  85. data/test/testcases/block/02_eob/beginning.text +3 -0
  86. data/test/testcases/block/02_eob/end.html +1 -0
  87. data/test/testcases/block/02_eob/end.text +3 -0
  88. data/test/testcases/block/02_eob/middle.html +1 -0
  89. data/test/testcases/block/02_eob/middle.text +5 -0
  90. data/test/testcases/block/03_paragraph/indented.html +18 -0
  91. data/test/testcases/block/03_paragraph/indented.text +19 -0
  92. data/test/testcases/block/03_paragraph/no_newline_at_end.html +5 -0
  93. data/test/testcases/block/03_paragraph/no_newline_at_end.text +5 -0
  94. data/test/testcases/block/03_paragraph/one_para.html +1 -0
  95. data/test/testcases/block/03_paragraph/one_para.text +1 -0
  96. data/test/testcases/block/03_paragraph/two_para.html +4 -0
  97. data/test/testcases/block/03_paragraph/two_para.text +4 -0
  98. data/test/testcases/block/04_header/atx_header.html +37 -0
  99. data/test/testcases/block/04_header/atx_header.text +34 -0
  100. data/test/testcases/block/04_header/atx_header_no_newline_at_end.html +1 -0
  101. data/test/testcases/block/04_header/atx_header_no_newline_at_end.text +1 -0
  102. data/test/testcases/block/04_header/setext_header.html +30 -0
  103. data/test/testcases/block/04_header/setext_header.html.19 +30 -0
  104. data/test/testcases/block/04_header/setext_header.text +36 -0
  105. data/test/testcases/block/04_header/setext_header_no_newline_at_end.html +1 -0
  106. data/test/testcases/block/04_header/setext_header_no_newline_at_end.text +2 -0
  107. data/test/testcases/block/04_header/with_auto_id_prefix.html +3 -0
  108. data/test/testcases/block/04_header/with_auto_id_prefix.options +2 -0
  109. data/test/testcases/block/04_header/with_auto_id_prefix.text +3 -0
  110. data/test/testcases/block/04_header/with_auto_ids.html +17 -0
  111. data/test/testcases/block/04_header/with_auto_ids.options +1 -0
  112. data/test/testcases/block/04_header/with_auto_ids.text +19 -0
  113. data/test/testcases/block/05_blockquote/indented.html +25 -0
  114. data/test/testcases/block/05_blockquote/indented.text +14 -0
  115. data/test/testcases/block/05_blockquote/lazy.html +34 -0
  116. data/test/testcases/block/05_blockquote/lazy.text +20 -0
  117. data/test/testcases/block/05_blockquote/nested.html +10 -0
  118. data/test/testcases/block/05_blockquote/nested.text +6 -0
  119. data/test/testcases/block/05_blockquote/no_newline_at_end.html +4 -0
  120. data/test/testcases/block/05_blockquote/no_newline_at_end.text +2 -0
  121. data/test/testcases/block/05_blockquote/very_long_line.html +3 -0
  122. data/test/testcases/block/05_blockquote/very_long_line.text +1 -0
  123. data/test/testcases/block/05_blockquote/with_code_blocks.html +15 -0
  124. data/test/testcases/block/05_blockquote/with_code_blocks.text +11 -0
  125. data/test/testcases/block/06_codeblock/error.html +4 -0
  126. data/test/testcases/block/06_codeblock/error.text +4 -0
  127. data/test/testcases/block/06_codeblock/lazy.html +4 -0
  128. data/test/testcases/block/06_codeblock/lazy.text +5 -0
  129. data/test/testcases/block/06_codeblock/no_newline_at_end.html +2 -0
  130. data/test/testcases/block/06_codeblock/no_newline_at_end.text +1 -0
  131. data/test/testcases/block/06_codeblock/no_newline_at_end_1.html +2 -0
  132. data/test/testcases/block/06_codeblock/no_newline_at_end_1.text +2 -0
  133. data/test/testcases/block/06_codeblock/normal.html +13 -0
  134. data/test/testcases/block/06_codeblock/normal.text +10 -0
  135. data/test/testcases/block/06_codeblock/tilde_syntax.html +7 -0
  136. data/test/testcases/block/06_codeblock/tilde_syntax.text +9 -0
  137. data/test/testcases/block/06_codeblock/whitespace.html +3 -0
  138. data/test/testcases/block/06_codeblock/whitespace.text +3 -0
  139. data/test/testcases/block/06_codeblock/with_blank_line.html +13 -0
  140. data/test/testcases/block/06_codeblock/with_blank_line.text +12 -0
  141. data/test/testcases/block/06_codeblock/with_eob_marker.html +6 -0
  142. data/test/testcases/block/06_codeblock/with_eob_marker.text +5 -0
  143. data/test/testcases/block/06_codeblock/with_ial.html +6 -0
  144. data/test/testcases/block/06_codeblock/with_ial.text +5 -0
  145. data/test/testcases/block/07_horizontal_rule/error.html +7 -0
  146. data/test/testcases/block/07_horizontal_rule/error.html.19 +7 -0
  147. data/test/testcases/block/07_horizontal_rule/error.text +7 -0
  148. data/test/testcases/block/07_horizontal_rule/normal.html +17 -0
  149. data/test/testcases/block/07_horizontal_rule/normal.text +17 -0
  150. data/test/testcases/block/07_horizontal_rule/sepspaces.html +3 -0
  151. data/test/testcases/block/07_horizontal_rule/sepspaces.text +3 -0
  152. data/test/testcases/block/07_horizontal_rule/septabs.html +3 -0
  153. data/test/testcases/block/07_horizontal_rule/septabs.text +3 -0
  154. data/test/testcases/block/08_list/escaping.html +17 -0
  155. data/test/testcases/block/08_list/escaping.text +17 -0
  156. data/test/testcases/block/08_list/item_ial.html +10 -0
  157. data/test/testcases/block/08_list/item_ial.text +8 -0
  158. data/test/testcases/block/08_list/lazy.html +39 -0
  159. data/test/testcases/block/08_list/lazy.text +29 -0
  160. data/test/testcases/block/08_list/list_and_hr.html +9 -0
  161. data/test/testcases/block/08_list/list_and_hr.text +5 -0
  162. data/test/testcases/block/08_list/list_and_others.html +40 -0
  163. data/test/testcases/block/08_list/list_and_others.text +26 -0
  164. data/test/testcases/block/08_list/mixed.html +117 -0
  165. data/test/testcases/block/08_list/mixed.text +66 -0
  166. data/test/testcases/block/08_list/nested.html +17 -0
  167. data/test/testcases/block/08_list/nested.text +7 -0
  168. data/test/testcases/block/08_list/other_first_element.html +39 -0
  169. data/test/testcases/block/08_list/other_first_element.text +18 -0
  170. data/test/testcases/block/08_list/simple_ol.html +19 -0
  171. data/test/testcases/block/08_list/simple_ol.text +13 -0
  172. data/test/testcases/block/08_list/simple_ul.html +48 -0
  173. data/test/testcases/block/08_list/simple_ul.text +36 -0
  174. data/test/testcases/block/08_list/single_item.html +3 -0
  175. data/test/testcases/block/08_list/single_item.text +1 -0
  176. data/test/testcases/block/08_list/special_cases.html +55 -0
  177. data/test/testcases/block/08_list/special_cases.text +35 -0
  178. data/test/testcases/block/09_html/comment.html +18 -0
  179. data/test/testcases/block/09_html/comment.text +15 -0
  180. data/test/testcases/block/09_html/content_model/deflists.html +6 -0
  181. data/test/testcases/block/09_html/content_model/deflists.options +1 -0
  182. data/test/testcases/block/09_html/content_model/deflists.text +6 -0
  183. data/test/testcases/block/09_html/content_model/tables.html +14 -0
  184. data/test/testcases/block/09_html/content_model/tables.options +1 -0
  185. data/test/testcases/block/09_html/content_model/tables.text +14 -0
  186. data/test/testcases/block/09_html/html_and_codeblocks.html +15 -0
  187. data/test/testcases/block/09_html/html_and_codeblocks.options +1 -0
  188. data/test/testcases/block/09_html/html_and_codeblocks.text +13 -0
  189. data/test/testcases/block/09_html/html_and_headers.html +5 -0
  190. data/test/testcases/block/09_html/html_and_headers.text +6 -0
  191. data/test/testcases/block/09_html/html_to_native/code.html +10 -0
  192. data/test/testcases/block/09_html/html_to_native/code.text +9 -0
  193. data/test/testcases/block/09_html/html_to_native/comment.html +7 -0
  194. data/test/testcases/block/09_html/html_to_native/comment.text +8 -0
  195. data/test/testcases/block/09_html/html_to_native/emphasis.html +6 -0
  196. data/test/testcases/block/09_html/html_to_native/emphasis.text +6 -0
  197. data/test/testcases/block/09_html/html_to_native/entity.html +1 -0
  198. data/test/testcases/block/09_html/html_to_native/entity.text +1 -0
  199. data/test/testcases/block/09_html/html_to_native/header.html +6 -0
  200. data/test/testcases/block/09_html/html_to_native/header.options +2 -0
  201. data/test/testcases/block/09_html/html_to_native/header.text +6 -0
  202. data/test/testcases/block/09_html/html_to_native/list_dl.html +8 -0
  203. data/test/testcases/block/09_html/html_to_native/list_dl.text +8 -0
  204. data/test/testcases/block/09_html/html_to_native/list_ol.html +15 -0
  205. data/test/testcases/block/09_html/html_to_native/list_ol.text +17 -0
  206. data/test/testcases/block/09_html/html_to_native/list_ul.html +19 -0
  207. data/test/testcases/block/09_html/html_to_native/list_ul.text +22 -0
  208. data/test/testcases/block/09_html/html_to_native/options +1 -0
  209. data/test/testcases/block/09_html/html_to_native/paragraph.html +3 -0
  210. data/test/testcases/block/09_html/html_to_native/paragraph.text +4 -0
  211. data/test/testcases/block/09_html/html_to_native/table_normal.html +12 -0
  212. data/test/testcases/block/09_html/html_to_native/table_normal.text +12 -0
  213. data/test/testcases/block/09_html/html_to_native/table_simple.html +48 -0
  214. data/test/testcases/block/09_html/html_to_native/table_simple.text +56 -0
  215. data/test/testcases/block/09_html/html_to_native/typography.html +1 -0
  216. data/test/testcases/block/09_html/html_to_native/typography.html.19 +1 -0
  217. data/test/testcases/block/09_html/html_to_native/typography.text +1 -0
  218. data/test/testcases/block/09_html/invalid_html_1.html +5 -0
  219. data/test/testcases/block/09_html/invalid_html_1.text +5 -0
  220. data/test/testcases/block/09_html/invalid_html_2.html +5 -0
  221. data/test/testcases/block/09_html/invalid_html_2.text +5 -0
  222. data/test/testcases/block/09_html/markdown_attr.html +38 -0
  223. data/test/testcases/block/09_html/markdown_attr.text +38 -0
  224. data/test/testcases/block/09_html/not_parsed.html +24 -0
  225. data/test/testcases/block/09_html/not_parsed.text +24 -0
  226. data/test/testcases/block/09_html/parse_as_raw.html +35 -0
  227. data/test/testcases/block/09_html/parse_as_raw.htmlinput +34 -0
  228. data/test/testcases/block/09_html/parse_as_raw.options +1 -0
  229. data/test/testcases/block/09_html/parse_as_raw.text +33 -0
  230. data/test/testcases/block/09_html/parse_as_span.html +12 -0
  231. data/test/testcases/block/09_html/parse_as_span.htmlinput +12 -0
  232. data/test/testcases/block/09_html/parse_as_span.options +1 -0
  233. data/test/testcases/block/09_html/parse_as_span.text +9 -0
  234. data/test/testcases/block/09_html/parse_block_html.html +21 -0
  235. data/test/testcases/block/09_html/parse_block_html.options +1 -0
  236. data/test/testcases/block/09_html/parse_block_html.text +17 -0
  237. data/test/testcases/block/09_html/processing_instruction.html +13 -0
  238. data/test/testcases/block/09_html/processing_instruction.text +12 -0
  239. data/test/testcases/block/09_html/simple.html +64 -0
  240. data/test/testcases/block/09_html/simple.html.19 +64 -0
  241. data/test/testcases/block/09_html/simple.options +1 -0
  242. data/test/testcases/block/09_html/simple.text +59 -0
  243. data/test/testcases/block/10_ald/simple.html +2 -0
  244. data/test/testcases/block/10_ald/simple.text +8 -0
  245. data/test/testcases/block/11_ial/auto_id_and_ial.html +1 -0
  246. data/test/testcases/block/11_ial/auto_id_and_ial.options +1 -0
  247. data/test/testcases/block/11_ial/auto_id_and_ial.text +2 -0
  248. data/test/testcases/block/11_ial/nested.html +11 -0
  249. data/test/testcases/block/11_ial/nested.text +15 -0
  250. data/test/testcases/block/11_ial/simple.html +25 -0
  251. data/test/testcases/block/11_ial/simple.text +34 -0
  252. data/test/testcases/block/12_extension/comment.html +8 -0
  253. data/test/testcases/block/12_extension/comment.text +12 -0
  254. data/test/testcases/block/12_extension/ignored.html +8 -0
  255. data/test/testcases/block/12_extension/ignored.text +8 -0
  256. data/test/testcases/block/12_extension/nomarkdown.html +10 -0
  257. data/test/testcases/block/12_extension/nomarkdown.kramdown +20 -0
  258. data/test/testcases/block/12_extension/nomarkdown.latex +13 -0
  259. data/test/testcases/block/12_extension/nomarkdown.text +21 -0
  260. data/test/testcases/block/12_extension/options.html +21 -0
  261. data/test/testcases/block/12_extension/options.text +21 -0
  262. data/test/testcases/block/12_extension/options2.html +10 -0
  263. data/test/testcases/block/12_extension/options2.text +5 -0
  264. data/test/testcases/block/12_extension/options3.html +7 -0
  265. data/test/testcases/block/12_extension/options3.text +7 -0
  266. data/test/testcases/block/13_definition_list/definition_at_beginning.html +1 -0
  267. data/test/testcases/block/13_definition_list/definition_at_beginning.text +1 -0
  268. data/test/testcases/block/13_definition_list/item_ial.html +12 -0
  269. data/test/testcases/block/13_definition_list/item_ial.text +8 -0
  270. data/test/testcases/block/13_definition_list/multiple_terms.html +13 -0
  271. data/test/testcases/block/13_definition_list/multiple_terms.text +10 -0
  272. data/test/testcases/block/13_definition_list/no_def_list.html +2 -0
  273. data/test/testcases/block/13_definition_list/no_def_list.text +2 -0
  274. data/test/testcases/block/13_definition_list/para_wrapping.html +10 -0
  275. data/test/testcases/block/13_definition_list/para_wrapping.text +6 -0
  276. data/test/testcases/block/13_definition_list/separated_by_eob.html +8 -0
  277. data/test/testcases/block/13_definition_list/separated_by_eob.text +5 -0
  278. data/test/testcases/block/13_definition_list/simple.html +8 -0
  279. data/test/testcases/block/13_definition_list/simple.text +7 -0
  280. data/test/testcases/block/13_definition_list/styled_terms.html +4 -0
  281. data/test/testcases/block/13_definition_list/styled_terms.text +2 -0
  282. data/test/testcases/block/13_definition_list/too_much_space.html +3 -0
  283. data/test/testcases/block/13_definition_list/too_much_space.text +4 -0
  284. data/test/testcases/block/13_definition_list/with_blocks.html +38 -0
  285. data/test/testcases/block/13_definition_list/with_blocks.text +24 -0
  286. data/test/testcases/block/14_table/errors.html +8 -0
  287. data/test/testcases/block/14_table/errors.text +9 -0
  288. data/test/testcases/block/14_table/escaping.html +52 -0
  289. data/test/testcases/block/14_table/escaping.text +19 -0
  290. data/test/testcases/block/14_table/footer.html +65 -0
  291. data/test/testcases/block/14_table/footer.text +25 -0
  292. data/test/testcases/block/14_table/header.html +96 -0
  293. data/test/testcases/block/14_table/header.text +32 -0
  294. data/test/testcases/block/14_table/no_table.html +3 -0
  295. data/test/testcases/block/14_table/no_table.text +3 -0
  296. data/test/testcases/block/14_table/simple.html +177 -0
  297. data/test/testcases/block/14_table/simple.html.19 +177 -0
  298. data/test/testcases/block/14_table/simple.text +49 -0
  299. data/test/testcases/block/14_table/table_with_footnote.html +25 -0
  300. data/test/testcases/block/14_table/table_with_footnote.latex +11 -0
  301. data/test/testcases/block/14_table/table_with_footnote.text +6 -0
  302. data/test/testcases/block/15_math/normal.html +26 -0
  303. data/test/testcases/block/15_math/normal.text +28 -0
  304. data/test/testcases/block/16_toc/no_toc.html +33 -0
  305. data/test/testcases/block/16_toc/no_toc.options +1 -0
  306. data/test/testcases/block/16_toc/no_toc.text +16 -0
  307. data/test/testcases/block/16_toc/toc_levels.html +24 -0
  308. data/test/testcases/block/16_toc/toc_levels.options +1 -0
  309. data/test/testcases/block/16_toc/toc_levels.text +16 -0
  310. data/test/testcases/block/17_github_codeblock/backtick_syntax.html +7 -0
  311. data/test/testcases/block/17_github_codeblock/backtick_syntax.text +9 -0
  312. data/test/testcases/block/17_github_codeblock/error.html +4 -0
  313. data/test/testcases/block/17_github_codeblock/error.text +4 -0
  314. data/test/testcases/block/17_github_codeblock/no_newline_at_end.html +2 -0
  315. data/test/testcases/block/17_github_codeblock/no_newline_at_end.text +3 -0
  316. data/test/testcases/encoding.html +46 -0
  317. data/test/testcases/encoding.text +28 -0
  318. data/test/testcases/span/01_link/empty.html +5 -0
  319. data/test/testcases/span/01_link/empty.text +5 -0
  320. data/test/testcases/span/01_link/image_in_a.html +5 -0
  321. data/test/testcases/span/01_link/image_in_a.text +5 -0
  322. data/test/testcases/span/01_link/imagelinks.html +14 -0
  323. data/test/testcases/span/01_link/imagelinks.text +16 -0
  324. data/test/testcases/span/01_link/inline.html +46 -0
  325. data/test/testcases/span/01_link/inline.html.19 +46 -0
  326. data/test/testcases/span/01_link/inline.text +48 -0
  327. data/test/testcases/span/01_link/link_defs.html +9 -0
  328. data/test/testcases/span/01_link/link_defs.text +26 -0
  329. data/test/testcases/span/01_link/links_with_angle_brackets.html +3 -0
  330. data/test/testcases/span/01_link/links_with_angle_brackets.text +3 -0
  331. data/test/testcases/span/01_link/reference.html +36 -0
  332. data/test/testcases/span/01_link/reference.html.19 +36 -0
  333. data/test/testcases/span/01_link/reference.text +50 -0
  334. data/test/testcases/span/02_emphasis/empty.html +3 -0
  335. data/test/testcases/span/02_emphasis/empty.text +3 -0
  336. data/test/testcases/span/02_emphasis/errors.html +9 -0
  337. data/test/testcases/span/02_emphasis/errors.text +9 -0
  338. data/test/testcases/span/02_emphasis/nesting.html +38 -0
  339. data/test/testcases/span/02_emphasis/nesting.text +33 -0
  340. data/test/testcases/span/02_emphasis/normal.html +46 -0
  341. data/test/testcases/span/02_emphasis/normal.text +46 -0
  342. data/test/testcases/span/03_codespan/empty.html +5 -0
  343. data/test/testcases/span/03_codespan/empty.text +5 -0
  344. data/test/testcases/span/03_codespan/errors.html +1 -0
  345. data/test/testcases/span/03_codespan/errors.text +1 -0
  346. data/test/testcases/span/03_codespan/highlighting.html +1 -0
  347. data/test/testcases/span/03_codespan/highlighting.text +1 -0
  348. data/test/testcases/span/03_codespan/normal.html +16 -0
  349. data/test/testcases/span/03_codespan/normal.text +16 -0
  350. data/test/testcases/span/04_footnote/definitions.html +17 -0
  351. data/test/testcases/span/04_footnote/definitions.latex +17 -0
  352. data/test/testcases/span/04_footnote/definitions.text +24 -0
  353. data/test/testcases/span/04_footnote/footnote_nr.html +12 -0
  354. data/test/testcases/span/04_footnote/footnote_nr.latex +2 -0
  355. data/test/testcases/span/04_footnote/footnote_nr.options +1 -0
  356. data/test/testcases/span/04_footnote/footnote_nr.text +4 -0
  357. data/test/testcases/span/04_footnote/markers.html +46 -0
  358. data/test/testcases/span/04_footnote/markers.latex +23 -0
  359. data/test/testcases/span/04_footnote/markers.text +26 -0
  360. data/test/testcases/span/05_html/across_lines.html +1 -0
  361. data/test/testcases/span/05_html/across_lines.text +2 -0
  362. data/test/testcases/span/05_html/invalid.html +1 -0
  363. data/test/testcases/span/05_html/invalid.text +1 -0
  364. data/test/testcases/span/05_html/link_with_mailto.html +1 -0
  365. data/test/testcases/span/05_html/link_with_mailto.text +1 -0
  366. data/test/testcases/span/05_html/markdown_attr.html +6 -0
  367. data/test/testcases/span/05_html/markdown_attr.text +6 -0
  368. data/test/testcases/span/05_html/normal.html +34 -0
  369. data/test/testcases/span/05_html/normal.text +34 -0
  370. data/test/testcases/span/abbreviations/abbrev.html +8 -0
  371. data/test/testcases/span/abbreviations/abbrev.text +15 -0
  372. data/test/testcases/span/abbreviations/abbrev_defs.html +2 -0
  373. data/test/testcases/span/abbreviations/abbrev_defs.text +5 -0
  374. data/test/testcases/span/autolinks/url_links.html +12 -0
  375. data/test/testcases/span/autolinks/url_links.text +12 -0
  376. data/test/testcases/span/escaped_chars/normal.html +47 -0
  377. data/test/testcases/span/escaped_chars/normal.text +47 -0
  378. data/test/testcases/span/extension/comment.html +6 -0
  379. data/test/testcases/span/extension/comment.text +6 -0
  380. data/test/testcases/span/extension/ignored.html +1 -0
  381. data/test/testcases/span/extension/ignored.text +1 -0
  382. data/test/testcases/span/extension/nomarkdown.html +1 -0
  383. data/test/testcases/span/extension/nomarkdown.text +1 -0
  384. data/test/testcases/span/extension/options.html +1 -0
  385. data/test/testcases/span/extension/options.text +1 -0
  386. data/test/testcases/span/ial/simple.html +6 -0
  387. data/test/testcases/span/ial/simple.text +6 -0
  388. data/test/testcases/span/line_breaks/normal.html +11 -0
  389. data/test/testcases/span/line_breaks/normal.latex +12 -0
  390. data/test/testcases/span/line_breaks/normal.text +11 -0
  391. data/test/testcases/span/math/normal.html +5 -0
  392. data/test/testcases/span/math/normal.text +5 -0
  393. data/test/testcases/span/text_substitutions/entities.html +6 -0
  394. data/test/testcases/span/text_substitutions/entities.options +1 -0
  395. data/test/testcases/span/text_substitutions/entities.text +6 -0
  396. data/test/testcases/span/text_substitutions/entities_as_char.html +1 -0
  397. data/test/testcases/span/text_substitutions/entities_as_char.html.19 +1 -0
  398. data/test/testcases/span/text_substitutions/entities_as_char.options +1 -0
  399. data/test/testcases/span/text_substitutions/entities_as_char.text +1 -0
  400. data/test/testcases/span/text_substitutions/entities_as_input.html +1 -0
  401. data/test/testcases/span/text_substitutions/entities_as_input.options +1 -0
  402. data/test/testcases/span/text_substitutions/entities_as_input.text +1 -0
  403. data/test/testcases/span/text_substitutions/entities_numeric.html +1 -0
  404. data/test/testcases/span/text_substitutions/entities_numeric.options +1 -0
  405. data/test/testcases/span/text_substitutions/entities_numeric.text +1 -0
  406. data/test/testcases/span/text_substitutions/entities_symbolic.html +1 -0
  407. data/test/testcases/span/text_substitutions/entities_symbolic.options +1 -0
  408. data/test/testcases/span/text_substitutions/entities_symbolic.text +1 -0
  409. data/test/testcases/span/text_substitutions/greaterthan.html +1 -0
  410. data/test/testcases/span/text_substitutions/greaterthan.text +1 -0
  411. data/test/testcases/span/text_substitutions/lowerthan.html +1 -0
  412. data/test/testcases/span/text_substitutions/lowerthan.text +1 -0
  413. data/test/testcases/span/text_substitutions/typography.html +18 -0
  414. data/test/testcases/span/text_substitutions/typography.html.19 +18 -0
  415. data/test/testcases/span/text_substitutions/typography.text +18 -0
  416. metadata +817 -0
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+
3
+ source ~/.bashrc
4
+
5
+ for VERSION in `rvm list strings | sort`; do
6
+ rvm $VERSION
7
+ echo $(ruby -v)
8
+ RUBYOPT=-rubygems rake test
9
+ done
@@ -0,0 +1,10 @@
1
+ #!/bin/bash
2
+
3
+ source ~/.bashrc
4
+
5
+ for VERSION in `rvm list strings | sort`; do
6
+ rvm $VERSION
7
+ echo $(ruby -v)
8
+ ruby -Ilib bin/kramdown < benchmark/mdsyntax.text 2>/dev/null >/dev/null
9
+ time ruby -Ilib bin/kramdown < benchmark/mdsyntax.text 2>/dev/null >/dev/null
10
+ done
data/bin/kramdown ADDED
@@ -0,0 +1,78 @@
1
+ #!/usr/bin/env ruby
2
+ # -*- coding: utf-8 -*-
3
+ #
4
+ #--
5
+ # Copyright (C) 2009 Thomas Leitner <t_leitner@gmx.at>
6
+ #
7
+ # This file is part of kramdown.
8
+ #
9
+ # kramdown is free software: you can redistribute it and/or modify
10
+ # it under the terms of the GNU General Public License as published by
11
+ # the Free Software Foundation, either version 3 of the License, or
12
+ # (at your option) any later version.
13
+ #
14
+ # This program is distributed in the hope that it will be useful,
15
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
+ # GNU General Public License for more details.
18
+ #
19
+ # You should have received a copy of the GNU General Public License
20
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
21
+ #++
22
+ #
23
+
24
+ require 'optparse'
25
+ require 'kramdown'
26
+
27
+ options = {}
28
+ format = 'html'
29
+ OptionParser.new do |opts|
30
+ opts.banner = "Usage: kramdown [options] [FILE FILE ...]"
31
+ opts.summary_indent = ' '*4
32
+
33
+ opts.separator ""
34
+ opts.separator "Command line options:"
35
+ opts.separator ""
36
+
37
+ opts.on("-i", "--input ARG", "Specify the input format: kramdown (default) or html") {|v| options[:input] = v}
38
+ opts.on("-o", "--output ARG", "Specify the output format: html (default), kramdown or latex") {|v| format = v}
39
+
40
+ opts.on("-v", "--version", "Show the version of kramdown") do
41
+ puts Kramdown::VERSION
42
+ exit
43
+ end
44
+ opts.on("-h", "--help", "Show the help") do
45
+ puts opts.summarize('', 5, 72)
46
+ exit
47
+ end
48
+
49
+ opts.separator ""
50
+ opts.separator "kramdown options:"
51
+ opts.separator ""
52
+
53
+ Kramdown::Options.definitions.each do |n, definition|
54
+ no = n.to_s.tr('_', '-')
55
+ if definition.type == Kramdown::Options::Boolean
56
+ opts.on("--[no-]#{no}") {|v| options[n] = Kramdown::Options.parse(n, v)}
57
+ else
58
+ type = definition.type
59
+ type = String if type == Symbol || type == Object
60
+ opts.on("--#{no} ARG", type) {|v| options[n] = Kramdown::Options.parse(n, v)}
61
+ end
62
+
63
+ definition.desc.split(/\n/).each do |line|
64
+ opts.separator opts.summary_indent + ' '*6 + line
65
+ end
66
+ opts.separator ''
67
+ end
68
+
69
+ end.parse!
70
+
71
+ begin
72
+ doc = Kramdown::Document.new(ARGF.read, options)
73
+ puts doc.send("to_#{format}")
74
+ doc.warnings.each {|warn| $stderr.puts "Warning: #{warn}"}
75
+ rescue Kramdown::Error => e
76
+ $stderr.puts "Error: #{e.message}"
77
+ exit(1)
78
+ end
@@ -0,0 +1,18 @@
1
+ <html>
2
+ <head>
3
+ <%
4
+ extend ::Kramdown::Utils::Html
5
+ title = ''
6
+ h = @converter.root.children.find {|c| c.type == :header}
7
+ if h
8
+ collector = lambda {|c| c.children.collect {|cc| cc.type == :text ? escape_html(cc.value, :text) : collector.call(cc)}.join('')}
9
+ title = collector.call(h)
10
+ end
11
+ %>
12
+ <title><%= title %></title>
13
+ <meta name="generator" content="kramdown <%= ::Kramdown::VERSION %>" />
14
+ </head>
15
+ <body>
16
+ <%= @body %>
17
+ </body>
18
+ </html>
@@ -0,0 +1,43 @@
1
+ <%
2
+ encmap = {
3
+ 'UTF-8' => 'utf8x',
4
+ 'US-ASCII' => 'ascii',
5
+ 'ISO-8859-1' => 'latin1',
6
+ 'ISO-8859-2' => 'latin2',
7
+ 'ISO-8859-3' => 'latin3',
8
+ 'ISO-8859-4' => 'latin4',
9
+ 'ISO-8859-5' => 'latin5',
10
+ 'ISO-8859-9' => 'latin9',
11
+ 'ISO-8859-10' => 'latin10',
12
+ 'CP850' => 'cp850',
13
+ 'CP852' => 'cp852',
14
+ 'CP858' => 'cp858',
15
+ 'CP437' => 'cp437',
16
+ 'CP865' => 'cp865',
17
+ 'CP1250' => 'cp120',
18
+ 'CP1252' => 'cp1252',
19
+ 'CP1257' => 'cp1257'
20
+ }
21
+ %>
22
+ \documentclass{scrartcl}
23
+ <% if RUBY_VERSION >= '1.9' %>
24
+ \usepackage[<%= encmap[@body.encoding.name] %>]{inputenc}
25
+ <% else %>
26
+ \usepackage[mathletters]{ucs}
27
+ \usepackage[utf8x]{inputenc}
28
+ <% end %>
29
+ \usepackage[T1]{fontenc}
30
+ \usepackage{listings}
31
+ <% @converter.data[:packages].each {|pkg| %>\usepackage{<%= pkg %>}
32
+ <% } %>
33
+ \usepackage{hyperref}
34
+
35
+ <% if @converter.data[:packages].include?('fancyvrb') %>
36
+ \VerbatimFootnotes
37
+ <% end %>
38
+
39
+ \hypersetup{colorlinks=true,urlcolor=blue}
40
+
41
+ \begin{document}
42
+ <%= @body %>
43
+ \end{document}
@@ -0,0 +1,530 @@
1
+ $text-color: #354146;
2
+ $link-color: #1666A3;
3
+
4
+ * {
5
+ padding: 0;
6
+ margin: 0;
7
+ }
8
+
9
+ body {
10
+ margin: 0;
11
+ padding: 0;
12
+ color: #000;
13
+ text-align: left;
14
+ background: #fff;
15
+ }
16
+
17
+ body, table, code {
18
+ font: normal 12px/1.5em Verdana, Tahoma, "Trebuchet MS", "DejuVu Sans", "Bitstream Vera Sans", sans-serif;
19
+ }
20
+
21
+ .with-margin {
22
+ margin: 0 auto;
23
+ min-width: 600px;
24
+ max-width: 1000px;
25
+ }
26
+
27
+ /* header */
28
+ #fullheader {
29
+ background: #364147;
30
+ background-image: -moz-linear-gradient(top, rgba(54,65,71,1), rgba(81,92,96,1));
31
+ background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(54,65,71,1)), to(rgba(81,92,96,1)));
32
+ position: relative;
33
+ }
34
+
35
+ #header {
36
+ @extend .with-margin;
37
+
38
+ position: relative;
39
+ padding: 0 0 0 30px;
40
+ height: 70px;
41
+
42
+ h1#logo {
43
+ a {
44
+ color: #ced1d2;
45
+ text-decoration: none;
46
+ display: block;
47
+ padding: 18px 0 17px;
48
+ font-weight: normal;
49
+ }
50
+
51
+ a:hover {
52
+ color: #fff;
53
+ }
54
+
55
+ span.slogan {
56
+ font-size: 60%; padding-left: 1.5em;
57
+ }
58
+ }
59
+ }
60
+
61
+ #donation {
62
+ position: absolute;
63
+ right: 10px;
64
+ bottom: 5px;
65
+ }
66
+
67
+ /* menu */
68
+ #fullnav {
69
+ background: #3f4a50;
70
+ background-image: -moz-linear-gradient(top, rgba(63,74,80,1), rgba(88,99,103,1));
71
+ background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(63,74,80,1)), to(rgba(88,99,103,1)));
72
+ }
73
+
74
+ #nav {
75
+ @extend .with-margin;
76
+
77
+ ul {
78
+ height: 40px;
79
+ margin: 0;
80
+ padding: 0;
81
+ list-style: none;
82
+
83
+ li {
84
+ display: block;
85
+ float: left;
86
+ margin: 0;
87
+ padding: 0;
88
+
89
+ a, span {
90
+ display: block;
91
+ float: left;
92
+ font-size: 90%;
93
+ color: white;
94
+ text-decoration: none;
95
+ text-align: center;
96
+ padding: 12px 20px 8px;
97
+ -webkit-transition: all 0.2s ease-in-out;
98
+ -moz-transition: all 0.2s ease-in-out;
99
+ -o-transition: all 0.2s ease-in-out;
100
+ transition: all 0.2s ease-in-out;
101
+ }
102
+
103
+ a:hover, span:hover {
104
+ color: #ced1d2;
105
+ text-decoration: underline;
106
+ }
107
+
108
+ }
109
+
110
+ li.webgen-menu-item-selected a, li.webgen-menu-item-selected span, li.webgen-menu-submenu-inhierarchy span {
111
+ color: #101517;
112
+ border: 1px solid #fff;
113
+ border-bottom:1px solid #e6e8e9;
114
+ background:#e6e8e9;
115
+ background-image: -moz-linear-gradient(top, #d6d8d9, #e6e8e9);
116
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#d6d8d9), to(#e6e8e9));
117
+ text-decoration:none;
118
+ }
119
+
120
+ }
121
+ }
122
+
123
+ /* intro */
124
+ #fullintro {
125
+ background: #e6e8e9;
126
+ }
127
+
128
+ #intro {
129
+ @extend .with-margin;
130
+
131
+ background: #e6e8e9;
132
+ height: auto;
133
+
134
+ #intro-in {
135
+ padding: 20px 5px;
136
+ }
137
+
138
+ p {
139
+ margin: 15px 0px 0px
140
+ }
141
+
142
+ a {
143
+ color: $link-color;
144
+ background-color: inherit;
145
+ text-decoration: underline;
146
+ }
147
+
148
+ a:hover, a:link {
149
+ color: #0B4775;
150
+ }
151
+
152
+ }
153
+
154
+ /* content */
155
+ #container {
156
+ @extend .with-margin;
157
+
158
+ position: relative;
159
+ clear: both;
160
+ background-color: #fff;
161
+ background-image: -moz-linear-gradient(top, #eee, #fff 100, #fff);
162
+ background-image: -webkit-gradient(linear, 0 0, 0 200, from(#eee), to(#fff));
163
+
164
+ a {
165
+ color: $link-color;
166
+ background-color: inherit;
167
+ text-decoration: underline;
168
+ }
169
+
170
+ a:hover, a:link {
171
+ color: #0B4775;
172
+ }
173
+
174
+ #sidebar {
175
+ float: right;
176
+ width: 30%;
177
+ min-width: 100px;
178
+ margin: 0 0 10px 10px;
179
+ color: black;
180
+ font-size: 92%;
181
+ background-color: #eee;
182
+
183
+ #sidebar-content {
184
+ padding: 5px 10px;
185
+ opacity: 1;
186
+ }
187
+
188
+ p {
189
+ margin: 0px;
190
+ padding: 5px 0px;
191
+ }
192
+
193
+ ul {
194
+ list-style: square;
195
+ margin: 5px 0px 5px 15px;
196
+ padding: 3px;
197
+
198
+ ul {
199
+ margin: 0px 0px 0px 5px;
200
+ }
201
+ }
202
+
203
+ a {
204
+ padding: 1px;
205
+ text-decoration: none;
206
+ }
207
+
208
+ h1 {
209
+ font: bold 150% Perpetua, Baskerville, "Big Caslon", "Palatino Linotype", Palatino, "URW Palladio L", "Nimbus Roman No9 L", serif;
210
+ }
211
+ }
212
+
213
+ #main {
214
+
215
+ margin-top: 20px;
216
+ padding: 0px 20px;
217
+
218
+ h1, h2, h3, h4, h5, h6 {
219
+ font-family: Perpetua, Baskerville, "Big Caslon", "Palatino Linotype", Palatino, "URW Palladio L", "Nimbus Roman No9 L", serif;
220
+ font-weight: bold;
221
+ text-shadow: 1px 1px 2px #888;
222
+ line-height: 1.5em;
223
+ }
224
+ h1 { font-size: 230%; }
225
+ h2 { font-size: 190%; }
226
+ h3 { font-size: 160%; }
227
+ h4 { font-size: 130%; }
228
+
229
+ h1, h2, h3, h4 {
230
+ margin: 40px 0px 0px;
231
+ }
232
+
233
+ p, ul, ol, dl, table, pre, blockquote {
234
+ margin: 20px 0px 0px;
235
+ }
236
+
237
+ ul, ol {
238
+ margin-left: 10px;
239
+ padding: 0 15px;
240
+ color: #000;
241
+ }
242
+
243
+ ul ul, ul ol, ol ul, ol ol {
244
+ margin-top: 0px;
245
+ }
246
+
247
+ dt {
248
+ background-color: #eee;
249
+ padding: 2px;
250
+ }
251
+
252
+ dd {
253
+ margin: 5px 0px 10px 20px;
254
+ padding: 2px;
255
+
256
+ p, ul, ol, dl, table, pre, blockquote {
257
+ margin-top: 0px;
258
+ }
259
+
260
+ }
261
+
262
+ *:target::after {
263
+ content: " ☜";
264
+ font-size: 120%;
265
+ }
266
+
267
+ pre {
268
+ margin-left: 10px;
269
+ margin-right: 10px;
270
+ padding: 5px;
271
+ text-align: left;
272
+ overflow: visible;
273
+ font: 'Lucida Console', 'courier new', monospace;
274
+ color: white;
275
+ background: #eee;
276
+ border-top: 1px solid green;
277
+ border-bottom: 1px solid green;
278
+ }
279
+
280
+ pre > code {
281
+ color: black;
282
+ font-weight: normal;
283
+ }
284
+
285
+ pre[title]::before {
286
+ display:block;
287
+ padding: 5px;
288
+ margin: -5px -5px 5px -5px;
289
+ background: green;
290
+ color: white;
291
+ content:attr(title);
292
+ font: bold 100% 'Helvetica Neue', 'Trebuchet MS', Arial, Sans-serif;
293
+ }
294
+
295
+ code {
296
+ font-family: "Lucida Console", monospace;
297
+ font-weight: bold;
298
+ font-size: 100%;
299
+ color: black;
300
+ }
301
+
302
+ blockquote.warning, blockquote.information, blockquote.important {
303
+ position: relative;
304
+ padding: 5px 5px 5px 45px;
305
+ min-height: 40px;
306
+ border: 1px solid green;
307
+ border-radius: 10px;
308
+ -webkit-border-radius: 10px;
309
+ -moz-border-radius: 10px;
310
+ box-shadow: 0px 0px 5px #888;
311
+ -moz-box-shadow: 0px 0px 5px #888;
312
+ -webkit-box-shadow: 0px 0px 5px #888;
313
+
314
+ p, ul, ol, dl, table, pre, blockquote {
315
+ margin-top: 0px;
316
+ }
317
+ }
318
+
319
+ blockquote.warning::before, blockquote.information::before, blockquote.important::before {
320
+ display: block;
321
+ position: absolute;
322
+ left: 0px;
323
+ top: 0px;
324
+ height: 30px;
325
+ width: 30px;
326
+ margin: 3px;
327
+ padding: 2px;
328
+ font: bold 30px "Georgia";
329
+ line-height: 30px;
330
+ text-align: center;
331
+ text-shadow: 1px 1px 2px #888;
332
+ background: white;
333
+ border-radius: 5px;
334
+ -webkit-border-radius: 5px;
335
+ -moz-border-radius: 5px;
336
+ }
337
+
338
+ blockquote.warning::before {
339
+ content: '⚠';
340
+ }
341
+
342
+ blockquote.information::before {
343
+ content: '✔';
344
+ }
345
+
346
+ blockquote.important::before {
347
+ content: '!';
348
+ }
349
+
350
+ blockquote pre {
351
+ border: none;
352
+ }
353
+
354
+ table {
355
+ border-collapse: collapse;
356
+ margin-left: auto;
357
+ margin-right: auto;
358
+ width: 100%;
359
+
360
+ td, th {
361
+ padding: 3px 5px;
362
+ }
363
+
364
+ th {
365
+ background-color: green;
366
+ color: white;
367
+ }
368
+ }
369
+
370
+
371
+
372
+ /* added definitions ------------------------------------------------------------ */
373
+
374
+ .news-item {
375
+ border-top: 3px solid #ddd;
376
+ margin-top: 20px;
377
+
378
+ h2 {
379
+ margin-top: 20px;
380
+ }
381
+ }
382
+
383
+ .news-date {
384
+ margin-top: 30px;
385
+ }
386
+
387
+ pre {
388
+ margin: 15px 10px;
389
+ background-color: #e6e8e9;
390
+ color: #000;
391
+ }
392
+
393
+ pre.show-whitespaces .ws-space {
394
+ background-color: #f44;
395
+ }
396
+ pre.show-whitespaces .ws-space-l {
397
+ background-color: #f22;
398
+ }
399
+ pre.show-whitespaces .ws-space-r {
400
+ background-color: #f00;
401
+ }
402
+
403
+ pre.show-whitespaces .ws-tab {
404
+ background-color: #ff4;
405
+ }
406
+ pre.show-whitespaces .ws-tab-l {
407
+ background-color: #ff2;
408
+ }
409
+ pre.show-whitespaces .ws-tab-r {
410
+ background-color: #ff0;
411
+ }
412
+
413
+ pre.show-whitespaces.ws-lr .ws-tab {
414
+ background-color: inherit;
415
+ }
416
+ pre.show-whitespaces.ws-lr .ws-space {
417
+ background-color: inherit;
418
+ opacity: 0;
419
+ }
420
+
421
+ blockquote.markdown-difference {
422
+ margin: 15px 20px;
423
+ padding: 5px;
424
+ border: 2px solid #e6e8e9;
425
+ background-color: #ffffee
426
+ }
427
+
428
+ blockquote.markdown-difference:before {
429
+ content: "Difference to Standard Markdown";
430
+ display: block;
431
+ font-weight: bold;
432
+ margin-top: 5px
433
+ }
434
+
435
+ pre.kdexample-before {
436
+ width: 45%;
437
+ float: left;
438
+ margin: 10px 10px 3px 10px;
439
+ }
440
+ pre.kdexample-before:hover + pre {
441
+ display: block;
442
+ }
443
+
444
+ pre.kdexample-after-source {
445
+ display: none;
446
+ width: 45%;
447
+ float: right;
448
+ background-color: #ffffee;
449
+ border: 2px solid #e6e8e9;
450
+ margin: 10px 10px 3px 10px;
451
+ margin-left: 10px;
452
+ margin-right: 10px;
453
+ margin-bottom: 3px;
454
+ }
455
+
456
+ div.kdexample-after-live {
457
+ width: 45%;
458
+ float: right;
459
+ clear: right;
460
+ background-color: #eeffee;
461
+ border: 2px solid #e6e8e9;
462
+ margin: 10px 10px 3px 10px;
463
+ padding: 5px;
464
+ }
465
+
466
+ div.kdsyntaxlink {
467
+ float: right;
468
+ padding: 5px;
469
+ border: 1px solid #e6e8e9;
470
+ margin-right: 10px;
471
+ margin-left: 10px;
472
+ }
473
+
474
+ div.kdsyntaxlink a {
475
+ text-decoration: none;
476
+ }
477
+
478
+
479
+ }
480
+ }
481
+
482
+ /* footer */
483
+ #footer {
484
+ @extend .with-margin;
485
+
486
+ clear: both;
487
+ margin-top: 20px;
488
+ padding: 5px 20px 30px;
489
+ font-size: 92%;
490
+ text-align: left;
491
+ color: #898989;
492
+ background-color: #eee;
493
+
494
+ h2, p {
495
+ padding-left: 0;
496
+ }
497
+
498
+ a {
499
+ color: #898989;
500
+ }
501
+
502
+ a:hover {
503
+ text-decoration: none;
504
+ color: #666;
505
+ }
506
+
507
+ ul {
508
+ margin: 0;
509
+ padding: 0;
510
+ }
511
+ }
512
+
513
+
514
+ /* common rules */
515
+ img {
516
+ border: none;
517
+ }
518
+
519
+ acronym {
520
+ cursor: help;
521
+ border-bottom: 1px solid #777;
522
+ }
523
+
524
+ .float-left { float: left; }
525
+ .float-right { float: right; }
526
+ .a-left, tr.a-left td {text-align:left;}
527
+ .a-center, tr.a-center td {text-align:center;}
528
+ .a-right, tr.a-right td {text-align:right;}
529
+
530
+ .clear { clear: both; }