radiant-kramdown_filter-extension 1.0.8 → 1.0.9
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.
- data/README.markdown +5 -2
- data/kramdown_filter_extension.rb +3 -3
- data/lib/kramdown_filter.rb +56 -17
- metadata +7 -7
data/README.markdown
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
-
|
1
|
+
kramdown is a pure Ruby implementation of standard Markdown plus popular extensions from PHP Markdown Extra and Maruku.
|
2
2
|
|
3
|
-
|
3
|
+
Visit the [kramdown website][0] and the [syntax reference][1] for more information about kramdown.
|
4
|
+
|
5
|
+
[0]: http://kramdown.rubyforge.org/
|
6
|
+
[1]: http://kramdown.rubyforge.org/syntax.html
|
@@ -1,10 +1,10 @@
|
|
1
|
-
if File.exist? "#{File.dirname(__FILE__)}/vendor/gems/kramdown-0.
|
2
|
-
$LOAD_PATH.unshift "#{File.dirname(__FILE__)}/vendor/gems/kramdown-0.
|
1
|
+
if File.exist? "#{File.dirname(__FILE__)}/vendor/gems/kramdown-0.9.0"
|
2
|
+
$LOAD_PATH.unshift "#{File.dirname(__FILE__)}/vendor/gems/kramdown-0.9.0/lib"
|
3
3
|
end
|
4
4
|
require 'kramdown'
|
5
5
|
|
6
6
|
class KramdownFilterExtension < Radiant::Extension
|
7
|
-
version "1.0.
|
7
|
+
version "1.0.9"
|
8
8
|
description "kramdown is a fast, pure Ruby Markdown converter."
|
9
9
|
url "http://rubygems.org/gems/radiant-kramdown_filter-extension"
|
10
10
|
|
data/lib/kramdown_filter.rb
CHANGED
@@ -1,23 +1,62 @@
|
|
1
1
|
class KramdownFilter < TextFilter
|
2
2
|
description_file File.dirname(__FILE__) + "/../markdown.html"
|
3
|
+
|
4
|
+
def options
|
5
|
+
c = Radiant::Config
|
6
|
+
# set default options for the kramdown library
|
7
|
+
# the type conversion stuff is due to kramdown having strict rules
|
8
|
+
# about the types given as option values but Radiant::Config
|
9
|
+
# stores all values as simple strings.
|
10
|
+
o = {
|
11
|
+
:auto_ids => { :default => true, :type => :boolean },
|
12
|
+
:auto_id_prefix => { :default => '', :type => :string },
|
13
|
+
:parse_block_html => { :default => false, :type => :boolean },
|
14
|
+
:parse_span_html => { :default => true, :type => :boolean },
|
15
|
+
:footnote_nr => { :default => 1, :type => :integer },
|
16
|
+
:coderay_wrap => { :default => :div, :type => :symbol },
|
17
|
+
:coderay_line_numbers => { :default => :inline, :type => :symbol },
|
18
|
+
:coderay_line_number_start => { :default => 1, :type => :integer },
|
19
|
+
:coderay_tab_width => { :default => 0, :type => :integer },
|
20
|
+
:coderay_bold_every => { :default => 10, :type => :integer },
|
21
|
+
:coderay_css => { :default => :style, :type => :symbol },
|
22
|
+
:numeric_entities => { :default => false, :type => :boolean }
|
23
|
+
}
|
24
|
+
# overwrite defaults with user set values
|
25
|
+
o.keys.each { |key|
|
26
|
+
if c["kramdown.#{key.to_s}"]
|
27
|
+
case o[key][:type]
|
28
|
+
when :boolean
|
29
|
+
boolean = c["kramdown.#{key.to_s}"] == "true" ? true : false
|
30
|
+
o[key][:default] = boolean
|
31
|
+
when :integer
|
32
|
+
o[key][:default] = c["kramdown.#{key.to_s}"].to_i
|
33
|
+
when :string
|
34
|
+
o[key][:default] = c["kramdown.#{key.to_s}"]
|
35
|
+
when :symbol
|
36
|
+
symbol = c["kramdown.#{key.to_s}"] != "nil" ? c["kramdown.#{key.to_s}"].to_sym : nil
|
37
|
+
o[key][:default] = symbol
|
38
|
+
end
|
39
|
+
end
|
40
|
+
}
|
41
|
+
return o
|
42
|
+
end
|
43
|
+
|
3
44
|
def filter(text)
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
:
|
14
|
-
:
|
15
|
-
:
|
16
|
-
:
|
17
|
-
:
|
18
|
-
:
|
19
|
-
:coderay_bold_every => coderay_bold_every || 10,
|
20
|
-
:coderay_css => coderay_css || :style
|
45
|
+
o = self.options
|
46
|
+
Kramdown::Document.new(text,
|
47
|
+
{
|
48
|
+
:auto_ids => o[:auto_ids][:default],
|
49
|
+
:auto_id_prefix => o[:auto_id_prefix][:default],
|
50
|
+
:parse_block_html => o[:parse_block_html][:default],
|
51
|
+
:parse_span_html => o[:parse_span_html][:default],
|
52
|
+
:footnote_nr => o[:footnote_nr][:default],
|
53
|
+
:coderay_wrap => o[:coderay_wrap][:default],
|
54
|
+
:coderay_line_numbers => o[:coderay_line_numbers][:default],
|
55
|
+
:coderay_line_number_start => o[:coderay_line_number_start][:default],
|
56
|
+
:coderay_tab_width => o[:coderay_tab_width][:default],
|
57
|
+
:coderay_bold_every => o[:coderay_bold_every][:default],
|
58
|
+
:coderay_css => o[:coderay_css][:default],
|
59
|
+
:numeric_entities => o[:numeric_entities][:default]
|
21
60
|
}).to_html
|
22
61
|
end
|
23
62
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: radiant-kramdown_filter-extension
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 5
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 1.0.
|
9
|
+
- 9
|
10
|
+
version: 1.0.9
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- johnmuhl
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-06-
|
18
|
+
date: 2010-06-23 00:00:00 -05:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -26,12 +26,12 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - "="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
hash:
|
29
|
+
hash: 59
|
30
30
|
segments:
|
31
31
|
- 0
|
32
|
-
-
|
32
|
+
- 9
|
33
33
|
- 0
|
34
|
-
version: 0.
|
34
|
+
version: 0.9.0
|
35
35
|
type: :runtime
|
36
36
|
version_requirements: *id001
|
37
37
|
description: |-
|