bluecloth 2.0.10 → 2.0.11pre158
Sign up to get free protection for your applications and to get access to all the features.
- data.tar.gz.sig +0 -0
- data/.gemtest +0 -0
- data/History.md +4 -0
- data/LICENSE +1 -1
- data/Manifest.txt +103 -0
- data/README.md +103 -0
- data/Rakefile +95 -324
- data/ext/VERSION +1 -1
- data/ext/bluecloth.c +1 -1
- data/ext/bluecloth.h +1 -1
- data/ext/extconf.rb +7 -9
- data/ext/generate.c +5 -6
- data/ext/markdown.c +12 -8
- data/lib/bluecloth.rb +14 -11
- data/spec/bluecloth/101_changes_spec.rb +0 -4
- data/spec/bluecloth/TEMPLATE +36 -0
- data/spec/bluecloth/autolinks_spec.rb +2 -6
- data/spec/bluecloth/blockquotes_spec.rb +1 -5
- data/spec/bluecloth/code_spans_spec.rb +0 -4
- data/spec/bluecloth/emphasis_spec.rb +0 -4
- data/spec/bluecloth/entities_spec.rb +0 -4
- data/spec/bluecloth/hrules_spec.rb +0 -4
- data/spec/bluecloth/images_spec.rb +0 -4
- data/spec/bluecloth/inline_html_spec.rb +0 -4
- data/spec/bluecloth/links_spec.rb +0 -4
- data/spec/bluecloth/lists_spec.rb +0 -4
- data/spec/bluecloth/paragraphs_spec.rb +0 -4
- data/spec/bluecloth/titles_spec.rb +0 -4
- data/spec/bluecloth_spec.rb +3 -5
- data/spec/bugfix_spec.rb +6 -8
- data/spec/contributions_spec.rb +0 -2
- data/spec/discount_spec.rb +2 -6
- data/spec/lib/helpers.rb +24 -0
- data/spec/lib/matchers.rb +1 -0
- data/spec/markdowntest_spec.rb +0 -4
- metadata +222 -139
- metadata.gz.sig +0 -0
- data/ChangeLog +0 -444
- data/README +0 -81
- data/Rakefile.local +0 -48
- data/rake/191_compat.rb +0 -26
- data/rake/dependencies.rb +0 -76
- data/rake/documentation.rb +0 -123
- data/rake/helpers.rb +0 -502
- data/rake/hg.rb +0 -318
- data/rake/manual.rb +0 -787
- data/rake/packaging.rb +0 -129
- data/rake/publishing.rb +0 -341
- data/rake/style.rb +0 -62
- data/rake/svn.rb +0 -668
- data/rake/testing.rb +0 -152
- data/rake/verifytask.rb +0 -64
data/ext/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.0.
|
1
|
+
2.0.5
|
data/ext/bluecloth.c
CHANGED
data/ext/bluecloth.h
CHANGED
data/ext/extconf.rb
CHANGED
@@ -13,19 +13,17 @@ version = versionfile.read.chomp
|
|
13
13
|
if CONFIG['host_os'].match( 'mswin' )
|
14
14
|
$CFLAGS << ' -I.' << ' -W3' << ' -Zi'
|
15
15
|
else
|
16
|
-
$CFLAGS << ' -I.'
|
16
|
+
$CFLAGS << ' -I.'
|
17
17
|
end
|
18
18
|
$CPPFLAGS << %Q{ -DVERSION=\\"#{version}\\"}
|
19
19
|
|
20
20
|
# Add my own debugging hooks if building for me
|
21
|
-
if ENV['
|
21
|
+
if ENV['MAINTAINER_MODE']
|
22
|
+
$stderr.puts "Maintainer mode enabled."
|
23
|
+
$CFLAGS << ' -Wall'
|
22
24
|
$CFLAGS << ' -ggdb' << ' -DDEBUG'
|
23
25
|
end
|
24
26
|
|
25
|
-
def fail( *messages )
|
26
|
-
$stderr.puts( *messages )
|
27
|
-
exit( 1 )
|
28
|
-
end
|
29
27
|
|
30
28
|
# Stuff from configure.sh
|
31
29
|
have_func( "srand" ) || have_func( "srandom" )
|
@@ -35,13 +33,13 @@ have_func( "random" ) || have_func( "rand" )
|
|
35
33
|
have_func( "bzero", %w[string.h strings.h] )
|
36
34
|
|
37
35
|
unless have_func( "strcasecmp" ) || have_func( "stricmp" )
|
38
|
-
|
36
|
+
abort "This extension requires either strcasecmp() or stricmp()"
|
39
37
|
end
|
40
38
|
unless have_func( "strncasecmp" ) || have_func( "strnicmp" )
|
41
|
-
|
39
|
+
abort "This extensions requires either strncasecmp() or strnicmp()"
|
42
40
|
end
|
43
41
|
|
44
|
-
have_header( 'mkdio.h' ) or
|
42
|
+
have_header( 'mkdio.h' ) or abort "missing mkdio.h"
|
45
43
|
|
46
44
|
# Check for 1.9.xish encoding header
|
47
45
|
have_header( 'ruby/encoding.h' )
|
data/ext/generate.c
CHANGED
@@ -571,7 +571,7 @@ linkyformat(MMIOT *f, Cstring text, int image, Footnote *ref)
|
|
571
571
|
{
|
572
572
|
linkytype *tag;
|
573
573
|
|
574
|
-
if ( image )
|
574
|
+
if ( image || (ref == 0) )
|
575
575
|
tag = &imaget;
|
576
576
|
else if ( tag = pseudo(ref->link) ) {
|
577
577
|
if ( f->flags & (MKD_NO_EXT|MKD_SAFELINK) )
|
@@ -667,7 +667,7 @@ linkylinky(int image, MMIOT *f)
|
|
667
667
|
sizeof key, (stfu)__mkd_footsort) )
|
668
668
|
status = linkyformat(f, name, image, ref);
|
669
669
|
else if ( f->flags & IS_LABEL )
|
670
|
-
status = linkyformat(f, name, image,
|
670
|
+
status = linkyformat(f, name, image, 0);
|
671
671
|
}
|
672
672
|
}
|
673
673
|
}
|
@@ -1312,13 +1312,12 @@ text(MMIOT *f)
|
|
1312
1312
|
static void
|
1313
1313
|
printheader(Paragraph *pp, MMIOT *f)
|
1314
1314
|
{
|
1315
|
-
Qprintf(f, "<h%d", pp->hnumber);
|
1316
1315
|
if ( f->flags & MKD_TOC ) {
|
1317
|
-
|
1316
|
+
Qstring("<a name=\"", f);
|
1318
1317
|
mkd_string_to_anchor(T(pp->text->text), S(pp->text->text), Qchar, f, 1);
|
1319
|
-
|
1318
|
+
Qstring("\"></a>\n", f);
|
1320
1319
|
}
|
1321
|
-
|
1320
|
+
Qprintf(f, "<h%d>", pp->hnumber);
|
1322
1321
|
push(T(pp->text->text), S(pp->text->text), f);
|
1323
1322
|
text(f);
|
1324
1323
|
Qprintf(f, "</h%d>", pp->hnumber);
|
data/ext/markdown.c
CHANGED
@@ -669,25 +669,29 @@ szmarkerclass(char *p)
|
|
669
669
|
* check if the first line of a quoted block is the special div-not-quote
|
670
670
|
* marker %[kind:]name%
|
671
671
|
*/
|
672
|
+
#define iscsschar(c) (isalpha(c) || (c == '-') || (c == '_') )
|
673
|
+
|
672
674
|
static int
|
673
675
|
isdivmarker(Line *p, int start, DWORD flags)
|
674
676
|
{
|
675
677
|
char *s;
|
676
|
-
int
|
678
|
+
int last, i;
|
677
679
|
|
678
680
|
if ( flags & (MKD_NODIVQUOTE|MKD_STRICT) )
|
679
681
|
return 0;
|
680
682
|
|
681
|
-
|
682
|
-
s = T(p->text);
|
683
|
+
last= S(p->text) - (1 + start);
|
684
|
+
s = T(p->text) + start;
|
683
685
|
|
684
|
-
if (
|
686
|
+
if ( (last <= 0) || (*s != '%') || (s[last] != '%') )
|
687
|
+
return 0;
|
685
688
|
|
686
|
-
i = szmarkerclass(s+
|
687
|
-
len -= start+1;
|
689
|
+
i = szmarkerclass(s+1);
|
688
690
|
|
689
|
-
|
690
|
-
|
691
|
+
if ( !iscsschar(s[i+1]) )
|
692
|
+
return 0;
|
693
|
+
while ( ++i < last )
|
694
|
+
if ( !(isdigit(s[i]) || iscsschar(s[i])) )
|
691
695
|
return 0;
|
692
696
|
|
693
697
|
return 1;
|
data/lib/bluecloth.rb
CHANGED
@@ -1,8 +1,5 @@
|
|
1
1
|
#!/usr/bin/ruby
|
2
2
|
|
3
|
-
require 'pathname'
|
4
|
-
require 'rbconfig'
|
5
|
-
|
6
3
|
#
|
7
4
|
# Bluecloth is a Ruby implementation of Markdown, a text-to-HTML conversion
|
8
5
|
# tool.
|
@@ -21,7 +18,7 @@ require 'rbconfig'
|
|
21
18
|
#
|
22
19
|
# == Version
|
23
20
|
#
|
24
|
-
# $Id: bluecloth.rb,v
|
21
|
+
# $Id: bluecloth.rb,v fd890510cecf 2011/02/10 15:39:54 ged $
|
25
22
|
#
|
26
23
|
# == License
|
27
24
|
#
|
@@ -32,7 +29,7 @@ require 'rbconfig'
|
|
32
29
|
class BlueCloth
|
33
30
|
|
34
31
|
# Release Version
|
35
|
-
VERSION = '2.0.
|
32
|
+
VERSION = '2.0.11'
|
36
33
|
|
37
34
|
# The defaults for all supported options.
|
38
35
|
DEFAULT_OPTIONS = {
|
@@ -179,17 +176,23 @@ class BlueCloth
|
|
179
176
|
|
180
177
|
end # class BlueCloth
|
181
178
|
|
182
|
-
|
183
|
-
if RUBY_PLATFORM =~/(mswin|mingw)/i
|
184
|
-
major_minor = RUBY_VERSION[ /^(\d+\.\d+)/ ] or
|
185
|
-
raise "Oops, can't extract the major/minor version from #{RUBY_VERSION.dump}"
|
186
|
-
require "#{major_minor}/bluecloth_ext"
|
187
|
-
else
|
179
|
+
begin
|
188
180
|
require 'bluecloth_ext'
|
181
|
+
rescue LoadError => err
|
182
|
+
# If it's a Windows binary gem, try the <major>.<minor> subdirectory
|
183
|
+
if RUBY_PLATFORM =~/(mswin|mingw)/i
|
184
|
+
major_minor = RUBY_VERSION[ /^(\d+\.\d+)/ ] or
|
185
|
+
raise "Oops, can't extract the major/minor version from #{RUBY_VERSION.dump}"
|
186
|
+
require "#{major_minor}/bluecloth_ext"
|
187
|
+
else
|
188
|
+
raise
|
189
|
+
end
|
190
|
+
|
189
191
|
end
|
190
192
|
|
191
193
|
|
192
194
|
|
195
|
+
|
193
196
|
# Set the top-level 'Markdown' constant if it isn't already set
|
194
197
|
::Markdown = ::BlueCloth unless defined?( ::Markdown )
|
195
198
|
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "after the 1.0.1 changes" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
it "doesn't touch escapes in code blocks" do
|
33
29
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: utf-8
|
3
|
+
|
4
|
+
BEGIN {
|
5
|
+
require 'pathname'
|
6
|
+
basedir = Pathname.new( __FILE__ ).dirname.parent.parent
|
7
|
+
|
8
|
+
libdir = basedir + 'lib'
|
9
|
+
extdir = basedir + 'ext'
|
10
|
+
|
11
|
+
$LOAD_PATH.unshift( basedir ) unless $LOAD_PATH.include?( basedir )
|
12
|
+
$LOAD_PATH.unshift( libdir ) unless $LOAD_PATH.include?( libdir )
|
13
|
+
$LOAD_PATH.unshift( extdir ) unless $LOAD_PATH.include?( extdir )
|
14
|
+
}
|
15
|
+
|
16
|
+
require 'rspec'
|
17
|
+
require 'bluecloth'
|
18
|
+
|
19
|
+
require 'spec/lib/helpers'
|
20
|
+
|
21
|
+
|
22
|
+
#####################################################################
|
23
|
+
### C O N T E X T S
|
24
|
+
#####################################################################
|
25
|
+
|
26
|
+
describe BlueCloth, "" do
|
27
|
+
|
28
|
+
it "does something cool" do
|
29
|
+
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
30
|
+
---
|
31
|
+
---
|
32
|
+
end
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
|
@@ -4,10 +4,10 @@
|
|
4
4
|
BEGIN {
|
5
5
|
require 'pathname'
|
6
6
|
basedir = Pathname.new( __FILE__ ).dirname.parent.parent
|
7
|
-
|
7
|
+
|
8
8
|
libdir = basedir + 'lib'
|
9
9
|
extdir = basedir + 'ext'
|
10
|
-
|
10
|
+
|
11
11
|
$LOAD_PATH.unshift( basedir ) unless $LOAD_PATH.include?( basedir )
|
12
12
|
$LOAD_PATH.unshift( libdir ) unless $LOAD_PATH.include?( libdir )
|
13
13
|
$LOAD_PATH.unshift( extdir ) unless $LOAD_PATH.include?( extdir )
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "auto-links" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
it "supports HTTP auto-links" do
|
33
29
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "blockquotes" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
### [Blockquotes]
|
33
29
|
|
@@ -113,7 +109,7 @@ describe BlueCloth, "blockquotes" do
|
|
113
109
|
end
|
114
110
|
|
115
111
|
# Blockquotes with a <pre> section
|
116
|
-
it "supports block-level HTML inside of blockquotes" do
|
112
|
+
it "supports block-level HTML inside of blockquotes", :pedantic => true do
|
117
113
|
pending "a fix in Discount" do
|
118
114
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
119
115
|
> The best approximation of the problem is the following code:
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "that contains code blocks or spans" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
it "wraps CODE tags around backticked spans" do
|
33
29
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "emphasis" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
it "treats single asterisks as indicators of emphasis" do
|
33
29
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "document with entities" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
it "escapes special characters" do
|
33
29
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "horizontal rules" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
# Hrule -- three asterisks
|
33
29
|
it "produces a horizontal rule tag from three asterisks on a line by themselves" do
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "images" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
### [Images]
|
33
29
|
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "document with inline HTML" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
it "preserves TABLE block" do
|
33
29
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
@@ -16,8 +16,6 @@ require 'rspec'
|
|
16
16
|
require 'bluecloth'
|
17
17
|
|
18
18
|
require 'spec/lib/helpers'
|
19
|
-
require 'spec/lib/constants'
|
20
|
-
require 'spec/lib/matchers'
|
21
19
|
|
22
20
|
|
23
21
|
#####################################################################
|
@@ -25,8 +23,6 @@ require 'spec/lib/matchers'
|
|
25
23
|
#####################################################################
|
26
24
|
|
27
25
|
describe BlueCloth, "links" do
|
28
|
-
include BlueCloth::TestConstants,
|
29
|
-
BlueCloth::Matchers
|
30
26
|
|
31
27
|
it "supports inline links" do
|
32
28
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|
@@ -17,8 +17,6 @@ require 'rspec'
|
|
17
17
|
require 'bluecloth'
|
18
18
|
|
19
19
|
require 'spec/lib/helpers'
|
20
|
-
require 'spec/lib/constants'
|
21
|
-
require 'spec/lib/matchers'
|
22
20
|
|
23
21
|
|
24
22
|
#####################################################################
|
@@ -26,8 +24,6 @@ require 'spec/lib/matchers'
|
|
26
24
|
#####################################################################
|
27
25
|
|
28
26
|
describe BlueCloth, "lists" do
|
29
|
-
include BlueCloth::TestConstants,
|
30
|
-
BlueCloth::Matchers
|
31
27
|
|
32
28
|
it "support unordered lists with asterisk bullets" do
|
33
29
|
the_indented_markdown( <<-"---" ).should be_transformed_into(<<-"---").without_indentation
|