motion-kramdown 0.5.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -7
  3. data/lib/kramdown.rb +1 -1
  4. data/lib/kramdown/compatibility.rb +1 -1
  5. data/lib/kramdown/converter.rb +1 -1
  6. data/lib/kramdown/converter/base.rb +2 -1
  7. data/lib/kramdown/converter/html.rb +10 -5
  8. data/lib/kramdown/converter/kramdown.rb +13 -7
  9. data/lib/kramdown/converter/latex.rb +2 -1
  10. data/lib/kramdown/converter/math_engine/itex2mml.rb +1 -1
  11. data/lib/kramdown/converter/math_engine/mathjax.rb +18 -3
  12. data/lib/kramdown/converter/math_engine/ritex.rb +1 -1
  13. data/lib/kramdown/converter/pdf.rb +3 -2
  14. data/lib/kramdown/converter/remove_html_tags.rb +3 -1
  15. data/lib/kramdown/converter/syntax_highlighter.rb +53 -0
  16. data/lib/kramdown/converter/syntax_highlighter/coderay.rb +1 -1
  17. data/lib/kramdown/converter/syntax_highlighter/rouge.rb +2 -2
  18. data/lib/kramdown/converter/toc.rb +2 -2
  19. data/lib/kramdown/document.rb +5 -5
  20. data/lib/kramdown/element.rb +4 -1
  21. data/lib/kramdown/error.rb +1 -1
  22. data/lib/kramdown/options.rb +4 -3
  23. data/lib/kramdown/parser.rb +1 -1
  24. data/lib/kramdown/parser/base.rb +8 -4
  25. data/lib/kramdown/parser/gfm.rb +9 -1
  26. data/lib/kramdown/parser/html.rb +18 -3
  27. data/lib/kramdown/parser/kramdown.rb +8 -5
  28. data/lib/kramdown/parser/kramdown/abbreviation.rb +10 -2
  29. data/lib/kramdown/parser/kramdown/autolink.rb +1 -1
  30. data/lib/kramdown/parser/kramdown/blank_line.rb +1 -1
  31. data/lib/kramdown/parser/kramdown/block_boundary.rb +1 -1
  32. data/lib/kramdown/parser/kramdown/blockquote.rb +1 -1
  33. data/lib/kramdown/parser/kramdown/codeblock.rb +1 -1
  34. data/lib/kramdown/parser/kramdown/codespan.rb +1 -1
  35. data/lib/kramdown/parser/kramdown/emphasis.rb +2 -2
  36. data/lib/kramdown/parser/kramdown/eob.rb +1 -1
  37. data/lib/kramdown/parser/kramdown/escaped_chars.rb +1 -1
  38. data/lib/kramdown/parser/kramdown/extensions.rb +8 -7
  39. data/lib/kramdown/parser/kramdown/footnote.rb +12 -4
  40. data/lib/kramdown/parser/kramdown/header.rb +1 -1
  41. data/lib/kramdown/parser/kramdown/horizontal_rule.rb +1 -1
  42. data/lib/kramdown/parser/kramdown/html.rb +7 -4
  43. data/lib/kramdown/parser/kramdown/html_entity.rb +1 -1
  44. data/lib/kramdown/parser/kramdown/line_break.rb +1 -1
  45. data/lib/kramdown/parser/kramdown/link.rb +8 -5
  46. data/lib/kramdown/parser/kramdown/list.rb +17 -5
  47. data/lib/kramdown/parser/kramdown/math.rb +3 -3
  48. data/lib/kramdown/parser/kramdown/paragraph.rb +3 -3
  49. data/lib/kramdown/parser/kramdown/smart_quotes.rb +1 -1
  50. data/lib/kramdown/parser/kramdown/table.rb +1 -1
  51. data/lib/kramdown/parser/kramdown/typographic_symbol.rb +1 -1
  52. data/lib/kramdown/parser/markdown.rb +2 -2
  53. data/lib/kramdown/utils.rb +1 -1
  54. data/lib/kramdown/utils/configurable.rb +1 -1
  55. data/lib/kramdown/utils/entities.rb +1 -1
  56. data/lib/kramdown/utils/html.rb +3 -1
  57. data/lib/kramdown/utils/ordered_hash.rb +1 -1
  58. data/lib/kramdown/utils/string_scanner.rb +8 -0
  59. data/lib/kramdown/utils/unidecoder.rb +1 -1
  60. data/lib/kramdown/version.rb +2 -2
  61. data/lib/rubymotion/version.rb +1 -1
  62. data/spec/bench_mark.rb +43 -30
  63. data/spec/document_tree.rb +12 -2
  64. data/spec/gfm_to_html.rb +4 -1
  65. data/spec/html_to_html.rb +27 -9
  66. data/spec/html_to_kramdown_to_html.rb +4 -1
  67. data/spec/kramdown_to_xxx.rb +3 -1
  68. data/spec/text_to_kramdown_to_html.rb +4 -0
  69. data/spec/text_to_latex.rb +1 -1
  70. metadata +5 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 170d5050de06949a6d7e2b553f49bbdd02de26dc
4
- data.tar.gz: bc8cb1616378918befb148b0c2522adee0b09f1c
3
+ metadata.gz: a9577c71875ad433ef83f571aabd8d174ecc7f3e
4
+ data.tar.gz: c62c562508e488a2acdccc73b11103f5819e790f
5
5
  SHA512:
6
- metadata.gz: 48565bd9aa912fa94e02bffbbe43e3ec00ff50c166e62872a0a6867e4b543482678afc886896c2936236af57d627f7d66fc2abc948a697a3e71618c514af1683
7
- data.tar.gz: 4afc303834b5fecfb03cfbed8a24530efb59d8038fdbd1778f0aea1a2b14c6a24035b46c6e1a3171e5bf4b4e2b41eb2b99703e1f4dd55713d583a926ddb5fa86
6
+ metadata.gz: cc144943f6ef46416d7f5aa286966f0dbbb055a3a1d7c937e8c9f4a6cfa726abdf77add761eb9a05cb5256e42970d4df3ec299373add3de0e701fabc009162ce
7
+ data.tar.gz: 1b081491e595b664f22f060a0bb44da88874629b8d8f2a973de5548befc5ed5387553c59f0e0d9e011e5169b2f079b27aed697a139a640dc01742f6f43204c65
data/README.md CHANGED
@@ -1,21 +1,23 @@
1
1
  # motion-kramdown
2
2
 
3
- This is a light modification of the [kramdown](https://github.com/gettalong/kramdown) Markdown parser, for use with RubyMotion on iOS and OS X.
3
+ [![Gem Version](https://badge.fury.io/rb/motion-kramdown.svg)](http://badge.fury.io/rb/motion-kramdown)
4
4
 
5
- Currently implements: _kramdown_ 1.5
5
+ [kramdown](https://github.com/gettalong/kramdown) Markdown parser, for use with RubyMotion on iOS and OS X.
6
+
7
+ Currently implements: _kramdown_ 1.6
6
8
 
7
9
  ## Introduction
8
10
 
9
- _kramdown_ is yet-another-markdown-parser but fast, pure Ruby, using a strict syntax definition and supporting several common extensions.
11
+ _kramdown_ is a fast, pure Ruby Markdown superset converter, using a strict syntax definition and supporting several common extensions.
10
12
 
11
- The syntax definition for the kramdown syntax can be found in **doc/syntax.page** (or online at <http://kramdown.gettalong.org/syntax.html>) and a quick reference is available in **doc/quickref.page** or online at <http://kramdown.gettalong.org/quickref.html>.
13
+ The syntax definition for the kramdown syntax can be found online at <http://kramdown.gettalong.org/syntax.html> and a quick reference is available online at <http://kramdown.gettalong.org/quickref.html>.
12
14
 
13
- The _kramdown_ library is mainly written to support the kramdown-to-HTML conversion chain. However, due to its flexibility it supports other input and output formats as well. Here is a list of the supported formats:
15
+ The _kramdown_ library is mainly written to support the kramdown-to-HTML conversion chain. However, due to its flexibility (by creating an internal AST) it supports other input and output formats as well. Here is a list of the supported formats:
14
16
 
15
- * input formats: kramdown (a Markdown superset), Markdown, HTML
17
+ * input formats: kramdown (a Markdown superset), Markdown, GFM, HTML
16
18
  * output formats: HTML, kramdown (and LaTeX and PDF, though not in _motion-kramdown_)
17
19
 
18
- All the documentation on the available input and output formats is available in the **doc/** directory and online at <http://kramdown.gettalong.org>.
20
+ All the documentation on the available input and output formats is available online at <http://kramdown.gettalong.org>.
19
21
 
20
22
  ## Installation
21
23
 
data/lib/kramdown.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -9,6 +9,7 @@
9
9
 
10
10
  # RM require 'erb'
11
11
  # RM require 'kramdown/utils'
12
+ # RM require 'kramdown/document'
12
13
 
13
14
  module Kramdown
14
15
 
@@ -1,14 +1,15 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
8
8
  #
9
9
 
10
- # RM require 'rexml/parsers/baseparser'
11
- # RM require 'kramdown/parser/html'
10
+ # RM require 'kramdown/parser'
11
+ # RM require 'kramdown/converter'
12
+ # RM require 'kramdown/utils'
12
13
 
13
14
  module Kramdown
14
15
 
@@ -321,7 +322,9 @@ module Kramdown
321
322
 
322
323
  def convert_abbreviation(el, indent)
323
324
  title = @root.options[:abbrev_defs][el.value]
324
- format_as_span_html("abbr", {:title => (title.empty? ? nil : title)}, el.value)
325
+ attr = @root.options[:abbrev_attr][el.value].dup
326
+ attr['title'] = title unless title.empty?
327
+ format_as_span_html("abbr", attr, el.value)
325
328
  end
326
329
 
327
330
  def convert_root(el, indent)
@@ -372,7 +375,9 @@ module Kramdown
372
375
  toc.each do |level, id, children|
373
376
  li = Element.new(:li, nil, nil, {:level => level})
374
377
  li.children << Element.new(:p, nil, nil, {:transparent => true})
375
- a = Element.new(:a, nil, {'href' => "##{id}"})
378
+ a = Element.new(:a, nil)
379
+ a.attr['href'] = "##{id}"
380
+ a.attr['id'] = "#{sections.attr['id']}-#{id}"
376
381
  a.children.concat(remove_footnotes(Marshal.load(Marshal.dump(children))))
377
382
  li.children.last.children << a
378
383
  li.children << Element.new(type)
@@ -1,13 +1,14 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
8
8
  #
9
9
 
10
- # RM require 'rexml/parsers/baseparser'
10
+ # RM require 'kramdown/converter'
11
+ # RM require 'kramdown/utils'
11
12
 
12
13
  module Kramdown
13
14
 
@@ -280,17 +281,17 @@ module Kramdown
280
281
  end
281
282
  "[#{inner(el, opts)}][#{index}]"
282
283
  else
283
- title = el.attr['title'].to_s.empty? ? '' : ' "' + el.attr['title'].gsub(/"/, "&quot;") + '"'
284
+ title = parse_title(el.attr['title'])
284
285
  "[#{inner(el, opts)}](#{el.attr['href']}#{title})"
285
286
  end
286
287
  end
287
288
 
288
289
  def convert_img(el, opts)
289
- alt_text = el.attr['alt'].gsub(ESCAPED_CHAR_RE) { $1 ? "\\#{$1}" : $2 }
290
+ alt_text = el.attr['alt'].to_s.gsub(ESCAPED_CHAR_RE) { $1 ? "\\#{$1}" : $2 }
290
291
  if el.attr['src'].empty?
291
292
  "![#{alt_text}]()"
292
293
  else
293
- title = (el.attr['title'] ? ' "' + el.attr['title'].gsub(/"/, "&quot;") + '"' : '')
294
+ title = parse_title(el.attr['title'])
294
295
  link = if el.attr['src'].count("()") > 0
295
296
  "<#{el.attr['src']}>"
296
297
  else
@@ -369,8 +370,8 @@ module Kramdown
369
370
  res = ''
370
371
  res << "\n\n" if @linkrefs.size > 0
371
372
  @linkrefs.each_with_index do |el, i|
372
- title = el.attr['title']
373
- res << "[#{i+1}]: #{el.attr['href']}#{title ? ' "' + title.gsub(/"/, "&quot;") + '"' : ''}\n"
373
+ title = parse_title(el.attr['title'])
374
+ res << "[#{i+1}]: #{el.attr['href']}#{title}\n"
374
375
  end
375
376
  res
376
377
  end
@@ -389,6 +390,7 @@ module Kramdown
389
390
  res = ''
390
391
  @root.options[:abbrev_defs].each do |name, text|
391
392
  res << "*[#{name}]: #{text}\n"
393
+ res << ial_for_element(Element.new(:unused, nil, @root.options[:abbrev_attr][name])).to_s << "\n\n"
392
394
  end
393
395
  res
394
396
  end
@@ -415,6 +417,10 @@ module Kramdown
415
417
  res.strip.empty? ? nil : "{:#{res}}"
416
418
  end
417
419
 
420
+ def parse_title(attr)
421
+ attr.to_s.empty? ? '' : ' "' + attr.gsub(/"/, '&quot;') + '"'
422
+ end
423
+
418
424
  # :startdoc:
419
425
 
420
426
  end
@@ -1,13 +1,14 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
8
8
  #
9
9
 
10
10
  # RM require 'set'
11
+ # RM require 'kramdown/converter'
11
12
 
12
13
  module Kramdown
13
14
 
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -20,11 +20,26 @@ module Kramdown::Converter::MathEngine
20
20
  text = (el.value =~ /<|&/ ? "% <![CDATA[\n#{el.value} %]]>" : el.value)
21
21
  text.gsub!(/<\/?script>?/, '')
22
22
 
23
+ preview = preview_string(converter, el, opts)
24
+
23
25
  attr = {:type => "math/tex#{type == :block ? '; mode=display' : ''}"}
24
26
  if type == :block
25
- converter.format_as_block_html('script', attr, text, opts[:indent])
27
+ preview << converter.format_as_block_html('script', attr, text, opts[:indent])
28
+ else
29
+ preview << converter.format_as_span_html('script', attr, text)
30
+ end
31
+ end
32
+
33
+ def self.preview_string(converter, el, opts)
34
+ preview = converter.options[:math_engine_opts][:preview]
35
+ return '' unless preview
36
+
37
+ preview = (preview == true ? converter.escape_html(el.value) : preview.to_s)
38
+
39
+ if el.options[:category] == :block
40
+ converter.format_as_block_html('div', {'class' => 'MathJax_Preview'}, preview, opts[:indent])
26
41
  else
27
- converter.format_as_span_html('script', attr, text)
42
+ converter.format_as_span_html('span', {'class' => 'MathJax_Preview'}, preview)
28
43
  end
29
44
  end
30
45
 
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -9,7 +9,8 @@
9
9
 
10
10
  # RM require 'prawn'
11
11
  # RM require 'prawn/table'
12
- # RM require 'kramdown/utils/entities'
12
+ # RM require 'kramdown/converter'
13
+ # RM require 'kramdown/utils'
13
14
  # RM require 'open-uri'
14
15
 
15
16
  module Kramdown
@@ -1,12 +1,14 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
8
8
  #
9
9
 
10
+ # RM require 'kramdown/converter'
11
+
10
12
  module Kramdown
11
13
 
12
14
  module Converter
@@ -0,0 +1,53 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ #--
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
+ #
6
+ # This file is part of kramdown which is licensed under the MIT.
7
+ #++
8
+ #
9
+
10
+ module Kramdown
11
+ module Converter
12
+
13
+ # == Container for Syntax Highlighters
14
+ #
15
+ # This module serves as container for the syntax highlighters that can be used together with
16
+ # kramdown.
17
+ #
18
+ # A syntax highlighter should not store any data itself but should use the provided converter
19
+ # object to do so (See Kramdown::Converter::Base#data).
20
+ #
21
+ # == Implementing a Syntax Highlighter
22
+ #
23
+ # Implementing a new syntax highlighter is easy because it is just an object that needs to
24
+ # respond to #call.
25
+ #
26
+ # The method #call needs to take the following arguments:
27
+ #
28
+ # converter:: This argument contains the converter object that calls the syntax highlighter. It
29
+ # can be used, for example, to store data in Kramdown::Converter::Base#data for one
30
+ # conversion run.
31
+ #
32
+ # text:: The raw text that should be highlighted.
33
+ #
34
+ # lang:: The language that the text should be highlighted for (e.g. ruby, python, ...).
35
+ #
36
+ # type:: The type of text, either :span for span-level code or :block for a codeblock.
37
+ #
38
+ # opts:: A Hash with options that may be passed from the converter.
39
+ #
40
+ # The return value of the method should be the highlighted text, suitable for the given
41
+ # converter (e.g. HTML for the HTML converter).
42
+ #
43
+ # == Special Implementation Details
44
+ #
45
+ # HTML converter:: If the syntax highlighter is used with a HTML converter, it should return
46
+ # :block type text correctly wrapped (i.e. normally inside a pre-tag, but may
47
+ # also be a table-tag or just a div-tag) but :span type text *without* a
48
+ # code-tag!
49
+ module SyntaxHighlighter
50
+ end
51
+
52
+ end
53
+ end
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
@@ -28,7 +28,7 @@ module Kramdown::Converter::SyntaxHighlighter
28
28
 
29
29
  opts[:wrap] = false if type == :span
30
30
 
31
- formatter = ::Rouge::Formatters::HTML.new(opts)
31
+ formatter = (opts.delete(:formatter) || ::Rouge::Formatters::HTML).new(opts)
32
32
  formatter.format(lexer.lex(text))
33
33
  end
34
34
 
@@ -1,13 +1,13 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
8
8
  #
9
9
 
10
- # RM require 'rexml/parsers/baseparser'
10
+ # RM require 'kramdown/converter'
11
11
 
12
12
  module Kramdown
13
13
 
@@ -1,29 +1,29 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  #--
4
- # Copyright (C) 2009-2014 Thomas Leitner <t_leitner@gmx.at>
4
+ # Copyright (C) 2009-2015 Thomas Leitner <t_leitner@gmx.at>
5
5
  #
6
6
  # This file is part of kramdown which is licensed under the MIT.
7
7
  #++
8
8
  #
9
9
  # = kramdown
10
10
  #
11
- # kramdown is yet-another-markdown-parser but fast, pure Ruby, using a strict syntax definition and
11
+ # kramdown is fast, pure Ruby Markdown superset converter, using a strict syntax definition and
12
12
  # supporting several common extensions.
13
13
  #
14
14
  # The kramdown library is mainly written to support the kramdown-to-HTML conversion chain. However,
15
15
  # due to its flexibility it supports other input and output formats as well. Here is a list of the
16
16
  # supported formats:
17
17
  #
18
- # * input formats: kramdown (a Markdown superset), Markdown, HTML
19
- # * output formats: HTML, kramdown, LaTeX (and therefore PDF)
18
+ # * input formats: kramdown (a Markdown superset), Markdown, GFM, HTML
19
+ # * output formats: HTML, kramdown, LaTeX (and therefore PDF), PDF via Prawn
20
20
  #
21
21
  # All the documentation on the available input and output formats is available at
22
22
  # http://kramdown.gettalong.org.
23
23
  #
24
24
  # == Usage
25
25
  #
26
- # kramdown has a basic *Cloth API, so using kramdown is as easy as
26
+ # kramdown has a simple API, so using kramdown is as easy as
27
27
  #
28
28
  # require 'kramdown'
29
29
  #