daqing_kramdown 2.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/AUTHORS +1 -0
- data/CONTRIBUTERS +78 -0
- data/COPYING +30 -0
- data/README.md +71 -0
- data/VERSION +1 -0
- data/bin/daqing_kramdown +132 -0
- data/data/kramdown/document.html +22 -0
- data/data/kramdown/document.latex +50 -0
- data/lib/kramdown.rb +10 -0
- data/lib/kramdown/converter.rb +68 -0
- data/lib/kramdown/converter/base.rb +261 -0
- data/lib/kramdown/converter/hash_ast.rb +38 -0
- data/lib/kramdown/converter/html.rb +535 -0
- data/lib/kramdown/converter/kramdown.rb +448 -0
- data/lib/kramdown/converter/latex.rb +625 -0
- data/lib/kramdown/converter/man.rb +300 -0
- data/lib/kramdown/converter/math_engine/mathjax.rb +32 -0
- data/lib/kramdown/converter/remove_html_tags.rb +57 -0
- data/lib/kramdown/converter/syntax_highlighter.rb +56 -0
- data/lib/kramdown/converter/syntax_highlighter/minted.rb +35 -0
- data/lib/kramdown/converter/syntax_highlighter/rouge.rb +85 -0
- data/lib/kramdown/converter/toc.rb +69 -0
- data/lib/kramdown/document.rb +139 -0
- data/lib/kramdown/element.rb +551 -0
- data/lib/kramdown/error.rb +17 -0
- data/lib/kramdown/options.rb +604 -0
- data/lib/kramdown/parser.rb +26 -0
- data/lib/kramdown/parser/base.rb +131 -0
- data/lib/kramdown/parser/html.rb +608 -0
- data/lib/kramdown/parser/kramdown.rb +376 -0
- data/lib/kramdown/parser/kramdown/abbreviation.rb +78 -0
- data/lib/kramdown/parser/kramdown/autolink.rb +31 -0
- data/lib/kramdown/parser/kramdown/blank_line.rb +30 -0
- data/lib/kramdown/parser/kramdown/block_boundary.rb +34 -0
- data/lib/kramdown/parser/kramdown/blockquote.rb +38 -0
- data/lib/kramdown/parser/kramdown/codeblock.rb +57 -0
- data/lib/kramdown/parser/kramdown/codespan.rb +54 -0
- data/lib/kramdown/parser/kramdown/emphasis.rb +61 -0
- data/lib/kramdown/parser/kramdown/eob.rb +26 -0
- data/lib/kramdown/parser/kramdown/escaped_chars.rb +25 -0
- data/lib/kramdown/parser/kramdown/extensions.rb +214 -0
- data/lib/kramdown/parser/kramdown/footnote.rb +64 -0
- data/lib/kramdown/parser/kramdown/header.rb +70 -0
- data/lib/kramdown/parser/kramdown/horizontal_rule.rb +27 -0
- data/lib/kramdown/parser/kramdown/html.rb +162 -0
- data/lib/kramdown/parser/kramdown/html_entity.rb +34 -0
- data/lib/kramdown/parser/kramdown/line_break.rb +25 -0
- data/lib/kramdown/parser/kramdown/link.rb +149 -0
- data/lib/kramdown/parser/kramdown/list.rb +284 -0
- data/lib/kramdown/parser/kramdown/math.rb +53 -0
- data/lib/kramdown/parser/kramdown/paragraph.rb +62 -0
- data/lib/kramdown/parser/kramdown/smart_quotes.rb +174 -0
- data/lib/kramdown/parser/kramdown/table.rb +171 -0
- data/lib/kramdown/parser/kramdown/typographic_symbol.rb +44 -0
- data/lib/kramdown/parser/markdown.rb +57 -0
- data/lib/kramdown/utils.rb +45 -0
- data/lib/kramdown/utils/configurable.rb +45 -0
- data/lib/kramdown/utils/entities.rb +344 -0
- data/lib/kramdown/utils/html.rb +84 -0
- data/lib/kramdown/utils/lru_cache.rb +41 -0
- data/lib/kramdown/utils/string_scanner.rb +81 -0
- data/lib/kramdown/utils/unidecoder.rb +50 -0
- data/lib/kramdown/version.rb +15 -0
- data/man/man1/kramdown.1 +0 -0
- data/test/run_tests.rb +46 -0
- data/test/test_files.rb +298 -0
- data/test/test_location.rb +216 -0
- data/test/test_string_scanner_kramdown.rb +27 -0
- data/test/testcases/block/01_blank_line/spaces.html +1 -0
- data/test/testcases/block/01_blank_line/spaces.text +3 -0
- data/test/testcases/block/01_blank_line/tabs.html +1 -0
- data/test/testcases/block/01_blank_line/tabs.text +6 -0
- data/test/testcases/block/02_eob/beginning.html +1 -0
- data/test/testcases/block/02_eob/beginning.text +3 -0
- data/test/testcases/block/02_eob/end.html +1 -0
- data/test/testcases/block/02_eob/end.text +3 -0
- data/test/testcases/block/02_eob/middle.html +1 -0
- data/test/testcases/block/02_eob/middle.text +5 -0
- data/test/testcases/block/03_paragraph/indented.html +18 -0
- data/test/testcases/block/03_paragraph/indented.html.gfm +18 -0
- data/test/testcases/block/03_paragraph/indented.text +19 -0
- data/test/testcases/block/03_paragraph/line_break_last_line.html +9 -0
- data/test/testcases/block/03_paragraph/line_break_last_line.text +9 -0
- data/test/testcases/block/03_paragraph/no_newline_at_end.html +5 -0
- data/test/testcases/block/03_paragraph/no_newline_at_end.text +5 -0
- data/test/testcases/block/03_paragraph/one_para.html +1 -0
- data/test/testcases/block/03_paragraph/one_para.text +1 -0
- data/test/testcases/block/03_paragraph/standalone_image.html +8 -0
- data/test/testcases/block/03_paragraph/standalone_image.text +6 -0
- data/test/testcases/block/03_paragraph/two_para.html +4 -0
- data/test/testcases/block/03_paragraph/two_para.text +4 -0
- data/test/testcases/block/03_paragraph/with_html_to_native.html +1 -0
- data/test/testcases/block/03_paragraph/with_html_to_native.options +1 -0
- data/test/testcases/block/03_paragraph/with_html_to_native.text +1 -0
- data/test/testcases/block/04_header/atx_header.html +57 -0
- data/test/testcases/block/04_header/atx_header.text +54 -0
- data/test/testcases/block/04_header/atx_header_no_newline_at_end.html +1 -0
- data/test/testcases/block/04_header/atx_header_no_newline_at_end.text +1 -0
- data/test/testcases/block/04_header/header_type_offset.html +11 -0
- data/test/testcases/block/04_header/header_type_offset.kramdown +12 -0
- data/test/testcases/block/04_header/header_type_offset.latex +12 -0
- data/test/testcases/block/04_header/header_type_offset.options +2 -0
- data/test/testcases/block/04_header/header_type_offset.text +13 -0
- data/test/testcases/block/04_header/setext_header.html +32 -0
- data/test/testcases/block/04_header/setext_header.text +39 -0
- data/test/testcases/block/04_header/setext_header_no_newline_at_end.html +1 -0
- data/test/testcases/block/04_header/setext_header_no_newline_at_end.text +2 -0
- data/test/testcases/block/04_header/with_auto_id_prefix.html +3 -0
- data/test/testcases/block/04_header/with_auto_id_prefix.options +2 -0
- data/test/testcases/block/04_header/with_auto_id_prefix.text +3 -0
- data/test/testcases/block/04_header/with_auto_id_stripping.html +1 -0
- data/test/testcases/block/04_header/with_auto_id_stripping.options +1 -0
- data/test/testcases/block/04_header/with_auto_id_stripping.text +1 -0
- data/test/testcases/block/04_header/with_auto_ids.html +21 -0
- data/test/testcases/block/04_header/with_auto_ids.options +2 -0
- data/test/testcases/block/04_header/with_auto_ids.text +24 -0
- data/test/testcases/block/05_blockquote/indented.html +25 -0
- data/test/testcases/block/05_blockquote/indented.text +14 -0
- data/test/testcases/block/05_blockquote/lazy.html +34 -0
- data/test/testcases/block/05_blockquote/lazy.text +20 -0
- data/test/testcases/block/05_blockquote/nested.html +10 -0
- data/test/testcases/block/05_blockquote/nested.text +6 -0
- data/test/testcases/block/05_blockquote/no_newline_at_end.html +4 -0
- data/test/testcases/block/05_blockquote/no_newline_at_end.text +2 -0
- data/test/testcases/block/05_blockquote/very_long_line.html +3 -0
- data/test/testcases/block/05_blockquote/very_long_line.text +1 -0
- data/test/testcases/block/05_blockquote/with_code_blocks.html +15 -0
- data/test/testcases/block/05_blockquote/with_code_blocks.text +11 -0
- data/test/testcases/block/06_codeblock/disable-highlighting.html +4 -0
- data/test/testcases/block/06_codeblock/disable-highlighting.options +1 -0
- data/test/testcases/block/06_codeblock/disable-highlighting.text +4 -0
- data/test/testcases/block/06_codeblock/error.html +4 -0
- data/test/testcases/block/06_codeblock/error.text +4 -0
- data/test/testcases/block/06_codeblock/guess_lang_css_class.html +15 -0
- data/test/testcases/block/06_codeblock/guess_lang_css_class.options +2 -0
- data/test/testcases/block/06_codeblock/guess_lang_css_class.text +13 -0
- data/test/testcases/block/06_codeblock/highlighting-minted-with-opts.latex +9 -0
- data/test/testcases/block/06_codeblock/highlighting-minted-with-opts.options +4 -0
- data/test/testcases/block/06_codeblock/highlighting-minted-with-opts.text +5 -0
- data/test/testcases/block/06_codeblock/highlighting-minted.latex +8 -0
- data/test/testcases/block/06_codeblock/highlighting-minted.options +3 -0
- data/test/testcases/block/06_codeblock/highlighting-minted.text +4 -0
- data/test/testcases/block/06_codeblock/highlighting-opts.html +6 -0
- data/test/testcases/block/06_codeblock/highlighting-opts.options +7 -0
- data/test/testcases/block/06_codeblock/highlighting-opts.text +4 -0
- data/test/testcases/block/06_codeblock/highlighting.html +5 -0
- data/test/testcases/block/06_codeblock/highlighting.options +5 -0
- data/test/testcases/block/06_codeblock/highlighting.text +4 -0
- data/test/testcases/block/06_codeblock/issue_gh45.html +164 -0
- data/test/testcases/block/06_codeblock/issue_gh45.test +188 -0
- data/test/testcases/block/06_codeblock/lazy.html +4 -0
- data/test/testcases/block/06_codeblock/lazy.text +5 -0
- data/test/testcases/block/06_codeblock/no_newline_at_end.html +2 -0
- data/test/testcases/block/06_codeblock/no_newline_at_end.text +1 -0
- data/test/testcases/block/06_codeblock/no_newline_at_end_1.html +2 -0
- data/test/testcases/block/06_codeblock/no_newline_at_end_1.text +2 -0
- data/test/testcases/block/06_codeblock/normal.html +13 -0
- data/test/testcases/block/06_codeblock/normal.text +10 -0
- data/test/testcases/block/06_codeblock/rouge/disabled.html +2 -0
- data/test/testcases/block/06_codeblock/rouge/disabled.options +4 -0
- data/test/testcases/block/06_codeblock/rouge/disabled.text +1 -0
- data/test/testcases/block/06_codeblock/rouge/multiple.html +11 -0
- data/test/testcases/block/06_codeblock/rouge/multiple.options +4 -0
- data/test/testcases/block/06_codeblock/rouge/multiple.text +11 -0
- data/test/testcases/block/06_codeblock/rouge/simple.html +10 -0
- data/test/testcases/block/06_codeblock/rouge/simple.options +3 -0
- data/test/testcases/block/06_codeblock/rouge/simple.text +9 -0
- data/test/testcases/block/06_codeblock/tilde_syntax.html +7 -0
- data/test/testcases/block/06_codeblock/tilde_syntax.text +9 -0
- data/test/testcases/block/06_codeblock/whitespace.html +3 -0
- data/test/testcases/block/06_codeblock/whitespace.text +3 -0
- data/test/testcases/block/06_codeblock/with_blank_line.html +13 -0
- data/test/testcases/block/06_codeblock/with_blank_line.text +12 -0
- data/test/testcases/block/06_codeblock/with_eob_marker.html +6 -0
- data/test/testcases/block/06_codeblock/with_eob_marker.text +5 -0
- data/test/testcases/block/06_codeblock/with_ial.html +6 -0
- data/test/testcases/block/06_codeblock/with_ial.text +5 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block.html +24 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block.options +2 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block.text +33 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block_any_char.html +8 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block_any_char.options +2 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block_any_char.text +11 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block_name_with_dash.html +3 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block_name_with_dash.options +2 -0
- data/test/testcases/block/06_codeblock/with_lang_in_fenced_block_name_with_dash.text +4 -0
- data/test/testcases/block/07_horizontal_rule/error.html +7 -0
- data/test/testcases/block/07_horizontal_rule/error.text +7 -0
- data/test/testcases/block/07_horizontal_rule/normal.html +19 -0
- data/test/testcases/block/07_horizontal_rule/normal.text +20 -0
- data/test/testcases/block/07_horizontal_rule/sepspaces.html +3 -0
- data/test/testcases/block/07_horizontal_rule/sepspaces.text +3 -0
- data/test/testcases/block/07_horizontal_rule/septabs.html +3 -0
- data/test/testcases/block/07_horizontal_rule/septabs.text +3 -0
- data/test/testcases/block/08_list/brackets_in_item.latex +3 -0
- data/test/testcases/block/08_list/brackets_in_item.text +1 -0
- data/test/testcases/block/08_list/escaping.html +17 -0
- data/test/testcases/block/08_list/escaping.text +17 -0
- data/test/testcases/block/08_list/item_ial.html +10 -0
- data/test/testcases/block/08_list/item_ial.text +8 -0
- data/test/testcases/block/08_list/lazy.html +39 -0
- data/test/testcases/block/08_list/lazy.text +29 -0
- data/test/testcases/block/08_list/lazy_and_nested.html +9 -0
- data/test/testcases/block/08_list/lazy_and_nested.text +4 -0
- data/test/testcases/block/08_list/list_and_hr.html +9 -0
- data/test/testcases/block/08_list/list_and_hr.text +5 -0
- data/test/testcases/block/08_list/list_and_others.html +40 -0
- data/test/testcases/block/08_list/list_and_others.text +26 -0
- data/test/testcases/block/08_list/mixed.html +117 -0
- data/test/testcases/block/08_list/mixed.text +66 -0
- data/test/testcases/block/08_list/nested.html +17 -0
- data/test/testcases/block/08_list/nested.text +7 -0
- data/test/testcases/block/08_list/other_first_element.html +39 -0
- data/test/testcases/block/08_list/other_first_element.text +18 -0
- data/test/testcases/block/08_list/simple_ol.html +19 -0
- data/test/testcases/block/08_list/simple_ol.text +13 -0
- data/test/testcases/block/08_list/simple_ul.html +48 -0
- data/test/testcases/block/08_list/simple_ul.text +36 -0
- data/test/testcases/block/08_list/single_item.html +3 -0
- data/test/testcases/block/08_list/single_item.text +1 -0
- data/test/testcases/block/08_list/special_cases.html +62 -0
- data/test/testcases/block/08_list/special_cases.text +40 -0
- data/test/testcases/block/09_html/comment.html +18 -0
- data/test/testcases/block/09_html/comment.text +15 -0
- data/test/testcases/block/09_html/content_model/deflists.html +6 -0
- data/test/testcases/block/09_html/content_model/deflists.options +1 -0
- data/test/testcases/block/09_html/content_model/deflists.text +6 -0
- data/test/testcases/block/09_html/content_model/tables.html +14 -0
- data/test/testcases/block/09_html/content_model/tables.options +1 -0
- data/test/testcases/block/09_html/content_model/tables.text +14 -0
- data/test/testcases/block/09_html/html5_attributes.html +15 -0
- data/test/testcases/block/09_html/html5_attributes.text +15 -0
- data/test/testcases/block/09_html/html_after_block.html +7 -0
- data/test/testcases/block/09_html/html_after_block.text +5 -0
- data/test/testcases/block/09_html/html_and_codeblocks.html +15 -0
- data/test/testcases/block/09_html/html_and_codeblocks.options +1 -0
- data/test/testcases/block/09_html/html_and_codeblocks.text +13 -0
- data/test/testcases/block/09_html/html_and_headers.html +5 -0
- data/test/testcases/block/09_html/html_and_headers.text +6 -0
- data/test/testcases/block/09_html/html_to_native/code.html +10 -0
- data/test/testcases/block/09_html/html_to_native/code.text +9 -0
- data/test/testcases/block/09_html/html_to_native/comment.html +7 -0
- data/test/testcases/block/09_html/html_to_native/comment.text +8 -0
- data/test/testcases/block/09_html/html_to_native/emphasis.html +6 -0
- data/test/testcases/block/09_html/html_to_native/emphasis.text +6 -0
- data/test/testcases/block/09_html/html_to_native/entity.html +1 -0
- data/test/testcases/block/09_html/html_to_native/entity.text +1 -0
- data/test/testcases/block/09_html/html_to_native/header.html +6 -0
- data/test/testcases/block/09_html/html_to_native/header.options +2 -0
- data/test/testcases/block/09_html/html_to_native/header.text +6 -0
- data/test/testcases/block/09_html/html_to_native/list_dl.html +8 -0
- data/test/testcases/block/09_html/html_to_native/list_dl.text +8 -0
- data/test/testcases/block/09_html/html_to_native/list_ol.html +15 -0
- data/test/testcases/block/09_html/html_to_native/list_ol.text +17 -0
- data/test/testcases/block/09_html/html_to_native/list_ul.html +19 -0
- data/test/testcases/block/09_html/html_to_native/list_ul.text +22 -0
- data/test/testcases/block/09_html/html_to_native/options +1 -0
- data/test/testcases/block/09_html/html_to_native/paragraph.html +3 -0
- data/test/testcases/block/09_html/html_to_native/paragraph.text +4 -0
- data/test/testcases/block/09_html/html_to_native/table_normal.html +12 -0
- data/test/testcases/block/09_html/html_to_native/table_normal.text +12 -0
- data/test/testcases/block/09_html/html_to_native/table_simple.html +61 -0
- data/test/testcases/block/09_html/html_to_native/table_simple.text +71 -0
- data/test/testcases/block/09_html/html_to_native/typography.html +1 -0
- data/test/testcases/block/09_html/html_to_native/typography.text +1 -0
- data/test/testcases/block/09_html/invalid_html_1.html +5 -0
- data/test/testcases/block/09_html/invalid_html_1.text +5 -0
- data/test/testcases/block/09_html/invalid_html_2.html +5 -0
- data/test/testcases/block/09_html/invalid_html_2.text +5 -0
- data/test/testcases/block/09_html/markdown_attr.html +38 -0
- data/test/testcases/block/09_html/markdown_attr.text +38 -0
- data/test/testcases/block/09_html/not_parsed.html +24 -0
- data/test/testcases/block/09_html/not_parsed.text +24 -0
- data/test/testcases/block/09_html/parse_as_raw.html +35 -0
- data/test/testcases/block/09_html/parse_as_raw.htmlinput +34 -0
- data/test/testcases/block/09_html/parse_as_raw.options +1 -0
- data/test/testcases/block/09_html/parse_as_raw.text +33 -0
- data/test/testcases/block/09_html/parse_as_span.html +12 -0
- data/test/testcases/block/09_html/parse_as_span.htmlinput +12 -0
- data/test/testcases/block/09_html/parse_as_span.options +1 -0
- data/test/testcases/block/09_html/parse_as_span.text +9 -0
- data/test/testcases/block/09_html/parse_block_html.html +21 -0
- data/test/testcases/block/09_html/parse_block_html.options +1 -0
- data/test/testcases/block/09_html/parse_block_html.text +17 -0
- data/test/testcases/block/09_html/processing_instruction.html +12 -0
- data/test/testcases/block/09_html/processing_instruction.text +12 -0
- data/test/testcases/block/09_html/simple.html +60 -0
- data/test/testcases/block/09_html/simple.options +1 -0
- data/test/testcases/block/09_html/simple.text +55 -0
- data/test/testcases/block/09_html/standalone_image_in_div.htmlinput +7 -0
- data/test/testcases/block/09_html/standalone_image_in_div.text +8 -0
- data/test/testcases/block/09_html/textarea.html +8 -0
- data/test/testcases/block/09_html/textarea.text +8 -0
- data/test/testcases/block/09_html/xml.html +8 -0
- data/test/testcases/block/09_html/xml.text +7 -0
- data/test/testcases/block/10_ald/simple.html +2 -0
- data/test/testcases/block/10_ald/simple.text +8 -0
- data/test/testcases/block/11_ial/auto_id_and_ial.html +1 -0
- data/test/testcases/block/11_ial/auto_id_and_ial.options +1 -0
- data/test/testcases/block/11_ial/auto_id_and_ial.text +2 -0
- data/test/testcases/block/11_ial/nested.html +11 -0
- data/test/testcases/block/11_ial/nested.text +15 -0
- data/test/testcases/block/11_ial/simple.html +29 -0
- data/test/testcases/block/11_ial/simple.text +41 -0
- data/test/testcases/block/12_extension/comment.html +8 -0
- data/test/testcases/block/12_extension/comment.text +12 -0
- data/test/testcases/block/12_extension/ignored.html +8 -0
- data/test/testcases/block/12_extension/ignored.text +8 -0
- data/test/testcases/block/12_extension/nomarkdown.html +10 -0
- data/test/testcases/block/12_extension/nomarkdown.kramdown +20 -0
- data/test/testcases/block/12_extension/nomarkdown.latex +13 -0
- data/test/testcases/block/12_extension/nomarkdown.text +21 -0
- data/test/testcases/block/12_extension/options.html +21 -0
- data/test/testcases/block/12_extension/options.text +23 -0
- data/test/testcases/block/12_extension/options2.html +10 -0
- data/test/testcases/block/12_extension/options2.text +5 -0
- data/test/testcases/block/12_extension/options3.html +8 -0
- data/test/testcases/block/12_extension/options3.text +7 -0
- data/test/testcases/block/13_definition_list/auto_ids.html +15 -0
- data/test/testcases/block/13_definition_list/auto_ids.text +18 -0
- data/test/testcases/block/13_definition_list/definition_at_beginning.html +1 -0
- data/test/testcases/block/13_definition_list/definition_at_beginning.text +1 -0
- data/test/testcases/block/13_definition_list/deflist_ial.html +4 -0
- data/test/testcases/block/13_definition_list/deflist_ial.text +4 -0
- data/test/testcases/block/13_definition_list/item_ial.html +17 -0
- data/test/testcases/block/13_definition_list/item_ial.text +16 -0
- data/test/testcases/block/13_definition_list/multiple_terms.html +13 -0
- data/test/testcases/block/13_definition_list/multiple_terms.text +10 -0
- data/test/testcases/block/13_definition_list/no_def_list.html +2 -0
- data/test/testcases/block/13_definition_list/no_def_list.text +2 -0
- data/test/testcases/block/13_definition_list/para_wrapping.html +10 -0
- data/test/testcases/block/13_definition_list/para_wrapping.text +6 -0
- data/test/testcases/block/13_definition_list/separated_by_eob.html +8 -0
- data/test/testcases/block/13_definition_list/separated_by_eob.text +5 -0
- data/test/testcases/block/13_definition_list/simple.html +10 -0
- data/test/testcases/block/13_definition_list/simple.text +10 -0
- data/test/testcases/block/13_definition_list/styled_terms.html +4 -0
- data/test/testcases/block/13_definition_list/styled_terms.text +2 -0
- data/test/testcases/block/13_definition_list/too_much_space.html +3 -0
- data/test/testcases/block/13_definition_list/too_much_space.text +4 -0
- data/test/testcases/block/13_definition_list/with_blocks.html +38 -0
- data/test/testcases/block/13_definition_list/with_blocks.text +24 -0
- data/test/testcases/block/14_table/empty_tag_in_cell.html +8 -0
- data/test/testcases/block/14_table/empty_tag_in_cell.options +1 -0
- data/test/testcases/block/14_table/empty_tag_in_cell.text +1 -0
- data/test/testcases/block/14_table/errors.html +12 -0
- data/test/testcases/block/14_table/errors.text +13 -0
- data/test/testcases/block/14_table/escaping.html +52 -0
- data/test/testcases/block/14_table/escaping.text +19 -0
- data/test/testcases/block/14_table/footer.html +65 -0
- data/test/testcases/block/14_table/footer.text +25 -0
- data/test/testcases/block/14_table/header.html +117 -0
- data/test/testcases/block/14_table/header.text +39 -0
- data/test/testcases/block/14_table/no_table.html +3 -0
- data/test/testcases/block/14_table/no_table.text +3 -0
- data/test/testcases/block/14_table/simple.html +192 -0
- data/test/testcases/block/14_table/simple.text +53 -0
- data/test/testcases/block/14_table/table_with_footnote.html +25 -0
- data/test/testcases/block/14_table/table_with_footnote.latex +11 -0
- data/test/testcases/block/14_table/table_with_footnote.text +6 -0
- data/test/testcases/block/15_math/gh_128.html +1 -0
- data/test/testcases/block/15_math/gh_128.text +1 -0
- data/test/testcases/block/15_math/no_engine.html +3 -0
- data/test/testcases/block/15_math/no_engine.options +1 -0
- data/test/testcases/block/15_math/no_engine.text +2 -0
- data/test/testcases/block/15_math/normal.html +30 -0
- data/test/testcases/block/15_math/normal.text +30 -0
- data/test/testcases/block/16_toc/no_toc.html +14 -0
- data/test/testcases/block/16_toc/no_toc.text +16 -0
- data/test/testcases/block/16_toc/toc_exclude.html +35 -0
- data/test/testcases/block/16_toc/toc_exclude.options +1 -0
- data/test/testcases/block/16_toc/toc_exclude.text +19 -0
- data/test/testcases/block/16_toc/toc_levels.html +24 -0
- data/test/testcases/block/16_toc/toc_levels.options +2 -0
- data/test/testcases/block/16_toc/toc_levels.text +16 -0
- data/test/testcases/block/16_toc/toc_with_footnotes.html +13 -0
- data/test/testcases/block/16_toc/toc_with_footnotes.options +1 -0
- data/test/testcases/block/16_toc/toc_with_footnotes.text +6 -0
- data/test/testcases/block/16_toc/toc_with_links.html +8 -0
- data/test/testcases/block/16_toc/toc_with_links.options +2 -0
- data/test/testcases/block/16_toc/toc_with_links.text +8 -0
- data/test/testcases/cjk-line-break.html +4 -0
- data/test/testcases/cjk-line-break.options +1 -0
- data/test/testcases/cjk-line-break.text +12 -0
- data/test/testcases/encoding.html +46 -0
- data/test/testcases/encoding.text +28 -0
- data/test/testcases/man/example.man +123 -0
- data/test/testcases/man/example.text +85 -0
- data/test/testcases/man/heading-name-dash-description.man +4 -0
- data/test/testcases/man/heading-name-dash-description.text +1 -0
- data/test/testcases/man/heading-name-description.man +4 -0
- data/test/testcases/man/heading-name-description.text +2 -0
- data/test/testcases/man/heading-name-section-description.man +4 -0
- data/test/testcases/man/heading-name-section-description.text +1 -0
- data/test/testcases/man/heading-name-section.man +2 -0
- data/test/testcases/man/heading-name-section.text +1 -0
- data/test/testcases/man/heading-name.man +2 -0
- data/test/testcases/man/heading-name.text +1 -0
- data/test/testcases/man/sections.man +4 -0
- data/test/testcases/man/sections.text +11 -0
- data/test/testcases/man/text-escaping.man +8 -0
- data/test/testcases/man/text-escaping.text +7 -0
- data/test/testcases/span/01_link/empty.html +5 -0
- data/test/testcases/span/01_link/empty.text +5 -0
- data/test/testcases/span/01_link/empty_title.htmlinput +3 -0
- data/test/testcases/span/01_link/empty_title.text +7 -0
- data/test/testcases/span/01_link/image_in_a.html +5 -0
- data/test/testcases/span/01_link/image_in_a.text +5 -0
- data/test/testcases/span/01_link/imagelinks.html +15 -0
- data/test/testcases/span/01_link/imagelinks.text +18 -0
- data/test/testcases/span/01_link/inline.html +46 -0
- data/test/testcases/span/01_link/inline.text +48 -0
- data/test/testcases/span/01_link/latex_escaping.latex +6 -0
- data/test/testcases/span/01_link/latex_escaping.text +5 -0
- data/test/testcases/span/01_link/link_defs.html +9 -0
- data/test/testcases/span/01_link/link_defs.text +27 -0
- data/test/testcases/span/01_link/link_defs_with_ial.html +4 -0
- data/test/testcases/span/01_link/link_defs_with_ial.text +16 -0
- data/test/testcases/span/01_link/links_with_angle_brackets.html +3 -0
- data/test/testcases/span/01_link/links_with_angle_brackets.text +3 -0
- data/test/testcases/span/01_link/reference.html +37 -0
- data/test/testcases/span/01_link/reference.options +3 -0
- data/test/testcases/span/01_link/reference.text +53 -0
- data/test/testcases/span/02_emphasis/empty.html +3 -0
- data/test/testcases/span/02_emphasis/empty.text +3 -0
- data/test/testcases/span/02_emphasis/errors.html +9 -0
- data/test/testcases/span/02_emphasis/errors.text +9 -0
- data/test/testcases/span/02_emphasis/nesting.html +41 -0
- data/test/testcases/span/02_emphasis/nesting.text +36 -0
- data/test/testcases/span/02_emphasis/normal.html +65 -0
- data/test/testcases/span/02_emphasis/normal.options +1 -0
- data/test/testcases/span/02_emphasis/normal.text +63 -0
- data/test/testcases/span/03_codespan/empty.html +5 -0
- data/test/testcases/span/03_codespan/empty.text +5 -0
- data/test/testcases/span/03_codespan/errors.html +1 -0
- data/test/testcases/span/03_codespan/errors.text +1 -0
- data/test/testcases/span/03_codespan/highlighting-minted.latex +2 -0
- data/test/testcases/span/03_codespan/highlighting-minted.options +1 -0
- data/test/testcases/span/03_codespan/highlighting-minted.text +1 -0
- data/test/testcases/span/03_codespan/highlighting.html +1 -0
- data/test/testcases/span/03_codespan/highlighting.text +1 -0
- data/test/testcases/span/03_codespan/normal-css-class.html +1 -0
- data/test/testcases/span/03_codespan/normal-css-class.options +2 -0
- data/test/testcases/span/03_codespan/normal-css-class.text +1 -0
- data/test/testcases/span/03_codespan/normal.html +16 -0
- data/test/testcases/span/03_codespan/normal.text +16 -0
- data/test/testcases/span/03_codespan/rouge/disabled.html +1 -0
- data/test/testcases/span/03_codespan/rouge/disabled.options +4 -0
- data/test/testcases/span/03_codespan/rouge/disabled.text +1 -0
- data/test/testcases/span/03_codespan/rouge/simple.html +1 -0
- data/test/testcases/span/03_codespan/rouge/simple.options +1 -0
- data/test/testcases/span/03_codespan/rouge/simple.text +1 -0
- data/test/testcases/span/04_footnote/backlink_inline.html +79 -0
- data/test/testcases/span/04_footnote/backlink_inline.options +1 -0
- data/test/testcases/span/04_footnote/backlink_inline.text +38 -0
- data/test/testcases/span/04_footnote/backlink_text.html +9 -0
- data/test/testcases/span/04_footnote/backlink_text.options +1 -0
- data/test/testcases/span/04_footnote/backlink_text.text +3 -0
- data/test/testcases/span/04_footnote/definitions.html +17 -0
- data/test/testcases/span/04_footnote/definitions.latex +17 -0
- data/test/testcases/span/04_footnote/definitions.text +24 -0
- data/test/testcases/span/04_footnote/footnote_nr.html +12 -0
- data/test/testcases/span/04_footnote/footnote_nr.latex +2 -0
- data/test/testcases/span/04_footnote/footnote_nr.options +1 -0
- data/test/testcases/span/04_footnote/footnote_nr.text +4 -0
- data/test/testcases/span/04_footnote/footnote_prefix.html +12 -0
- data/test/testcases/span/04_footnote/footnote_prefix.options +1 -0
- data/test/testcases/span/04_footnote/footnote_prefix.text +4 -0
- data/test/testcases/span/04_footnote/inside_footnote.html +17 -0
- data/test/testcases/span/04_footnote/inside_footnote.text +9 -0
- data/test/testcases/span/04_footnote/markers.html +46 -0
- data/test/testcases/span/04_footnote/markers.latex +23 -0
- data/test/testcases/span/04_footnote/markers.options +2 -0
- data/test/testcases/span/04_footnote/markers.text +27 -0
- data/test/testcases/span/04_footnote/placement.html +11 -0
- data/test/testcases/span/04_footnote/placement.options +1 -0
- data/test/testcases/span/04_footnote/placement.text +8 -0
- data/test/testcases/span/04_footnote/regexp_problem.html +14 -0
- data/test/testcases/span/04_footnote/regexp_problem.options +2 -0
- data/test/testcases/span/04_footnote/regexp_problem.text +52 -0
- data/test/testcases/span/04_footnote/without_backlink.html +9 -0
- data/test/testcases/span/04_footnote/without_backlink.options +1 -0
- data/test/testcases/span/04_footnote/without_backlink.text +3 -0
- data/test/testcases/span/05_html/across_lines.html +1 -0
- data/test/testcases/span/05_html/across_lines.text +2 -0
- data/test/testcases/span/05_html/button.html +7 -0
- data/test/testcases/span/05_html/button.text +7 -0
- data/test/testcases/span/05_html/invalid.html +1 -0
- data/test/testcases/span/05_html/invalid.text +1 -0
- data/test/testcases/span/05_html/link_with_mailto.html +1 -0
- data/test/testcases/span/05_html/link_with_mailto.text +1 -0
- data/test/testcases/span/05_html/mark_element.html +3 -0
- data/test/testcases/span/05_html/mark_element.text +3 -0
- data/test/testcases/span/05_html/markdown_attr.html +6 -0
- data/test/testcases/span/05_html/markdown_attr.text +6 -0
- data/test/testcases/span/05_html/normal.html +43 -0
- data/test/testcases/span/05_html/normal.text +43 -0
- data/test/testcases/span/05_html/raw_span_elements.html +2 -0
- data/test/testcases/span/05_html/raw_span_elements.text +2 -0
- data/test/testcases/span/05_html/xml.html +5 -0
- data/test/testcases/span/05_html/xml.text +5 -0
- data/test/testcases/span/abbreviations/abbrev.html +21 -0
- data/test/testcases/span/abbreviations/abbrev.text +34 -0
- data/test/testcases/span/abbreviations/abbrev_defs.html +2 -0
- data/test/testcases/span/abbreviations/abbrev_defs.text +5 -0
- data/test/testcases/span/abbreviations/in_footnote.html +9 -0
- data/test/testcases/span/abbreviations/in_footnote.text +5 -0
- data/test/testcases/span/autolinks/url_links.html +15 -0
- data/test/testcases/span/autolinks/url_links.text +16 -0
- data/test/testcases/span/escaped_chars/normal.html +47 -0
- data/test/testcases/span/escaped_chars/normal.text +47 -0
- data/test/testcases/span/extension/comment.html +6 -0
- data/test/testcases/span/extension/comment.text +6 -0
- data/test/testcases/span/extension/ignored.html +1 -0
- data/test/testcases/span/extension/ignored.text +1 -0
- data/test/testcases/span/extension/nomarkdown.html +1 -0
- data/test/testcases/span/extension/nomarkdown.text +1 -0
- data/test/testcases/span/extension/options.html +1 -0
- data/test/testcases/span/extension/options.text +1 -0
- data/test/testcases/span/ial/simple.html +6 -0
- data/test/testcases/span/ial/simple.text +6 -0
- data/test/testcases/span/line_breaks/normal.html +11 -0
- data/test/testcases/span/line_breaks/normal.latex +12 -0
- data/test/testcases/span/line_breaks/normal.text +11 -0
- data/test/testcases/span/math/no_engine.html +1 -0
- data/test/testcases/span/math/no_engine.options +1 -0
- data/test/testcases/span/math/no_engine.text +1 -0
- data/test/testcases/span/math/normal.html +10 -0
- data/test/testcases/span/math/normal.text +10 -0
- data/test/testcases/span/text_substitutions/entities.html +6 -0
- data/test/testcases/span/text_substitutions/entities.options +1 -0
- data/test/testcases/span/text_substitutions/entities.text +6 -0
- data/test/testcases/span/text_substitutions/entities_as_char.html +1 -0
- data/test/testcases/span/text_substitutions/entities_as_char.options +2 -0
- data/test/testcases/span/text_substitutions/entities_as_char.text +1 -0
- data/test/testcases/span/text_substitutions/entities_as_input.html +1 -0
- data/test/testcases/span/text_substitutions/entities_as_input.options +1 -0
- data/test/testcases/span/text_substitutions/entities_as_input.text +1 -0
- data/test/testcases/span/text_substitutions/entities_numeric.html +1 -0
- data/test/testcases/span/text_substitutions/entities_numeric.options +1 -0
- data/test/testcases/span/text_substitutions/entities_numeric.text +1 -0
- data/test/testcases/span/text_substitutions/entities_symbolic.html +1 -0
- data/test/testcases/span/text_substitutions/entities_symbolic.options +1 -0
- data/test/testcases/span/text_substitutions/entities_symbolic.text +1 -0
- data/test/testcases/span/text_substitutions/greaterthan.html +1 -0
- data/test/testcases/span/text_substitutions/greaterthan.text +1 -0
- data/test/testcases/span/text_substitutions/lowerthan.html +1 -0
- data/test/testcases/span/text_substitutions/lowerthan.text +1 -0
- data/test/testcases/span/text_substitutions/typography.html +40 -0
- data/test/testcases/span/text_substitutions/typography.options +1 -0
- data/test/testcases/span/text_substitutions/typography.text +40 -0
- data/test/testcases/span/text_substitutions/typography_subst.html +3 -0
- data/test/testcases/span/text_substitutions/typography_subst.latex +4 -0
- data/test/testcases/span/text_substitutions/typography_subst.options +8 -0
- data/test/testcases/span/text_substitutions/typography_subst.text +3 -0
- metadata +659 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 83a59600e0efd976e1715d693018b84135fb9c84e4103841ba0c6db8a003dc18
|
4
|
+
data.tar.gz: 81337032f36a19d99ece4eb63e7ddbffa6cb864a6b9ca7fbc0825af516f6d671
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: cb8b0b25927103fdff96d1946564b6c5968d07efe044545af7dd22fc2125fb55debd9a8cdc3f72ef210ccea8bf402c596e6d1c014b7b09232ec3abdadf60368a
|
7
|
+
data.tar.gz: d7820fa01c3966f44306234eb04935a55c9d12f435d6f5c44f6ef88cd595ce8b37ca999f093fc42e140c36ce5ab9511d9a437bf0bd48000b7ae03cb689861955
|
data/AUTHORS
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
The author of kramdown is Thomas Leitner <t_leitner@gmx.at>.
|
data/CONTRIBUTERS
ADDED
@@ -0,0 +1,78 @@
|
|
1
|
+
Count Name
|
2
|
+
======= ====
|
3
|
+
943 Thomas Leitner <t_leitner@gmx.at>
|
4
|
+
18 Ashwin Maroli <ashmaroli@gmail.com>
|
5
|
+
7 Christian Cornelssen <ccorn@1tein.de>
|
6
|
+
6 Gioele Barabucci <gioele@svario.it>
|
7
|
+
5 Gleb Mazovetskiy <glex.spb@gmail.com>
|
8
|
+
4 Ted Pak <powerpak006@gmail.com>
|
9
|
+
4 Shuanglei Tao <tsl0922@gmail.com>
|
10
|
+
4 Dan Allen <dan.j.allen@gmail.com>
|
11
|
+
4 Arne Brasseur <arne@arnebrasseur.net>
|
12
|
+
3 gettalong <t_leitner@gmx.at>
|
13
|
+
3 Henning Perl <perl@fast-sicher.de>
|
14
|
+
3 Brandur <brandur@mutelight.org>
|
15
|
+
3 Ben Armston <ben.armston@googlemail.com>
|
16
|
+
3 Ashwin Maroli <ashmaroli@users.noreply.github.com>
|
17
|
+
3 Alex Marandon <contact@alexmarandon.com>
|
18
|
+
2 Tom Thorogood <me+github@tomthorogood.co.uk>
|
19
|
+
2 Parker Moore <parkrmoore@gmail.com>
|
20
|
+
2 Nathanael Jones <nathanael.jones@gmail.com>
|
21
|
+
2 Max Meyer <dev@fedux.org>
|
22
|
+
2 Jo Hund <jhund@clearcove.ca>
|
23
|
+
2 Bran <m.versum@gmail.com>
|
24
|
+
1 winniehell <git@winniehell.de>
|
25
|
+
1 utenmiki <utenmiki@gmail.com>
|
26
|
+
1 tomykaira <tomykaira@gmail.com>
|
27
|
+
1 tom93 <tomlevy93@gmail.com>
|
28
|
+
1 scherr <maximilianscherr@gmail.com>
|
29
|
+
1 myqlarson <myqlarson@gmail.com>
|
30
|
+
1 milo.simpson <milo.simpson@bazaarvoice.com>
|
31
|
+
1 l3kn <hello@l3kn.de>
|
32
|
+
1 William <suttonwilliamd@gmail.com>
|
33
|
+
1 Uwe Kubosch <donv@users.noreply.github.com>
|
34
|
+
1 Trevor Wennblom <trevor@well.com>
|
35
|
+
1 Tim Blair <tim@bla.ir>
|
36
|
+
1 Tim Besard <tim.besard@gmail.com>
|
37
|
+
1 Tim Bates <tim@rumpuslabs.com>
|
38
|
+
1 Sun Yaozhu <yzyzsun@gmail.com>
|
39
|
+
1 Stephen Crosby <stevecrozz@gmail.com>
|
40
|
+
1 Stephen <stephengroat@users.noreply.github.com>
|
41
|
+
1 Simon Lydell <simon.lydell@gmail.com>
|
42
|
+
1 Simon Coffey <simon.coffey@futurelearn.com>
|
43
|
+
1 Shusaku NAKAZATO <cu393uc@gmail.com>
|
44
|
+
1 Sebastian Boehm <sebastian@sometimesfood.org>
|
45
|
+
1 Postmodern <postmodern.mod3@gmail.com>
|
46
|
+
1 Pete Michaud <michaudp@gmail.com>
|
47
|
+
1 Noah Doersing <doersino@gmail.com>
|
48
|
+
1 Michal Till <michal.till@gmail.com>
|
49
|
+
1 Maxime Kjaer <maxime.kjaer@gmail.com>
|
50
|
+
1 Matt Hickford <matt.hickford@gmail.com>
|
51
|
+
1 Martyn Chamberlin <martyn@perfectioncoding.com>
|
52
|
+
1 Marek Tuchowski <marek@tuchowski.com.pl>
|
53
|
+
1 Marcus Stollsteimer <sto.mar@web.de>
|
54
|
+
1 Luca Barbato <luca.barbato@gmail.com>
|
55
|
+
1 Kir Kolyshkin <kolyshkin@gmail.com>
|
56
|
+
1 Jun Aruga <jaruga@redhat.com>
|
57
|
+
1 Jonathan Hooper <jonathan.hooper@gsa.gov>
|
58
|
+
1 John Croisant <jacius@gmail.com>
|
59
|
+
1 Joe Fiorini <joe@faithfulgeek.org>
|
60
|
+
1 Jens Kraemer <jk@jkraemer.net>
|
61
|
+
1 Hirofumi Wakasugi <baenej@gmail.com>
|
62
|
+
1 Hector Correa <hector@hectorcorrea.com>
|
63
|
+
1 Florian Klampfer <f.klampfer@gmail.com>
|
64
|
+
1 Floreal Morandat florealm@gmail.com <florealm@gmail.com>
|
65
|
+
1 Fangyi Zhou <me@fangyi.io>
|
66
|
+
1 Diego Galeota <diegobg123@gmail.com>
|
67
|
+
1 David Rodríguez <deivid.rodriguez@riseup.net>
|
68
|
+
1 Damien Pollet <damien.pollet@gmail.com>
|
69
|
+
1 Cédric Boutillier <cedric.boutillier@gmail.com>
|
70
|
+
1 Christopher Jefferson <caj21@st-andrews.ac.uk>
|
71
|
+
1 Bob Lail <lail@squareup.com>
|
72
|
+
1 Ashe Connor <ashe@kivikakk.ee>
|
73
|
+
1 Antoine Cotten <hello@acotten.com>
|
74
|
+
1 Andrew <andrew.dale.wylie@gmail.com>
|
75
|
+
1 Alpha Chen <alpha.chen@gmail.com>
|
76
|
+
1 Alexey Vasiliev <le0pard@users.noreply.github.com>
|
77
|
+
1 Alex Tomlins <alex.tomlins@digital.cabinet-office.gov.uk>
|
78
|
+
1 284km <k.furuhashi10@gmail.com>
|
data/COPYING
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
kramdown - fast, pure-Ruby Markdown-superset converter
|
2
|
+
Copyright (C) 2009-2013 Thomas Leitner <t_leitner@gmx.at>
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a
|
5
|
+
copy of this software and associated documentation files (the
|
6
|
+
"Software"), to deal in the Software without restriction, including
|
7
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included
|
13
|
+
in all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
16
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
18
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
19
|
+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
20
|
+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
21
|
+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
|
23
|
+
|
24
|
+
Some test cases and the benchmark files are based on test cases from
|
25
|
+
the MDTest test suite:
|
26
|
+
|
27
|
+
MDTest
|
28
|
+
Copyright (c) 2007 Michel Fortin
|
29
|
+
<http://www.michelf.com/>
|
30
|
+
|
data/README.md
ADDED
@@ -0,0 +1,71 @@
|
|
1
|
+
# kramdown
|
2
|
+
|
3
|
+
## Readme first!
|
4
|
+
|
5
|
+
kramdown was originally licensed under the GPL until the 1.0.0 release. However, due to the many
|
6
|
+
requests it is now released under the MIT license and therefore can easily be used in commercial
|
7
|
+
projects, too.
|
8
|
+
|
9
|
+
However, if you use kramdown in a commercial setting, please consider **contributing back any
|
10
|
+
changes** for the benefit of the community and/or
|
11
|
+
[**becoming a patron**](https://www.patreon.com/gettalong) - thanks!
|
12
|
+
|
13
|
+
|
14
|
+
## Introduction
|
15
|
+
|
16
|
+
kramdown is a fast, pure Ruby Markdown superset converter, using a strict syntax definition and
|
17
|
+
supporting several common extensions.
|
18
|
+
|
19
|
+
The syntax definition for the kramdown syntax can be found in **doc/syntax.page** (or online at
|
20
|
+
<http://kramdown.gettalong.org/syntax.html>) and a quick reference is available in
|
21
|
+
**doc/quickref.page** or online at <http://kramdown.gettalong.org/quickref.html>.
|
22
|
+
|
23
|
+
The kramdown library is mainly written to support the kramdown-to-HTML conversion chain. However,
|
24
|
+
due to its flexibility (by creating an internal AST) it supports other input and output formats as
|
25
|
+
well. Here is a list of the supported formats:
|
26
|
+
|
27
|
+
* input formats: kramdown (a Markdown superset), Markdown, GFM, HTML
|
28
|
+
* output formats: HTML, kramdown, LaTeX (and therefore PDF), PDF via Prawn
|
29
|
+
|
30
|
+
All the documentation on the available input and output formats is available in the **doc/**
|
31
|
+
directory and online at <http://kramdown.gettalong.org>.
|
32
|
+
|
33
|
+
Starting from version 1.0.0 kramdown is using a versioning scheme with major, minor and patch parts
|
34
|
+
in the version number where the major number changes on backwards-incompatible changes, the minor
|
35
|
+
number on the introduction of new features and the patch number on everything else.
|
36
|
+
|
37
|
+
For information about changes between versions, have a look at
|
38
|
+
<http://kramdown.gettalong.org/news.html> or the commit history!
|
39
|
+
|
40
|
+
|
41
|
+
## Usage
|
42
|
+
|
43
|
+
kramdown has a very simple API, so using kramdown is as easy as
|
44
|
+
|
45
|
+
```ruby
|
46
|
+
require 'kramdown'
|
47
|
+
|
48
|
+
Kramdown::Document.new(text).to_html
|
49
|
+
```
|
50
|
+
|
51
|
+
For detailed information have a look at the API documentation of the `Kramdown::Document` class.
|
52
|
+
|
53
|
+
The full API documentation is available at <http://kramdown.gettalong.org/rdoc/>, other sites with an
|
54
|
+
API documentation for kramdown probably don't provide the complete documentation!
|
55
|
+
|
56
|
+
There are also some third-party libraries that extend the functionality of kramdown -- see the
|
57
|
+
kramdown Wiki at <https://github.com/gettalong/kramdown/wiki>.
|
58
|
+
|
59
|
+
|
60
|
+
## Development
|
61
|
+
|
62
|
+
Just clone the git repository as described in **doc/installation.page** and you are good to go. You
|
63
|
+
probably want to install `rake` so that you can use the provided rake tasks.
|
64
|
+
|
65
|
+
If you want to run the tests, the development dependencies are needed as well as some additional
|
66
|
+
programs like `tidy` and `latex`. See the `.travis.yml` file for more information.
|
67
|
+
|
68
|
+
|
69
|
+
## License
|
70
|
+
|
71
|
+
MIT - see the **COPYING** file.
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.3.0
|
data/bin/daqing_kramdown
ADDED
@@ -0,0 +1,132 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
#
|
4
|
+
#--
|
5
|
+
# Copyright (C) 2009-2019 Thomas Leitner <t_leitner@gmx.at>
|
6
|
+
#
|
7
|
+
# This file is part of kramdown which is licensed under the MIT.
|
8
|
+
#++
|
9
|
+
#
|
10
|
+
|
11
|
+
require 'optparse'
|
12
|
+
require 'rbconfig'
|
13
|
+
require 'yaml'
|
14
|
+
require 'kramdown'
|
15
|
+
|
16
|
+
def add_kramdown_options(opts, parsed_options, banner: [], ignore: [])
|
17
|
+
banner_shown = false
|
18
|
+
defined_options = []
|
19
|
+
Kramdown::Options.definitions.sort.each do |n, definition|
|
20
|
+
next if ignore.include?(n)
|
21
|
+
|
22
|
+
unless banner_shown
|
23
|
+
opts.separator("")
|
24
|
+
banner.each {|part| opts.separator(part) }
|
25
|
+
opts.separator("")
|
26
|
+
banner_shown = true
|
27
|
+
end
|
28
|
+
|
29
|
+
defined_options << n
|
30
|
+
no = n.to_s.tr('_', '-')
|
31
|
+
if definition.type == Kramdown::Options::Boolean
|
32
|
+
opts.on("--[no-]#{no}") {|v| parsed_options[n] = Kramdown::Options.parse(n, v) }
|
33
|
+
else
|
34
|
+
type = definition.type
|
35
|
+
type = String if type == Symbol || type == Object
|
36
|
+
opts.on("--#{no} ARG", type) {|v| parsed_options[n] = Kramdown::Options.parse(n, v) }
|
37
|
+
end
|
38
|
+
|
39
|
+
definition.desc.split(/\n/).each do |line|
|
40
|
+
opts.separator opts.summary_indent + ' ' * 6 + line
|
41
|
+
end
|
42
|
+
opts.separator ''
|
43
|
+
end
|
44
|
+
defined_options
|
45
|
+
end
|
46
|
+
|
47
|
+
config_file = nil
|
48
|
+
begin
|
49
|
+
config_dir = case RbConfig::CONFIG['host_os']
|
50
|
+
when /bccwin|cygwin|djgpp|mingw|mswin|wince/i
|
51
|
+
File.expand_path((ENV['HOME'] || ENV['USERPROFILE'] || "~") + "/AppData/Local")
|
52
|
+
when /darwin|mac os/
|
53
|
+
File.expand_path("~/Library/Preferences/")
|
54
|
+
else
|
55
|
+
File.expand_path(ENV['XDG_CONFIG_HOME'] || '~/.config')
|
56
|
+
end
|
57
|
+
config_file = File.join(config_dir, "kramdownrc")
|
58
|
+
rescue StandardError
|
59
|
+
end
|
60
|
+
|
61
|
+
options = {}
|
62
|
+
format = ['html']
|
63
|
+
|
64
|
+
defined_options = []
|
65
|
+
OptionParser.new do |opts|
|
66
|
+
opts.banner = "Usage: kramdown [options] [FILE FILE ...]"
|
67
|
+
opts.summary_indent = ' ' * 4
|
68
|
+
|
69
|
+
opts.separator ""
|
70
|
+
opts.separator "Command line options:"
|
71
|
+
opts.separator ""
|
72
|
+
|
73
|
+
opts.on("-i", "--input ARG", "Specify the input format: kramdown (default), " \
|
74
|
+
"html, or markdown") {|v| options[:input] = v }
|
75
|
+
opts.on("-o", "--output ARG", Array, "Specify one or more output formats separated by commas: " \
|
76
|
+
"html (default),", "kramdown, latex, man or remove_html_tags") {|v| format = v }
|
77
|
+
opts.on("-x", "--extension EXT", Array, "Load one or more extensions (without the 'kramdown-' " \
|
78
|
+
"prefix) separated", "by commas (e.g. parser-gfm,syntax-coderay)",
|
79
|
+
"Note: Use this option before other options!") do |exts|
|
80
|
+
exts.each do |ext|
|
81
|
+
begin
|
82
|
+
require "kramdown-#{ext}"
|
83
|
+
new_options = add_kramdown_options(opts, options, banner: ["#{ext} options:"],
|
84
|
+
ignore: defined_options)
|
85
|
+
defined_options.concat(new_options)
|
86
|
+
rescue LoadError
|
87
|
+
$stderr.puts "Couldn't load extension #{ext}, ignoring"
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
opts.separator ""
|
92
|
+
opts.on("--no-config-file", "Do not read any configuration file. Default behavior is to check " \
|
93
|
+
"for a", "configuration file and read it if it exists.") { config_file = nil }
|
94
|
+
opts.on("--config-file FILE", "Specify the name of a configuration file with kramdown options " \
|
95
|
+
"in YAML", "format, e.g. \"auto_id_prefix: ARG\" instead of \"--auto-id-prefix ARG\"",
|
96
|
+
"and \"auto_ids: false\" instead of \"--no-auto-ids\".",
|
97
|
+
"Default: #{config_file}") {|v| config_file = v }
|
98
|
+
opts.separator ""
|
99
|
+
opts.on("-v", "--version", "Show the version of kramdown") do
|
100
|
+
puts Kramdown::VERSION
|
101
|
+
exit
|
102
|
+
end
|
103
|
+
opts.on("-h", "--help", "Show the help") do
|
104
|
+
puts opts.summarize('', 5, 72)
|
105
|
+
exit
|
106
|
+
end
|
107
|
+
|
108
|
+
new_options = add_kramdown_options(opts, options, banner: ["kramdown options:"])
|
109
|
+
defined_options.concat(new_options)
|
110
|
+
end.parse!
|
111
|
+
|
112
|
+
begin
|
113
|
+
if config_file && File.exist?(config_file)
|
114
|
+
config_file_options = YAML.safe_load(File.read(config_file), [Symbol])
|
115
|
+
case config_file_options
|
116
|
+
when nil # empty configuration file except perhaps YAML header and comments
|
117
|
+
# Nothing to do
|
118
|
+
when Hash
|
119
|
+
options = config_file_options.merge(options)
|
120
|
+
else
|
121
|
+
raise Kramdown::Error, "No YAML map in configuration file \"#{config_file}\""
|
122
|
+
end
|
123
|
+
end
|
124
|
+
doc = Kramdown::Document.new(ARGF.read, options)
|
125
|
+
result = ''
|
126
|
+
format.each {|f| result = doc.send("to_#{f}") }
|
127
|
+
puts result
|
128
|
+
doc.warnings.each {|warn| $stderr.puts "Warning: #{warn}" }
|
129
|
+
rescue Kramdown::Error => e
|
130
|
+
$stderr.puts "Error: #{e.message}"
|
131
|
+
exit(1)
|
132
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<% if @converter.root.options[:encoding] %>
|
5
|
+
<meta http-equiv="Content-type" content="text/html;charset=<%= @converter.root.options[:encoding] %>">
|
6
|
+
<% end %>
|
7
|
+
<%
|
8
|
+
extend ::Kramdown::Utils::Html
|
9
|
+
title = ''
|
10
|
+
h = @converter.root.children.find {|c| c.type == :header}
|
11
|
+
if h
|
12
|
+
collector = lambda {|c| c.children.collect {|cc| cc.type == :text ? escape_html(cc.value, :text) : collector.call(cc)}.join('')}
|
13
|
+
title = collector.call(h)
|
14
|
+
end
|
15
|
+
%>
|
16
|
+
<title><%= title %></title>
|
17
|
+
<meta name="generator" content="kramdown <%= ::Kramdown::VERSION %>" />
|
18
|
+
</head>
|
19
|
+
<body>
|
20
|
+
<%= @body %>
|
21
|
+
</body>
|
22
|
+
</html>
|
@@ -0,0 +1,50 @@
|
|
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
|
+
<% if @converter.data[:packages].include?('acronym') %>
|
40
|
+
<% @converter.root.options[:abbrev_defs].each_pair do |k,v| %>\acrodef{<%= @converter.normalize_abbreviation_key(k) %>}[<%= k %>]{<%= @converter.escape(v) %>}
|
41
|
+
<% end %>
|
42
|
+
<% end %>
|
43
|
+
|
44
|
+
\setcounter{footnote}{<%= @converter.options[:footnote_nr] - 1 %>}
|
45
|
+
|
46
|
+
\hypersetup{colorlinks=true,urlcolor=blue}
|
47
|
+
|
48
|
+
\begin{document}
|
49
|
+
<%= @body %>
|
50
|
+
\end{document}
|
data/lib/kramdown.rb
ADDED
@@ -0,0 +1,68 @@
|
|
1
|
+
# -*- coding: utf-8; frozen_string_literal: true -*-
|
2
|
+
#
|
3
|
+
#--
|
4
|
+
# Copyright (C) 2009-2019 Thomas Leitner <t_leitner@gmx.at>
|
5
|
+
#
|
6
|
+
# This file is part of kramdown which is licensed under the MIT.
|
7
|
+
#++
|
8
|
+
#
|
9
|
+
|
10
|
+
require 'kramdown/utils'
|
11
|
+
|
12
|
+
module Kramdown
|
13
|
+
|
14
|
+
# This module contains all available converters, i.e. classes that take a root Element and convert
|
15
|
+
# it to a specific output format. The result is normally a string. For example, the
|
16
|
+
# Converter::Html module converts an element tree into valid HTML.
|
17
|
+
#
|
18
|
+
# Converters use the Base class for common functionality (like applying a template to the output)
|
19
|
+
# \- see its API documentation for how to create a custom converter class.
|
20
|
+
module Converter
|
21
|
+
|
22
|
+
autoload :Base, 'kramdown/converter/base'
|
23
|
+
autoload :Html, 'kramdown/converter/html'
|
24
|
+
autoload :Latex, 'kramdown/converter/latex'
|
25
|
+
autoload :Kramdown, 'kramdown/converter/kramdown'
|
26
|
+
autoload :Toc, 'kramdown/converter/toc'
|
27
|
+
autoload :RemoveHtmlTags, 'kramdown/converter/remove_html_tags'
|
28
|
+
autoload :HashAST, 'kramdown/converter/hash_ast'
|
29
|
+
autoload :HashAst, 'kramdown/converter/hash_ast'
|
30
|
+
autoload :Man, 'kramdown/converter/man'
|
31
|
+
|
32
|
+
extend ::Kramdown::Utils::Configurable
|
33
|
+
|
34
|
+
configurable(:syntax_highlighter)
|
35
|
+
|
36
|
+
['Minted', "Rouge"].each do |klass_name|
|
37
|
+
kn_down = klass_name.downcase.intern
|
38
|
+
add_syntax_highlighter(kn_down) do |converter, text, lang, type, opts|
|
39
|
+
require "kramdown/converter/syntax_highlighter/#{kn_down}"
|
40
|
+
klass = ::Kramdown::Utils.deep_const_get("::Kramdown::Converter::SyntaxHighlighter::#{klass_name}")
|
41
|
+
if !klass.const_defined?(:AVAILABLE) || klass::AVAILABLE
|
42
|
+
add_syntax_highlighter(kn_down, klass)
|
43
|
+
else
|
44
|
+
add_syntax_highlighter(kn_down) { nil }
|
45
|
+
end
|
46
|
+
syntax_highlighter(kn_down).call(converter, text, lang, type, opts)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
configurable(:math_engine)
|
51
|
+
|
52
|
+
["Mathjax"].each do |klass_name|
|
53
|
+
kn_down = klass_name.downcase.intern
|
54
|
+
add_math_engine(kn_down) do |converter, el, opts|
|
55
|
+
require "kramdown/converter/math_engine/#{kn_down}"
|
56
|
+
klass = ::Kramdown::Utils.deep_const_get("::Kramdown::Converter::MathEngine::#{klass_name}")
|
57
|
+
if !klass.const_defined?(:AVAILABLE) || klass::AVAILABLE
|
58
|
+
add_math_engine(kn_down, klass)
|
59
|
+
else
|
60
|
+
add_math_engine(kn_down) { nil }
|
61
|
+
end
|
62
|
+
math_engine(kn_down).call(converter, el, opts)
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|