jackb 0.0.5 → 0.0.6.beta

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/.rvmrc ADDED
@@ -0,0 +1,3 @@
1
+ rvm use 1.8.7@jackb
2
+ rvm_gemset_create_on_use_flag=1
3
+ rvm gemset use jacbk
data/Gemfile CHANGED
@@ -2,7 +2,6 @@ source "http://rubygems.org"
2
2
 
3
3
  gem 'rdiscount'
4
4
  gem 'open4'
5
- gem 'albino'
6
5
 
7
6
  gem 'activesupport', '3.0.0.beta4'
8
7
  gem 'i18n'
@@ -10,6 +9,10 @@ gem 'tzinfo'
10
9
 
11
10
  gem 'jeweler'
12
11
 
12
+ group :development do
13
+ gem 'albino'
14
+ end
15
+
13
16
  group :test do
14
17
  gem 'test-unit', '1.2.3'
15
18
  gem 'rspec'
data/Gemfile.lock ADDED
@@ -0,0 +1,39 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ activesupport (3.0.0.beta4)
5
+ albino (1.0)
6
+ gemcutter (0.6.1)
7
+ git (1.2.5)
8
+ hoe (2.6.1)
9
+ rake (>= 0.8.7)
10
+ rubyforge (>= 2.0.4)
11
+ i18n (0.4.1)
12
+ jeweler (1.4.0)
13
+ gemcutter (>= 0.1.0)
14
+ git (>= 1.2.5)
15
+ rubyforge (>= 2.0.0)
16
+ json_pure (1.4.6)
17
+ open4 (1.0.1)
18
+ rake (0.8.7)
19
+ rdiscount (1.6.5)
20
+ rspec (1.3.0)
21
+ rubyforge (2.0.4)
22
+ json_pure (>= 1.1.7)
23
+ test-unit (1.2.3)
24
+ hoe (>= 1.5.1)
25
+ tzinfo (0.3.22)
26
+
27
+ PLATFORMS
28
+ ruby
29
+
30
+ DEPENDENCIES
31
+ activesupport (= 3.0.0.beta4)
32
+ albino
33
+ i18n
34
+ jeweler
35
+ open4
36
+ rdiscount
37
+ rspec
38
+ test-unit (= 1.2.3)
39
+ tzinfo
data/Rakefile CHANGED
@@ -31,8 +31,7 @@ begin
31
31
 
32
32
  gemspec.add_dependency('rdiscount', '>= 1.6.3.2')
33
33
  gemspec.add_dependency('open4', '>= 1.0.1')
34
- gemspec.add_dependency('albino', '>= 1.0')
35
34
  end
36
35
  rescue LoadError
37
36
  puts "Jeweler not available. Install it with: gem install jeweler"
38
- end
37
+ end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.5
1
+ 0.0.6.beta
data/jackb.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{jackb}
8
- s.version = "0.0.5"
8
+ s.version = "0.0.6.beta"
9
9
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
10
+ s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Damien MATHIEU"]
12
- s.date = %q{2010-06-19}
12
+ s.date = %q{2010-08-17}
13
13
  s.description = %q{Takes some content and parses it depending of the format your specify (HTML or Markdown)}
14
14
  s.email = %q{42@dmathieu.com}
15
15
  s.extra_rdoc_files = [
@@ -17,7 +17,9 @@ Gem::Specification.new do |s|
17
17
  ]
18
18
  s.files = [
19
19
  ".gitignore",
20
+ ".rvmrc",
20
21
  "Gemfile",
22
+ "Gemfile.lock",
21
23
  "README.md",
22
24
  "Rakefile",
23
25
  "VERSION",
@@ -35,13 +37,13 @@ Gem::Specification.new do |s|
35
37
  s.homepage = %q{http://github.com/dmathieu/jackb}
36
38
  s.rdoc_options = ["--charset=UTF-8"]
37
39
  s.require_paths = ["lib"]
38
- s.rubygems_version = %q{1.3.6}
40
+ s.rubygems_version = %q{1.3.7}
39
41
  s.summary = %q{Is your content in HTML or Markdown ?}
40
42
  s.test_files = [
41
- "spec/lib/highlight_spec.rb",
42
- "spec/lib/html_spec.rb",
43
- "spec/lib/jackb_spec.rb",
43
+ "spec/lib/jackb_spec.rb",
44
44
  "spec/lib/markdown_spec.rb",
45
+ "spec/lib/html_spec.rb",
46
+ "spec/lib/highlight_spec.rb",
45
47
  "spec/spec_helper.rb"
46
48
  ]
47
49
 
@@ -49,19 +51,16 @@ Gem::Specification.new do |s|
49
51
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
50
52
  s.specification_version = 3
51
53
 
52
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
54
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
53
55
  s.add_runtime_dependency(%q<rdiscount>, [">= 1.6.3.2"])
54
56
  s.add_runtime_dependency(%q<open4>, [">= 1.0.1"])
55
- s.add_runtime_dependency(%q<albino>, [">= 1.0"])
56
57
  else
57
58
  s.add_dependency(%q<rdiscount>, [">= 1.6.3.2"])
58
59
  s.add_dependency(%q<open4>, [">= 1.0.1"])
59
- s.add_dependency(%q<albino>, [">= 1.0"])
60
60
  end
61
61
  else
62
62
  s.add_dependency(%q<rdiscount>, [">= 1.6.3.2"])
63
63
  s.add_dependency(%q<open4>, [">= 1.0.1"])
64
- s.add_dependency(%q<albino>, [">= 1.0"])
65
64
  end
66
65
  end
67
66
 
@@ -1,4 +1,5 @@
1
- require 'albino'
1
+ require 'net/http'
2
+ require 'uri'
2
3
 
3
4
  module Jackb
4
5
 
@@ -9,7 +10,11 @@ module Jackb
9
10
 
10
11
  def render(content)
11
12
  content.gsub(highlight_regex) do |s|
12
- Albino.new(unescape($2), extract_lang($1))
13
+ code, lang = unescape($2), extract_lang($1)
14
+ Net::HTTP.post_form(
15
+ URI.parse('http://pygments.appspot.com/'),
16
+ {:lang => lang, :code => code}
17
+ ).body
13
18
  end
14
19
  end
15
20
 
@@ -30,4 +35,4 @@ module Jackb
30
35
  /<pre><code([^<>]*)>(.*?)<\/code><\/pre>/im
31
36
  end
32
37
  end
33
- end
38
+ end
@@ -3,11 +3,11 @@ require 'spec_helper'
3
3
  describe Jackb::Highlight do
4
4
  describe 'code highlighting' do
5
5
  it 'should highlight the code' do
6
- Jackb::Highlight.render('<pre><code><%= "test" %></code></pre>').should eql(Albino.new('<%= "test" %>', :ruby).to_s)
6
+ Jackb::Highlight.render('<pre><code><%= "test" %></code></pre>').should eql(Albino.new('<%= "test" %>', :ruby).to_s + "\n")
7
7
  end
8
8
 
9
9
  it 'should highlight the code in an other language' do
10
- Jackb::Highlight.render('<pre><code language="python"><%= "test" %></code></pre>').should eql(Albino.new('<%= "test" %>', :python).to_s)
10
+ Jackb::Highlight.render('<pre><code language="python"><%= "test" %></code></pre>').should eql(Albino.new('<%= "test" %>', :python).to_s + "\n")
11
11
  end
12
12
 
13
13
  describe 'unescape' do
@@ -33,4 +33,4 @@ describe Jackb::Highlight do
33
33
  end
34
34
  end
35
35
  end
36
- end
36
+ end
@@ -8,16 +8,16 @@ describe Jackb::Html do
8
8
  end
9
9
 
10
10
  it 'should highlight the code' do
11
- Jackb::Html.new('[code language="ruby"]<%= "test" %>[/code]').render.should eql(Albino.new('<%= "test" %>', :ruby).to_s)
11
+ Jackb::Html.new('[code language="ruby"]<%= "test" %>[/code]').render.should eql(Albino.new('<%= "test" %>', :ruby).to_s + "\n")
12
12
  end
13
13
 
14
14
  it 'should highlight multiple codes' do
15
15
  Jackb::Html.new('Some Text. [code language="ruby"]<%= "test" %>[/code]; some other text. [code language="python"]<%= "testing" %>[/code]').
16
- render.should eql("Some Text. #{Albino.new('<%= "test" %>', :ruby).to_s}; some other text. #{Albino.new('<%= "testing" %>', :python).to_s}")
16
+ render.should eql("Some Text. #{Albino.new('<%= "test" %>', :ruby).to_s}\n; some other text. #{Albino.new('<%= "testing" %>', :python).to_s}\n")
17
17
  end
18
18
 
19
19
  it 'should highlight multiple codes with new lines' do
20
20
  Jackb::Html.new("Some Text. [code language='ruby']<%= 'test' %>\n\n<%= 'second' %>[/code]; some other text. [code language='python']<%= 'testing' %>[/code]").
21
- render.should eql("Some Text. #{Albino.new("<%= 'test' %>\n\n<%= 'second' %>", :ruby).to_s}; some other text. #{Albino.new("<%= 'testing' %>", :python).to_s}")
21
+ render.should eql("Some Text. #{Albino.new("<%= 'test' %>\n\n<%= 'second' %>", :ruby).to_s}\n; some other text. #{Albino.new("<%= 'testing' %>", :python).to_s}\n")
22
22
  end
23
- end
23
+ end
@@ -9,6 +9,6 @@ describe Jackb::Markdown do
9
9
 
10
10
  it 'should highlight the code' do
11
11
  Jackb::Markdown.new("Hey!\n\n <%= \"test\" %>").render.
12
- should eql("<p>Hey!</p>\n\n#{Albino.new('<%= "test" %>', :ruby).to_s}\n")
12
+ should eql("<p>Hey!</p>\n\n#{Albino.new('<%= "test" %>', :ruby).to_s}\n\n")
13
13
  end
14
- end
14
+ end
data/spec/spec_helper.rb CHANGED
@@ -6,4 +6,10 @@ rescue LoadError
6
6
  Bundler.setup
7
7
  end
8
8
 
9
- require 'lib/jackb'
9
+ #
10
+ # We're using Albino only for the tests
11
+ # In order to avoid calling pygments.appspot every time
12
+ # It's not required to launch the app
13
+ require 'albino'
14
+
15
+ require 'lib/jackb'
metadata CHANGED
@@ -1,12 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jackb
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 31098201
5
+ prerelease: true
5
6
  segments:
6
7
  - 0
7
8
  - 0
8
- - 5
9
- version: 0.0.5
9
+ - 6
10
+ - beta
11
+ version: 0.0.6.beta
10
12
  platform: ruby
11
13
  authors:
12
14
  - Damien MATHIEU
@@ -14,14 +16,17 @@ autorequire:
14
16
  bindir: bin
15
17
  cert_chain: []
16
18
 
17
- date: 2010-06-19 00:00:00 +02:00
19
+ date: 2010-08-17 00:00:00 +02:00
18
20
  default_executable:
19
21
  dependencies:
20
22
  - !ruby/object:Gem::Dependency
23
+ prerelease: false
21
24
  version_requirements: &id001 !ruby/object:Gem::Requirement
25
+ none: false
22
26
  requirements:
23
27
  - - ">="
24
28
  - !ruby/object:Gem::Version
29
+ hash: 103
25
30
  segments:
26
31
  - 1
27
32
  - 6
@@ -30,13 +35,15 @@ dependencies:
30
35
  version: 1.6.3.2
31
36
  name: rdiscount
32
37
  requirement: *id001
33
- prerelease: false
34
38
  type: :runtime
35
39
  - !ruby/object:Gem::Dependency
40
+ prerelease: false
36
41
  version_requirements: &id002 !ruby/object:Gem::Requirement
42
+ none: false
37
43
  requirements:
38
44
  - - ">="
39
45
  - !ruby/object:Gem::Version
46
+ hash: 21
40
47
  segments:
41
48
  - 1
42
49
  - 0
@@ -44,20 +51,6 @@ dependencies:
44
51
  version: 1.0.1
45
52
  name: open4
46
53
  requirement: *id002
47
- prerelease: false
48
- type: :runtime
49
- - !ruby/object:Gem::Dependency
50
- version_requirements: &id003 !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- segments:
55
- - 1
56
- - 0
57
- version: "1.0"
58
- name: albino
59
- requirement: *id003
60
- prerelease: false
61
54
  type: :runtime
62
55
  description: Takes some content and parses it depending of the format your specify (HTML or Markdown)
63
56
  email: 42@dmathieu.com
@@ -69,7 +62,9 @@ extra_rdoc_files:
69
62
  - README.md
70
63
  files:
71
64
  - .gitignore
65
+ - .rvmrc
72
66
  - Gemfile
67
+ - Gemfile.lock
73
68
  - README.md
74
69
  - Rakefile
75
70
  - VERSION
@@ -93,29 +88,35 @@ rdoc_options:
93
88
  require_paths:
94
89
  - lib
95
90
  required_ruby_version: !ruby/object:Gem::Requirement
91
+ none: false
96
92
  requirements:
97
93
  - - ">="
98
94
  - !ruby/object:Gem::Version
95
+ hash: 3
99
96
  segments:
100
97
  - 0
101
98
  version: "0"
102
99
  required_rubygems_version: !ruby/object:Gem::Requirement
100
+ none: false
103
101
  requirements:
104
- - - ">="
102
+ - - ">"
105
103
  - !ruby/object:Gem::Version
104
+ hash: 25
106
105
  segments:
107
- - 0
108
- version: "0"
106
+ - 1
107
+ - 3
108
+ - 1
109
+ version: 1.3.1
109
110
  requirements: []
110
111
 
111
112
  rubyforge_project:
112
- rubygems_version: 1.3.6
113
+ rubygems_version: 1.3.7
113
114
  signing_key:
114
115
  specification_version: 3
115
116
  summary: Is your content in HTML or Markdown ?
116
117
  test_files:
117
- - spec/lib/highlight_spec.rb
118
- - spec/lib/html_spec.rb
119
118
  - spec/lib/jackb_spec.rb
120
119
  - spec/lib/markdown_spec.rb
120
+ - spec/lib/html_spec.rb
121
+ - spec/lib/highlight_spec.rb
121
122
  - spec/spec_helper.rb