bluecloth 2.0.5-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +784 -0
- data/LICENSE +27 -0
- data/LICENSE.discount +47 -0
- data/README +81 -0
- data/Rakefile +346 -0
- data/Rakefile.local +63 -0
- data/bin/bluecloth +84 -0
- data/ext/Csio.c +61 -0
- data/ext/VERSION +1 -0
- data/ext/amalloc.h +29 -0
- data/ext/bluecloth.c +377 -0
- data/ext/config.h +51 -0
- data/ext/css.c +76 -0
- data/ext/cstring.h +74 -0
- data/ext/docheader.c +43 -0
- data/ext/extconf.rb +48 -0
- data/ext/generate.c +1481 -0
- data/ext/markdown.c +970 -0
- data/ext/markdown.h +145 -0
- data/ext/mkdio.c +303 -0
- data/ext/mkdio.h +78 -0
- data/ext/resource.c +155 -0
- data/ext/version.c +28 -0
- data/ext/xml.c +82 -0
- data/ext/xmlpage.c +48 -0
- data/lib/bluecloth.rb +161 -0
- data/rake/191_compat.rb +26 -0
- data/rake/dependencies.rb +76 -0
- data/rake/helpers.rb +412 -0
- data/rake/hg.rb +214 -0
- data/rake/manual.rb +782 -0
- data/rake/packaging.rb +135 -0
- data/rake/publishing.rb +321 -0
- data/rake/rdoc.rb +30 -0
- data/rake/style.rb +62 -0
- data/rake/svn.rb +668 -0
- data/rake/testing.rb +187 -0
- data/rake/verifytask.rb +64 -0
- data/rake/win32.rb +190 -0
- data/spec/bluecloth/101_changes_spec.rb +141 -0
- data/spec/bluecloth/autolinks_spec.rb +49 -0
- data/spec/bluecloth/blockquotes_spec.rb +143 -0
- data/spec/bluecloth/code_spans_spec.rb +164 -0
- data/spec/bluecloth/emphasis_spec.rb +164 -0
- data/spec/bluecloth/entities_spec.rb +65 -0
- data/spec/bluecloth/hrules_spec.rb +90 -0
- data/spec/bluecloth/images_spec.rb +92 -0
- data/spec/bluecloth/inline_html_spec.rb +238 -0
- data/spec/bluecloth/links_spec.rb +171 -0
- data/spec/bluecloth/lists_spec.rb +294 -0
- data/spec/bluecloth/paragraphs_spec.rb +75 -0
- data/spec/bluecloth/titles_spec.rb +305 -0
- data/spec/bluecloth_spec.rb +250 -0
- data/spec/bugfix_spec.rb +136 -0
- data/spec/contributions_spec.rb +85 -0
- data/spec/data/antsugar.txt +34 -0
- data/spec/data/markdowntest/Amps and angle encoding.html +17 -0
- data/spec/data/markdowntest/Amps and angle encoding.text +21 -0
- data/spec/data/markdowntest/Auto links.html +18 -0
- data/spec/data/markdowntest/Auto links.text +13 -0
- data/spec/data/markdowntest/Backslash escapes.html +118 -0
- data/spec/data/markdowntest/Backslash escapes.text +120 -0
- data/spec/data/markdowntest/Blockquotes with code blocks.html +15 -0
- data/spec/data/markdowntest/Blockquotes with code blocks.text +11 -0
- data/spec/data/markdowntest/Code Blocks.html +18 -0
- data/spec/data/markdowntest/Code Blocks.text +14 -0
- data/spec/data/markdowntest/Code Spans.html +5 -0
- data/spec/data/markdowntest/Code Spans.text +5 -0
- data/spec/data/markdowntest/Hard-wrapped paragraphs with list-like lines.html +8 -0
- data/spec/data/markdowntest/Hard-wrapped paragraphs with list-like lines.text +8 -0
- data/spec/data/markdowntest/Horizontal rules.html +71 -0
- data/spec/data/markdowntest/Horizontal rules.text +67 -0
- data/spec/data/markdowntest/Inline HTML (Advanced).html +15 -0
- data/spec/data/markdowntest/Inline HTML (Advanced).text +15 -0
- data/spec/data/markdowntest/Inline HTML (Simple).html +72 -0
- data/spec/data/markdowntest/Inline HTML (Simple).text +69 -0
- data/spec/data/markdowntest/Inline HTML comments.html +13 -0
- data/spec/data/markdowntest/Inline HTML comments.text +13 -0
- data/spec/data/markdowntest/Links, inline style.html +11 -0
- data/spec/data/markdowntest/Links, inline style.text +12 -0
- data/spec/data/markdowntest/Links, reference style.html +52 -0
- data/spec/data/markdowntest/Links, reference style.text +71 -0
- data/spec/data/markdowntest/Links, shortcut references.html +9 -0
- data/spec/data/markdowntest/Links, shortcut references.text +20 -0
- data/spec/data/markdowntest/Literal quotes in titles.html +3 -0
- data/spec/data/markdowntest/Literal quotes in titles.text +7 -0
- data/spec/data/markdowntest/Markdown Documentation - Basics.html +314 -0
- data/spec/data/markdowntest/Markdown Documentation - Basics.text +306 -0
- data/spec/data/markdowntest/Markdown Documentation - Syntax.html +942 -0
- data/spec/data/markdowntest/Markdown Documentation - Syntax.text +888 -0
- data/spec/data/markdowntest/Nested blockquotes.html +9 -0
- data/spec/data/markdowntest/Nested blockquotes.text +5 -0
- data/spec/data/markdowntest/Ordered and unordered lists.html +148 -0
- data/spec/data/markdowntest/Ordered and unordered lists.text +131 -0
- data/spec/data/markdowntest/Strong and em together.html +7 -0
- data/spec/data/markdowntest/Strong and em together.text +7 -0
- data/spec/data/markdowntest/Tabs.html +25 -0
- data/spec/data/markdowntest/Tabs.text +21 -0
- data/spec/data/markdowntest/Tidyness.html +8 -0
- data/spec/data/markdowntest/Tidyness.text +5 -0
- data/spec/data/ml-announce.txt +17 -0
- data/spec/data/re-overflow.txt +67 -0
- data/spec/data/re-overflow2.txt +281 -0
- data/spec/discount_spec.rb +67 -0
- data/spec/lib/constants.rb +5 -0
- data/spec/lib/helpers.rb +137 -0
- data/spec/lib/matchers.rb +235 -0
- data/spec/markdowntest_spec.rb +79 -0
- metadata +329 -0
@@ -0,0 +1,235 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'bluecloth'
|
4
|
+
require 'diff/lcs'
|
5
|
+
require 'diff/lcs/callbacks'
|
6
|
+
require 'spec/lib/constants'
|
7
|
+
require 'rbconfig'
|
8
|
+
|
9
|
+
|
10
|
+
### Fixturing functions
|
11
|
+
module BlueCloth::Matchers
|
12
|
+
|
13
|
+
### Matcher for comparing output of a BlueCloth-generated HTML fragment against a known-good
|
14
|
+
### string.
|
15
|
+
class TransformMatcher
|
16
|
+
|
17
|
+
### Create a new matcher for the given +html+
|
18
|
+
def initialize( html )
|
19
|
+
@html = html
|
20
|
+
end
|
21
|
+
|
22
|
+
### Strip tab indentation from the expected HTML output.
|
23
|
+
def without_indentation
|
24
|
+
if indent = @html[/\A\t+/]
|
25
|
+
indent.gsub!( /\A\n/m, '' )
|
26
|
+
@html.gsub!( /^#{indent}/m, '' )
|
27
|
+
end
|
28
|
+
|
29
|
+
return self
|
30
|
+
end
|
31
|
+
|
32
|
+
|
33
|
+
### Returns true if the HTML generated by the given +bluecloth+ object matches the
|
34
|
+
### expected HTML, comparing only the salient document structures.
|
35
|
+
def matches?( bluecloth )
|
36
|
+
@bluecloth = bluecloth
|
37
|
+
@output_html = bluecloth.to_html.gsub( /\n\n\n/, "\n\n" )
|
38
|
+
return @output_html.strip == @html.strip
|
39
|
+
end
|
40
|
+
|
41
|
+
### Build a failure message for the matching case.
|
42
|
+
def failure_message
|
43
|
+
if self.should_output_html?
|
44
|
+
patch = self.make_html_patch( @html, @output_html )
|
45
|
+
return %{
|
46
|
+
<p>Expected the generated html:<br />
|
47
|
+
<pre><code>#@output_html</code></pre>
|
48
|
+
to be the same as:<br />
|
49
|
+
<pre><code>#@html</code></pre>
|
50
|
+
</p>
|
51
|
+
<p>Diffs:</p>
|
52
|
+
#{patch}
|
53
|
+
}
|
54
|
+
else
|
55
|
+
patch = self.make_patch( @html, @output_html )
|
56
|
+
return ("Expected the generated html:\n\n %p\n\nto be the same as:\n\n" +
|
57
|
+
" %p\n\nDiffs:\n\n%s") % [ @output_html, @html, patch ]
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
### Build a failure message for the non-matching case.
|
62
|
+
def negative_failure_message
|
63
|
+
return "Expected the generated html:\n\n %p\n\nnot to be the same as:\n\n %p\n\n" %
|
64
|
+
[ @output_html, @html ]
|
65
|
+
end
|
66
|
+
|
67
|
+
|
68
|
+
### Returns true if it appears HTML output should be used instead of plain-text. This
|
69
|
+
### will be true if running from TextMate or if the HTML_LOGGING environment variable
|
70
|
+
### is set.
|
71
|
+
def should_output_html?
|
72
|
+
return false
|
73
|
+
# return ENV['HTML_LOGGING'] ||
|
74
|
+
# (ENV['TM_FILENAME'] && ENV['TM_FILENAME'] =~ /_spec\.rb/)
|
75
|
+
end
|
76
|
+
|
77
|
+
|
78
|
+
### Compute a patch between the given +expected+ output and the +actual+ output
|
79
|
+
### and return it as a string.
|
80
|
+
def make_patch( expected, actual )
|
81
|
+
diffs = Diff::LCS.sdiff( expected.split("\n"), actual.split("\n"),
|
82
|
+
Diff::LCS::ContextDiffCallbacks )
|
83
|
+
|
84
|
+
maxcol = diffs.flatten.
|
85
|
+
collect {|d| [d.old_element.to_s.length, d.new_element.to_s.length ] }.
|
86
|
+
flatten.max || 0
|
87
|
+
maxcol += 4
|
88
|
+
|
89
|
+
patch = " %#{maxcol}s | %s\n" % [ "Expected", "Actual" ]
|
90
|
+
patch << diffs.collect do |changeset|
|
91
|
+
changeset.collect do |change|
|
92
|
+
"%s [%03d, %03d]: %#{maxcol}s | %-#{maxcol}s" % [
|
93
|
+
change.action,
|
94
|
+
change.old_position,
|
95
|
+
change.new_position,
|
96
|
+
change.old_element.inspect,
|
97
|
+
change.new_element.inspect,
|
98
|
+
]
|
99
|
+
end.join("\n")
|
100
|
+
end.join("\n---\n")
|
101
|
+
end
|
102
|
+
|
103
|
+
### Compute a patch similar to #make_patch, but output HTML instead of plain text.
|
104
|
+
def make_html_patch( expected, actual )
|
105
|
+
diffs = Diff::LCS.sdiff( expected.split("\n"), actual.split("\n"),
|
106
|
+
Diff::LCS::ContextDiffCallbacks )
|
107
|
+
|
108
|
+
patch = %{
|
109
|
+
<table>
|
110
|
+
<caption>Diffs</caption>
|
111
|
+
<thead>
|
112
|
+
<tr><th>Op</th><th>Pos</th><th>Expected</th><th>Actual</th></tr>
|
113
|
+
</thead>
|
114
|
+
<tbody>
|
115
|
+
}
|
116
|
+
patch << diffs.collect do |changeset|
|
117
|
+
changeset.collect do |change|
|
118
|
+
"<tr><td>%s</td><td>[%03d, %03d]</td><td>%s</td><td>%s</td></tr>" % [
|
119
|
+
change.action,
|
120
|
+
change.old_position,
|
121
|
+
change.new_position,
|
122
|
+
change.old_element.inspect,
|
123
|
+
change.new_element.inspect,
|
124
|
+
]
|
125
|
+
end.join("\n")
|
126
|
+
end.join( "</tbody><tbody>" )
|
127
|
+
patch << %{</tbody></table>\n}
|
128
|
+
end
|
129
|
+
|
130
|
+
end
|
131
|
+
|
132
|
+
### Variant of the regular TransformMatcher that normalizes the two strings using the 'tidy'
|
133
|
+
### library before comparing.
|
134
|
+
class TidyTransformMatcher < TransformMatcher
|
135
|
+
|
136
|
+
TIDY_OPTIONS = {}
|
137
|
+
@tidy = nil
|
138
|
+
|
139
|
+
### Fetch the class-global Tidy object, creating it if necessary
|
140
|
+
def self::tidy_object
|
141
|
+
unless @tidy
|
142
|
+
require 'tidy'
|
143
|
+
soext = Config::CONFIG['LIBRUBY_ALIASES'].sub( /.*\./, '' )
|
144
|
+
Tidy.path = "libtidy.#{soext}"
|
145
|
+
@tidy = Tidy.new( TIDY_OPTIONS )
|
146
|
+
end
|
147
|
+
|
148
|
+
return @tidy
|
149
|
+
end
|
150
|
+
|
151
|
+
|
152
|
+
### Set the matcher's expected output to a tidied version of the input +html+.
|
153
|
+
def initialize( html )
|
154
|
+
@html = self.class.tidy_object.clean( html )
|
155
|
+
end
|
156
|
+
|
157
|
+
|
158
|
+
### Returns true if the HTML generated by the given +bluecloth+ object matches the
|
159
|
+
### expected HTML after normalizing them both with 'tidy'.
|
160
|
+
def matches?( bluecloth )
|
161
|
+
@bluecloth = bluecloth
|
162
|
+
@output_html = self.class.tidy_object.clean( bluecloth.to_html )
|
163
|
+
return @output_html == @html
|
164
|
+
end
|
165
|
+
|
166
|
+
end
|
167
|
+
|
168
|
+
|
169
|
+
class TransformRegexpMatcher
|
170
|
+
|
171
|
+
### Create a new matcher for the given +regexp+
|
172
|
+
def initialize( regexp )
|
173
|
+
@regexp = regexp
|
174
|
+
end
|
175
|
+
|
176
|
+
### Returns true if the regexp associated with this matcher matches the output generated
|
177
|
+
### by the specified +bluecloth+ object.
|
178
|
+
def matches?( bluecloth )
|
179
|
+
@bluecloth = bluecloth
|
180
|
+
@output_html = bluecloth.to_html
|
181
|
+
return @output_html =~ @regexp
|
182
|
+
end
|
183
|
+
|
184
|
+
### Build a failure message for the matching case.
|
185
|
+
def failure_message
|
186
|
+
return "Expected the generated html:\n\n %pto match the regexp:\n\n%p\n\n" %
|
187
|
+
[ @output_html, @regexp ]
|
188
|
+
end
|
189
|
+
|
190
|
+
|
191
|
+
### Build a failure message for the negative matching case.
|
192
|
+
def negative_failure_message
|
193
|
+
return "Expected the generated html:\n\n %pnot to match the regexp:\n\n%p\n\n" %
|
194
|
+
[ @output_html, @regexp ]
|
195
|
+
end
|
196
|
+
end
|
197
|
+
|
198
|
+
|
199
|
+
### Create a new BlueCloth object out of the given +string+ and +options+ and
|
200
|
+
### return it.
|
201
|
+
def the_markdown( string, *options )
|
202
|
+
return BlueCloth.new( string, *options )
|
203
|
+
end
|
204
|
+
|
205
|
+
|
206
|
+
### Strip indentation from the given +string+, create a new BlueCloth object
|
207
|
+
### out of the result and any +options+, and return it.
|
208
|
+
def the_indented_markdown( string, *options )
|
209
|
+
if indent = string[/\A\t+/]
|
210
|
+
indent.gsub!( /\A\n/m, '' )
|
211
|
+
$stderr.puts "Source indent is: %p" % [ indent ] if $DEBUG
|
212
|
+
string.gsub!( /^#{indent}/m, '' )
|
213
|
+
end
|
214
|
+
|
215
|
+
return BlueCloth.new( string, *options )
|
216
|
+
end
|
217
|
+
|
218
|
+
|
219
|
+
### Generate a matcher that expects to equal the given +html+.
|
220
|
+
def be_transformed_into( html )
|
221
|
+
return BlueCloth::Matchers::TransformMatcher.new( html )
|
222
|
+
end
|
223
|
+
|
224
|
+
### Generate a matcher that expects to match a normalized version of the specified +html+.
|
225
|
+
def be_transformed_into_normalized_html( html )
|
226
|
+
return BlueCloth::Matchers::TidyTransformMatcher.new( html )
|
227
|
+
end
|
228
|
+
|
229
|
+
### Generate a matcher that expects to match the given +regexp+.
|
230
|
+
def be_transformed_into_html_matching( regexp )
|
231
|
+
return BlueCloth::Matchers::TransformMatcher.new( regexp )
|
232
|
+
end
|
233
|
+
|
234
|
+
end # module BlueCloth::Matchers
|
235
|
+
|
@@ -0,0 +1,79 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
BEGIN {
|
4
|
+
require 'pathname'
|
5
|
+
basedir = Pathname.new( __FILE__ ).dirname.parent
|
6
|
+
|
7
|
+
libdir = basedir + 'lib'
|
8
|
+
extdir = basedir + 'ext'
|
9
|
+
|
10
|
+
$LOAD_PATH.unshift( libdir ) unless $LOAD_PATH.include?( libdir )
|
11
|
+
$LOAD_PATH.unshift( extdir ) unless $LOAD_PATH.include?( extdir )
|
12
|
+
}
|
13
|
+
|
14
|
+
require 'spec'
|
15
|
+
require 'bluecloth'
|
16
|
+
|
17
|
+
require 'spec/lib/helpers'
|
18
|
+
require 'spec/lib/constants'
|
19
|
+
require 'spec/lib/matchers'
|
20
|
+
|
21
|
+
require 'rbconfig'
|
22
|
+
require 'dl'
|
23
|
+
|
24
|
+
|
25
|
+
#####################################################################
|
26
|
+
### C O N T E X T S
|
27
|
+
#####################################################################
|
28
|
+
|
29
|
+
describe BlueCloth, "-- MarkdownTest 1.0.3: " do
|
30
|
+
include BlueCloth::TestConstants,
|
31
|
+
BlueCloth::Matchers
|
32
|
+
|
33
|
+
before( :all ) do
|
34
|
+
soext = Config::CONFIG['LIBRUBY_ALIASES'].sub( /.*\./, '' )
|
35
|
+
@dlname = "libtidy.#{soext}"
|
36
|
+
|
37
|
+
begin
|
38
|
+
DL.dlopen( @dlname )
|
39
|
+
rescue RuntimeError => err
|
40
|
+
@have_libtidy = false
|
41
|
+
@tidy_error = err.message
|
42
|
+
rescue DL::DLError => err
|
43
|
+
@have_libtidy = false
|
44
|
+
@tidy_error = err.message
|
45
|
+
else
|
46
|
+
@have_libtidy = true
|
47
|
+
@tidy_error = nil
|
48
|
+
end
|
49
|
+
|
50
|
+
begin
|
51
|
+
require 'tidy'
|
52
|
+
rescue LoadError, NameError => err
|
53
|
+
@have_libtidy = false
|
54
|
+
@tidy_error = err.message
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
58
|
+
|
59
|
+
before( :each ) do
|
60
|
+
pending( "These tests require the tidy library: #@tidy_error" ) unless @have_libtidy
|
61
|
+
end
|
62
|
+
|
63
|
+
|
64
|
+
markdowntest_dir = Pathname.new( __FILE__ ).dirname + 'data/markdowntest'
|
65
|
+
pattern = markdowntest_dir + '*.text'
|
66
|
+
Pathname.glob( pattern.to_s ).each do |textfile|
|
67
|
+
resultfile = Pathname.new( textfile.to_s.sub(/\.text/, '.html') )
|
68
|
+
|
69
|
+
it textfile.basename( '.text' ) do
|
70
|
+
markdown = textfile.read
|
71
|
+
expected = resultfile.read
|
72
|
+
options = { :smartypants => false }
|
73
|
+
|
74
|
+
the_markdown( markdown, options ).should be_transformed_into_normalized_html( expected )
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
end
|
79
|
+
|
metadata
ADDED
@@ -0,0 +1,329 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: bluecloth
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2.0.5
|
5
|
+
platform: x86-mingw32
|
6
|
+
authors:
|
7
|
+
- Michael Granger
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-08-02 00:00:00 -07:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: text-format
|
17
|
+
type: :development
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 1.0.0
|
24
|
+
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: termios
|
27
|
+
type: :development
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: "0"
|
34
|
+
version:
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: rubyforge
|
37
|
+
type: :development
|
38
|
+
version_requirement:
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: "0"
|
44
|
+
version:
|
45
|
+
- !ruby/object:Gem::Dependency
|
46
|
+
name: rspec
|
47
|
+
type: :development
|
48
|
+
version_requirement:
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: "0"
|
54
|
+
version:
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
type: :development
|
58
|
+
version_requirement:
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: 0.8.1
|
64
|
+
version:
|
65
|
+
- !ruby/object:Gem::Dependency
|
66
|
+
name: libxml-ruby
|
67
|
+
type: :development
|
68
|
+
version_requirement:
|
69
|
+
version_requirements: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: 0.8.3
|
74
|
+
version:
|
75
|
+
- !ruby/object:Gem::Dependency
|
76
|
+
name: ultraviolet
|
77
|
+
type: :development
|
78
|
+
version_requirement:
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - ">="
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: 0.10.2
|
84
|
+
version:
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: tmail
|
87
|
+
type: :development
|
88
|
+
version_requirement:
|
89
|
+
version_requirements: !ruby/object:Gem::Requirement
|
90
|
+
requirements:
|
91
|
+
- - ">="
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 1.2.3.1
|
94
|
+
version:
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: amatch
|
97
|
+
type: :development
|
98
|
+
version_requirement:
|
99
|
+
version_requirements: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 0.2.3
|
104
|
+
version:
|
105
|
+
- !ruby/object:Gem::Dependency
|
106
|
+
name: rcov
|
107
|
+
type: :development
|
108
|
+
version_requirement:
|
109
|
+
version_requirements: !ruby/object:Gem::Requirement
|
110
|
+
requirements:
|
111
|
+
- - ">="
|
112
|
+
- !ruby/object:Gem::Version
|
113
|
+
version: "0"
|
114
|
+
version:
|
115
|
+
- !ruby/object:Gem::Dependency
|
116
|
+
name: RedCloth
|
117
|
+
type: :development
|
118
|
+
version_requirement:
|
119
|
+
version_requirements: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: 4.0.3
|
124
|
+
version:
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rdoc
|
127
|
+
type: :development
|
128
|
+
version_requirement:
|
129
|
+
version_requirements: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - ">="
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 2.4.3
|
134
|
+
version:
|
135
|
+
- !ruby/object:Gem::Dependency
|
136
|
+
name: rcodetools
|
137
|
+
type: :development
|
138
|
+
version_requirement:
|
139
|
+
version_requirements: !ruby/object:Gem::Requirement
|
140
|
+
requirements:
|
141
|
+
- - ">="
|
142
|
+
- !ruby/object:Gem::Version
|
143
|
+
version: 0.7.0.0
|
144
|
+
version:
|
145
|
+
description: |-
|
146
|
+
BlueCloth is a Ruby implementation of [Markdown][1], a text-to-HTML conversion
|
147
|
+
tool for web writers. To quote from the project page: Markdown allows you to
|
148
|
+
write using an easy-to-read, easy-to-write plain text format, then convert it to
|
149
|
+
structurally valid XHTML (or HTML).
|
150
|
+
email:
|
151
|
+
- ged@FaerieMUD.org
|
152
|
+
executables:
|
153
|
+
- bluecloth
|
154
|
+
extensions: []
|
155
|
+
|
156
|
+
extra_rdoc_files:
|
157
|
+
- ChangeLog
|
158
|
+
- README
|
159
|
+
- LICENSE
|
160
|
+
files:
|
161
|
+
- Rakefile
|
162
|
+
- ChangeLog
|
163
|
+
- README
|
164
|
+
- LICENSE
|
165
|
+
- spec/bluecloth/101_changes_spec.rb
|
166
|
+
- spec/bluecloth/autolinks_spec.rb
|
167
|
+
- spec/bluecloth/blockquotes_spec.rb
|
168
|
+
- spec/bluecloth/code_spans_spec.rb
|
169
|
+
- spec/bluecloth/emphasis_spec.rb
|
170
|
+
- spec/bluecloth/entities_spec.rb
|
171
|
+
- spec/bluecloth/hrules_spec.rb
|
172
|
+
- spec/bluecloth/images_spec.rb
|
173
|
+
- spec/bluecloth/inline_html_spec.rb
|
174
|
+
- spec/bluecloth/links_spec.rb
|
175
|
+
- spec/bluecloth/lists_spec.rb
|
176
|
+
- spec/bluecloth/paragraphs_spec.rb
|
177
|
+
- spec/bluecloth/titles_spec.rb
|
178
|
+
- spec/bluecloth_spec.rb
|
179
|
+
- spec/bugfix_spec.rb
|
180
|
+
- spec/contributions_spec.rb
|
181
|
+
- spec/discount_spec.rb
|
182
|
+
- spec/markdowntest_spec.rb
|
183
|
+
- spec/lib/constants.rb
|
184
|
+
- spec/lib/helpers.rb
|
185
|
+
- spec/lib/matchers.rb
|
186
|
+
- bin/bluecloth
|
187
|
+
- lib/bluecloth.rb
|
188
|
+
- ext/bluecloth.c
|
189
|
+
- ext/Csio.c
|
190
|
+
- ext/css.c
|
191
|
+
- ext/docheader.c
|
192
|
+
- ext/generate.c
|
193
|
+
- ext/markdown.c
|
194
|
+
- ext/mkdio.c
|
195
|
+
- ext/resource.c
|
196
|
+
- ext/version.c
|
197
|
+
- ext/xml.c
|
198
|
+
- ext/xmlpage.c
|
199
|
+
- ext/amalloc.h
|
200
|
+
- ext/config.h
|
201
|
+
- ext/cstring.h
|
202
|
+
- ext/markdown.h
|
203
|
+
- ext/mkdio.h
|
204
|
+
- ext/extconf.rb
|
205
|
+
- rake/191_compat.rb
|
206
|
+
- rake/dependencies.rb
|
207
|
+
- rake/helpers.rb
|
208
|
+
- rake/hg.rb
|
209
|
+
- rake/manual.rb
|
210
|
+
- rake/packaging.rb
|
211
|
+
- rake/publishing.rb
|
212
|
+
- rake/rdoc.rb
|
213
|
+
- rake/style.rb
|
214
|
+
- rake/svn.rb
|
215
|
+
- rake/testing.rb
|
216
|
+
- rake/verifytask.rb
|
217
|
+
- rake/win32.rb
|
218
|
+
- ./LICENSE.discount
|
219
|
+
- ./spec/data/antsugar.txt
|
220
|
+
- ./spec/data/ml-announce.txt
|
221
|
+
- ./spec/data/re-overflow.txt
|
222
|
+
- ./spec/data/re-overflow2.txt
|
223
|
+
- ./spec/data/markdowntest/Amps and angle encoding.text
|
224
|
+
- ./spec/data/markdowntest/Auto links.text
|
225
|
+
- ./spec/data/markdowntest/Backslash escapes.text
|
226
|
+
- ./spec/data/markdowntest/Blockquotes with code blocks.text
|
227
|
+
- ./spec/data/markdowntest/Code Blocks.text
|
228
|
+
- ./spec/data/markdowntest/Code Spans.text
|
229
|
+
- ./spec/data/markdowntest/Hard-wrapped paragraphs with list-like lines.text
|
230
|
+
- ./spec/data/markdowntest/Horizontal rules.text
|
231
|
+
- ./spec/data/markdowntest/Inline HTML (Advanced).text
|
232
|
+
- ./spec/data/markdowntest/Inline HTML (Simple).text
|
233
|
+
- ./spec/data/markdowntest/Inline HTML comments.text
|
234
|
+
- ./spec/data/markdowntest/Links, inline style.text
|
235
|
+
- ./spec/data/markdowntest/Links, reference style.text
|
236
|
+
- ./spec/data/markdowntest/Links, shortcut references.text
|
237
|
+
- ./spec/data/markdowntest/Literal quotes in titles.text
|
238
|
+
- ./spec/data/markdowntest/Markdown Documentation - Basics.text
|
239
|
+
- ./spec/data/markdowntest/Markdown Documentation - Syntax.text
|
240
|
+
- ./spec/data/markdowntest/Nested blockquotes.text
|
241
|
+
- ./spec/data/markdowntest/Ordered and unordered lists.text
|
242
|
+
- ./spec/data/markdowntest/Strong and em together.text
|
243
|
+
- ./spec/data/markdowntest/Tabs.text
|
244
|
+
- ./spec/data/markdowntest/Tidyness.text
|
245
|
+
- ./spec/data/markdowntest/Amps and angle encoding.html
|
246
|
+
- ./spec/data/markdowntest/Auto links.html
|
247
|
+
- ./spec/data/markdowntest/Backslash escapes.html
|
248
|
+
- ./spec/data/markdowntest/Blockquotes with code blocks.html
|
249
|
+
- ./spec/data/markdowntest/Code Blocks.html
|
250
|
+
- ./spec/data/markdowntest/Code Spans.html
|
251
|
+
- ./spec/data/markdowntest/Hard-wrapped paragraphs with list-like lines.html
|
252
|
+
- ./spec/data/markdowntest/Horizontal rules.html
|
253
|
+
- ./spec/data/markdowntest/Inline HTML (Advanced).html
|
254
|
+
- ./spec/data/markdowntest/Inline HTML (Simple).html
|
255
|
+
- ./spec/data/markdowntest/Inline HTML comments.html
|
256
|
+
- ./spec/data/markdowntest/Links, inline style.html
|
257
|
+
- ./spec/data/markdowntest/Links, reference style.html
|
258
|
+
- ./spec/data/markdowntest/Links, shortcut references.html
|
259
|
+
- ./spec/data/markdowntest/Literal quotes in titles.html
|
260
|
+
- ./spec/data/markdowntest/Markdown Documentation - Basics.html
|
261
|
+
- ./spec/data/markdowntest/Markdown Documentation - Syntax.html
|
262
|
+
- ./spec/data/markdowntest/Nested blockquotes.html
|
263
|
+
- ./spec/data/markdowntest/Ordered and unordered lists.html
|
264
|
+
- ./spec/data/markdowntest/Strong and em together.html
|
265
|
+
- ./spec/data/markdowntest/Tabs.html
|
266
|
+
- ./spec/data/markdowntest/Tidyness.html
|
267
|
+
- ./ext/VERSION
|
268
|
+
- Rakefile.local
|
269
|
+
has_rdoc: true
|
270
|
+
homepage: http://deveiate.org/projects/BlueCloth/
|
271
|
+
licenses: []
|
272
|
+
|
273
|
+
post_install_message:
|
274
|
+
rdoc_options:
|
275
|
+
- -w
|
276
|
+
- "4"
|
277
|
+
- -HN
|
278
|
+
- -i
|
279
|
+
- .
|
280
|
+
- -m
|
281
|
+
- README
|
282
|
+
- -t
|
283
|
+
- bluecloth
|
284
|
+
- -W
|
285
|
+
- http://deveiate.org/projects/BlueCloth/browser/
|
286
|
+
require_paths:
|
287
|
+
- lib
|
288
|
+
- ext
|
289
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
290
|
+
requirements:
|
291
|
+
- - ">="
|
292
|
+
- !ruby/object:Gem::Version
|
293
|
+
version: "0"
|
294
|
+
version:
|
295
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
296
|
+
requirements:
|
297
|
+
- - ">="
|
298
|
+
- !ruby/object:Gem::Version
|
299
|
+
version: "0"
|
300
|
+
version:
|
301
|
+
requirements: []
|
302
|
+
|
303
|
+
rubyforge_project: bluecloth
|
304
|
+
rubygems_version: 1.3.4
|
305
|
+
signing_key:
|
306
|
+
specification_version: 3
|
307
|
+
summary: BlueCloth is a Ruby implementation of Markdown
|
308
|
+
test_files:
|
309
|
+
- spec/bluecloth/101_changes_spec.rb
|
310
|
+
- spec/bluecloth/autolinks_spec.rb
|
311
|
+
- spec/bluecloth/blockquotes_spec.rb
|
312
|
+
- spec/bluecloth/code_spans_spec.rb
|
313
|
+
- spec/bluecloth/emphasis_spec.rb
|
314
|
+
- spec/bluecloth/entities_spec.rb
|
315
|
+
- spec/bluecloth/hrules_spec.rb
|
316
|
+
- spec/bluecloth/images_spec.rb
|
317
|
+
- spec/bluecloth/inline_html_spec.rb
|
318
|
+
- spec/bluecloth/links_spec.rb
|
319
|
+
- spec/bluecloth/lists_spec.rb
|
320
|
+
- spec/bluecloth/paragraphs_spec.rb
|
321
|
+
- spec/bluecloth/titles_spec.rb
|
322
|
+
- spec/bluecloth_spec.rb
|
323
|
+
- spec/bugfix_spec.rb
|
324
|
+
- spec/contributions_spec.rb
|
325
|
+
- spec/discount_spec.rb
|
326
|
+
- spec/markdowntest_spec.rb
|
327
|
+
- spec/lib/constants.rb
|
328
|
+
- spec/lib/helpers.rb
|
329
|
+
- spec/lib/matchers.rb
|