bonfire 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,4 @@
1
+ .idea/
2
+ pkg/*
3
+ *.gem
4
+ .bundle
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --colour
2
+ --format Fuubar
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm use default@amazon
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in bonfire.gemspec
4
+ gemspec
@@ -0,0 +1,45 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ bonfire (0.0.1)
5
+ haml (>= 3.0)
6
+ rdiscount (>= 1.6.8)
7
+ thor (>= 0.14.0)
8
+ tilt (>= 1.2.2)
9
+
10
+ GEM
11
+ remote: http://rubygems.org/
12
+ specs:
13
+ diff-lcs (1.1.2)
14
+ fuubar (0.0.3)
15
+ rspec (~> 2.0)
16
+ rspec-instafail (~> 0.1.4)
17
+ ruby-progressbar (~> 0.0.9)
18
+ haml (3.0.25)
19
+ nokogiri (1.4.4)
20
+ rdiscount (1.6.8)
21
+ rspec (2.5.0)
22
+ rspec-core (~> 2.5.0)
23
+ rspec-expectations (~> 2.5.0)
24
+ rspec-mocks (~> 2.5.0)
25
+ rspec-core (2.5.1)
26
+ rspec-expectations (2.5.0)
27
+ diff-lcs (~> 1.1.2)
28
+ rspec-instafail (0.1.6)
29
+ rspec-mocks (2.5.0)
30
+ ruby-progressbar (0.0.9)
31
+ thor (0.14.6)
32
+ tilt (1.2.2)
33
+
34
+ PLATFORMS
35
+ ruby
36
+
37
+ DEPENDENCIES
38
+ bonfire!
39
+ fuubar
40
+ haml (>= 3.0)
41
+ nokogiri
42
+ rdiscount (>= 1.6.8)
43
+ rspec (>= 2.5.0)
44
+ thor (>= 0.14.0)
45
+ tilt (>= 1.2.2)
@@ -0,0 +1,19 @@
1
+ Copyright (C) 2011 by Infews LLC
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ THE SOFTWARE.
@@ -0,0 +1,8 @@
1
+ # Bonfire
2
+
3
+ This is a set of Ruby scripts, packaged in a gem, that helps you write e-books for the Amazon Kindle.
4
+
5
+ Copyright 2011 Infews LLC
6
+
7
+ MIT Licensed
8
+
@@ -0,0 +1,9 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
3
+
4
+ desc "Run all specs"
5
+ task :spec do
6
+ system("rspec spec")
7
+ end
8
+
9
+ task :default => :spec
@@ -0,0 +1,31 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "bonfire/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "bonfire"
7
+ s.version = Bonfire::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Davis W. Frank"]
10
+ s.email = ["dwfrank+bonfire@infe.ws"]
11
+ s.homepage = "http://rubygems.org/gems/bonfire"
12
+ s.summary = %q{Ruby for eBooks}
13
+ s.description = %q{All the scripts you need to write books in Markdown then publish them via Amazon's Kindle
14
+ Digital Publishing.}
15
+
16
+ s.rubyforge_project = "bonfire"
17
+
18
+ s.files = `git ls-files`.split("\n")
19
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
20
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
21
+ s.require_paths = ["lib"]
22
+
23
+ s.add_dependency 'tilt', '>= 1.2.2'
24
+ s.add_dependency 'haml', '>= 3.0'
25
+ s.add_dependency 'thor', '>= 0.14.0'
26
+ s.add_dependency 'rdiscount', '>= 1.6.8'
27
+
28
+ s.add_development_dependency "rspec", ">= 2.5.0"
29
+ s.add_development_dependency "fuubar"
30
+ s.add_development_dependency "nokogiri"
31
+ end
@@ -0,0 +1,21 @@
1
+ require 'thor'
2
+ require 'tilt'
3
+
4
+ class Bonfire < Thor
5
+ include Thor::Actions
6
+
7
+ @@source_root = File.join(File.dirname(__FILE__), '..')
8
+ def self.source_root
9
+ @@source_root
10
+ end
11
+
12
+ def self.template_dir
13
+ @@template_dir
14
+ end
15
+
16
+ end
17
+
18
+ Dir["#{File.dirname(__FILE__)}/bonfire/**/*.rb"].each do |file|
19
+ require file
20
+ end
21
+
@@ -0,0 +1,43 @@
1
+ require 'rubygems'
2
+ require 'tilt'
3
+ require 'rdiscount'
4
+ require 'yaml'
5
+
6
+ class Bonfire < Thor
7
+
8
+ desc "draft", "Makes a single HTML file of sections in the correct order"
9
+
10
+ def draft
11
+ Dir.chdir(Dir.pwd) do
12
+ bonfire = YAML.load(File.open('bonfire.yml')) || {}
13
+
14
+ directory File.join(Dir.pwd, 'source/css'), 'output/draft/css'
15
+ directory File.join(Dir.pwd, 'source/images'), 'output/draft/images'
16
+
17
+ book_name = bonfire['book_name']
18
+ sections = bonfire['sections'].collect do |section|
19
+ section = "#{section}.md" #unless section.match(/\.md$/)
20
+ Tilt.new("source/sections/#{section}").render
21
+ end
22
+ css_files = Dir.chdir(File.join(Dir.pwd, 'source')) { Dir.glob('css/**/*.css') }
23
+
24
+ scope = Scope.build(:title => book_name,
25
+ :css_files => css_files,
26
+ :body => sections.join("\n\n<hr/>\n\n"))
27
+ template = load_template("draft/draft.haml")
28
+
29
+ FileUtils.mkdir_p('output/draft')
30
+ create_file "output/draft/#{book_name}_draft.html" do
31
+ template.render(scope)
32
+ end
33
+ end
34
+ end
35
+
36
+ no_tasks do
37
+ def load_template(filename)
38
+ template_path = File.join(Bonfire.source_root, 'templates', filename)
39
+ Tilt.new(template_path)
40
+ end
41
+ end
42
+
43
+ end
@@ -0,0 +1,11 @@
1
+ class Bonfire < Thor
2
+
3
+ attr_reader :book_name
4
+
5
+ desc "new BOOK_NAME", "Make a project directory for BOOK_NAME"
6
+ def new(name = "bonfire_book")
7
+ @book_name = name
8
+ directory "templates/new", name
9
+ end
10
+
11
+ end
@@ -0,0 +1,7 @@
1
+ require 'ostruct'
2
+
3
+ class Scope
4
+ def self.build(options = {})
5
+ OpenStruct.new(options)
6
+ end
7
+ end
@@ -0,0 +1,3 @@
1
+ class Bonfire
2
+ VERSION = "0.1.0"
3
+ end
@@ -0,0 +1,85 @@
1
+ require 'spec_helper'
2
+
3
+ describe "A call to 'bonfire draft'" do
4
+ before :each do
5
+ @tmp_dir = make_tmp_dir
6
+ @book_dir = File.join(@tmp_dir, "my_book")
7
+
8
+ @thor = Thor.new
9
+
10
+ capture_output do
11
+ Dir.chdir @tmp_dir do
12
+ @thor.invoke Bonfire, "new", "my_book"
13
+ end
14
+
15
+ Dir.chdir @book_dir do
16
+ system "cp #{Bonfire.source_root}/spec/fixtures/sections/*.md #{@book_dir}/source/sections"
17
+ system "cp #{Bonfire.source_root}/spec/fixtures/css/* #{@book_dir}/source/css"
18
+ system "cp #{Bonfire.source_root}/spec/fixtures/bonfire_with_sections.yml #{@book_dir}/bonfire.yml"
19
+
20
+ @thor.invoke Bonfire, 'draft'
21
+ end
22
+ end
23
+ end
24
+
25
+ after :each do
26
+ remove_dir @tmp_dir
27
+ end
28
+
29
+ it "should copy the images directory" do
30
+ File.exist?("#{@book_dir}/output/draft/images").should be_true
31
+ end
32
+
33
+ it "should copy the images directory contents" do
34
+ source_images = Dir.chdir "#{@book_dir}/source/images/" do
35
+ Dir.glob("**/*")
36
+ end
37
+ draft_images = Dir.chdir "#{@book_dir}/output/draft/images/" do
38
+ Dir.glob("**/*")
39
+ end
40
+
41
+ draft_images.should == source_images
42
+ end
43
+
44
+ it "should copy the css directory" do
45
+ File.exist?("#{@book_dir}/#{}output/draft/css").should be_true
46
+ end
47
+
48
+ it "should copy the css directory contents" do
49
+ all_files_in("#{@book_dir}/source/css/").should == all_files_in("#{@book_dir}/output/draft/css/")
50
+ end
51
+
52
+ it "should build a single HTML file" do
53
+ File.exist?("#{@book_dir}/#{}output/draft/my_book_draft.html").should be_true
54
+ end
55
+
56
+ describe "and that file" do
57
+ before(:each) do
58
+ @doc = Nokogiri(File.read("#{@book_dir}/output/draft/my_book_draft.html"))
59
+ @stylesheets_paths = @doc.search('link[@rel=stylesheet]').collect { |n| n["href"] }
60
+ end
61
+
62
+ it "should have the draft css file included" do
63
+ @stylesheets_paths.should include("css/draft.css")
64
+ end
65
+
66
+ it "should include any writer CSS files" do
67
+ @stylesheets_paths.should include("css/custom.css")
68
+ end
69
+
70
+ it "should have all of the sections in the body in the correct order" do
71
+ all_h1s = @doc.search('h1')
72
+
73
+ all_h1s.length.should == 3
74
+ all_h1s[0].content.should match(/^1/)
75
+ all_h1s[1].content.should match(/^2/)
76
+ all_h1s[2].content.should match(/^Appendix/)
77
+ end
78
+
79
+ it "should have inserted divider elements between the sections" do
80
+ @doc.search('hr').length.should == 2
81
+ end
82
+
83
+ end
84
+
85
+ end
@@ -0,0 +1,84 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
2
+
3
+ describe "A command of 'bonfire new'" do
4
+ before :each do
5
+ @tmp_dir = make_tmp_dir
6
+
7
+ @thor = Thor.new
8
+ end
9
+
10
+ after :each do
11
+ remove_dir @tmp_dir
12
+ end
13
+
14
+ shared_examples_for "generates a book project" do
15
+
16
+ it "should make a parent directory for the project" do
17
+ Dir.chdir "#{@tmp_dir}" do
18
+ File.directory?("#{@book_name}").should be_true
19
+ end
20
+ end
21
+
22
+ describe "and inside it" do
23
+
24
+ it "should make a directory for the source" do
25
+ Dir.chdir "#{@tmp_dir}/#{@book_name}" do
26
+ File.directory?('source').should be_true
27
+ end
28
+ end
29
+
30
+ it "should make a top-level YAML file for meta-data" do
31
+ Dir.chdir "#{@tmp_dir}/#{@book_name}" do
32
+ File.exist?("bonfire.yml").should be_true
33
+ end
34
+ end
35
+
36
+ it "should have the project name in the yaml file" do
37
+ yaml = YAML.load(File.open("#{@tmp_dir}/#{@book_name}/bonfire.yml"))
38
+ yaml["book_name"].should == @book_name
39
+ end
40
+
41
+ it "should make a directory for the book sections" do
42
+ Dir.chdir "#{@tmp_dir}/#{@book_name}/source" do
43
+ File.directory?('sections').should be_true
44
+ end
45
+ end
46
+
47
+ describe "and inside it" do
48
+ it "should place a sample chapter file" do
49
+ Dir.chdir "#{@tmp_dir}/#{@book_name}/source/sections" do
50
+ File.exist?('sample_chapter.md').should be_true
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
56
+
57
+
58
+ describe "with a name" do
59
+ before :each do
60
+ Dir.chdir @tmp_dir do
61
+ @book_name = "my_book"
62
+ capture_output do
63
+ @thor.invoke(Bonfire, "new", @book_name)
64
+ end
65
+ end
66
+ end
67
+
68
+ it_should_behave_like "generates a book project"
69
+ end
70
+
71
+ describe "without a name" do
72
+ before :each do
73
+ Dir.chdir @tmp_dir do
74
+ @book_name = "bonfire_book"
75
+ capture_output do
76
+ @thor.invoke Bonfire, "new"
77
+ end
78
+ end
79
+ end
80
+
81
+ it_should_behave_like "generates a book project"
82
+
83
+ end
84
+ end
@@ -0,0 +1,3 @@
1
+ book_name: my_book
2
+
3
+ sections:
@@ -0,0 +1,6 @@
1
+ book_name: my_book
2
+
3
+ sections:
4
+ - section_1
5
+ - section_2
6
+ - section_3
@@ -0,0 +1,3 @@
1
+ p {
2
+ margin: 0.25em;
3
+ }
@@ -0,0 +1,11 @@
1
+ # 1
2
+
3
+ ## A Dark and Stormy Night
4
+
5
+ It was a Dark and Stormy Night. 80 days around the world, we'll find a pot of gold just sitting where the rainbow's ending. Time - we'll fight against the time, and we'll fly on the white wings of the wind. 80 days around the world, no we won't say a word before the ship is really back. Round, round, all around the world. Round, all around the world. Round, all around the world. Round, all around the world.
6
+
7
+ Barnaby The Bear's my name, never call me Jack or James, I will sing my way to fame, Barnaby the Bear's my name. Birds taught me to sing, when they took me to their king, first I had to fly, in the sky so high so high, so high so high so high, so - if you want to sing this way, think of what you'd like to say, add a tune and you will see, just how easy it can be. Treacle pudding, fish and chips, fizzy drinks and liquorice, flowers, rivers, sand and sea, snowflakes and the stars are free. La la la la la, la la la la la la la, la la la la la la la, la la la la la la la la la la la la la, so - Barnaby The Bear's my name, never call me Jack or James, I will sing my way to fame, Barnaby the Bear's my name.
8
+
9
+ Mutley, you snickering, floppy eared hound. When courage is needed, you're never around. Those medals you wear on your moth-eaten chest should be there for bungling at which you are best. So, stop that pigeon, stop that pigeon, stop that pigeon, stop that pigeon, stop that pigeon, stop that pigeon, stop that pigeon. Howwww! Nab him, jab him, tab him, grab him, stop that pigeon now.
10
+
11
+ Ulysses, Ulysses - Soaring through all the galaxies. In search of Earth, flying in to the night. Ulysses, Ulysses - Fighting evil and tyranny, with all his power, and with all of his might. Ulysses - no-one else can do the things you do. Ulysses - like a bolt of thunder from the blue. Ulysses - always fighting all the evil forces bringing peace and justice to all.
@@ -0,0 +1,5 @@
1
+ # 2
2
+
3
+ ## Another chapter
4
+
5
+ This night wasn't nearly as stormy. But it was dark. I never spend much time in school but I taught ladies plenty. It's true I hire my body out for pay, hey hey. I've gotten burned over Cheryl Tiegs, blown up for Raquel Welch. But when I end up in the hay it's only hay, hey hey. I might jump an open drawbridge, or Tarzan from a vine. 'Cause I'm the unknown stuntman that makes Eastwood look so fine.
@@ -0,0 +1,3 @@
1
+ # Appendix
2
+
3
+ Some notes. Some words.
@@ -0,0 +1,12 @@
1
+ describe "Scope.build" do
2
+
3
+ before :each do
4
+ @scope = Scope.build(:foo => 'bar', :baz => 'quux')
5
+ end
6
+
7
+ it "should return an object responds to each key" do
8
+ @scope.foo.should_not be_nil
9
+ @scope.baz.should_not be_nil
10
+ end
11
+
12
+ end
@@ -0,0 +1,37 @@
1
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
2
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
+ require 'rubygems'
4
+
5
+ require 'thor'
6
+ require 'bonfire'
7
+
8
+
9
+ require 'rspec'
10
+ require 'pp'
11
+ require 'nokogiri'
12
+ require 'tmpdir'
13
+
14
+ def capture_output
15
+ output = StringIO.new
16
+ $stdout = output
17
+ yield
18
+ output.string
19
+ ensure
20
+ $stdout = STDOUT
21
+ end
22
+
23
+ def make_tmp_dir
24
+ tmp_dir = "#{Dir.tmpdir}/bonfire-spec-dir"
25
+ remove_dir tmp_dir
26
+ FileUtils.mkdir_p tmp_dir
27
+ tmp_dir
28
+ end
29
+
30
+ def remove_dir(dir)
31
+ FileUtils.rm_r dir if File.exists?(dir)
32
+ end
33
+
34
+
35
+ def all_files_in(dir)
36
+ Dir.chdir(dir) { Dir.glob("**/*") }
37
+ end
@@ -0,0 +1,8 @@
1
+ !!!
2
+ %html
3
+ %head
4
+ / This is a draft ebook file made with Bonfire (http://infews.github.com/bonfire)
5
+ %title= title
6
+ - css_files.each do |css|
7
+ %link{:type => 'text/css', :rel => 'stylesheet', :href => css }
8
+ %body= body
@@ -0,0 +1,23 @@
1
+ # BOOK NAME
2
+ # =========
3
+ #
4
+ # This is the name of the book. It needs to be a valid file name, so no special characters
5
+ book_name: <%= book_name %>
6
+
7
+ # SECTIONS
8
+ # ========
9
+ #
10
+ # This is a list of files that will be included in the book.
11
+ # By default, files in the sections/ folder will be included in alphabetical order. Use this section to override
12
+ # and include in an arbitrary order. The '.md' extension will be added to each filename.
13
+ #
14
+ # Example
15
+ # -------
16
+ # sections:
17
+ # - foreward
18
+ # - fishing_trip
19
+ # - dinner_afterwards
20
+ # - the_next_day
21
+ # - about_the_author
22
+
23
+ sections:
File without changes
@@ -0,0 +1,3 @@
1
+ # Chapter 1
2
+
3
+ It was a dark and stormy night.
metadata ADDED
@@ -0,0 +1,213 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bonfire
3
+ version: !ruby/object:Gem::Version
4
+ hash: 27
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 0
10
+ version: 0.1.0
11
+ platform: ruby
12
+ authors:
13
+ - Davis W. Frank
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-03-05 00:00:00 -08:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: tilt
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 27
30
+ segments:
31
+ - 1
32
+ - 2
33
+ - 2
34
+ version: 1.2.2
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: haml
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 7
46
+ segments:
47
+ - 3
48
+ - 0
49
+ version: "3.0"
50
+ type: :runtime
51
+ version_requirements: *id002
52
+ - !ruby/object:Gem::Dependency
53
+ name: thor
54
+ prerelease: false
55
+ requirement: &id003 !ruby/object:Gem::Requirement
56
+ none: false
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ hash: 39
61
+ segments:
62
+ - 0
63
+ - 14
64
+ - 0
65
+ version: 0.14.0
66
+ type: :runtime
67
+ version_requirements: *id003
68
+ - !ruby/object:Gem::Dependency
69
+ name: rdiscount
70
+ prerelease: false
71
+ requirement: &id004 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ hash: 31
77
+ segments:
78
+ - 1
79
+ - 6
80
+ - 8
81
+ version: 1.6.8
82
+ type: :runtime
83
+ version_requirements: *id004
84
+ - !ruby/object:Gem::Dependency
85
+ name: rspec
86
+ prerelease: false
87
+ requirement: &id005 !ruby/object:Gem::Requirement
88
+ none: false
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ hash: 27
93
+ segments:
94
+ - 2
95
+ - 5
96
+ - 0
97
+ version: 2.5.0
98
+ type: :development
99
+ version_requirements: *id005
100
+ - !ruby/object:Gem::Dependency
101
+ name: fuubar
102
+ prerelease: false
103
+ requirement: &id006 !ruby/object:Gem::Requirement
104
+ none: false
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ hash: 3
109
+ segments:
110
+ - 0
111
+ version: "0"
112
+ type: :development
113
+ version_requirements: *id006
114
+ - !ruby/object:Gem::Dependency
115
+ name: nokogiri
116
+ prerelease: false
117
+ requirement: &id007 !ruby/object:Gem::Requirement
118
+ none: false
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ hash: 3
123
+ segments:
124
+ - 0
125
+ version: "0"
126
+ type: :development
127
+ version_requirements: *id007
128
+ description: |-
129
+ All the scripts you need to write books in Markdown then publish them via Amazon's Kindle
130
+ Digital Publishing.
131
+ email:
132
+ - dwfrank+bonfire@infe.ws
133
+ executables: []
134
+
135
+ extensions: []
136
+
137
+ extra_rdoc_files: []
138
+
139
+ files:
140
+ - .gitignore
141
+ - .rspec
142
+ - .rvmrc
143
+ - Gemfile
144
+ - Gemfile.lock
145
+ - MIT_LICENSE.md
146
+ - README.md
147
+ - Rakefile
148
+ - bonfire.gemspec
149
+ - lib/bonfire.rb
150
+ - lib/bonfire/draft.rb
151
+ - lib/bonfire/new.rb
152
+ - lib/bonfire/scope.rb
153
+ - lib/bonfire/version.rb
154
+ - spec/cli/draft_spec.rb
155
+ - spec/cli/new_spec.rb
156
+ - spec/fixtures/bonfire_no_sections.yml
157
+ - spec/fixtures/bonfire_with_sections.yml
158
+ - spec/fixtures/css/custom.css
159
+ - spec/fixtures/sections/section_1.md
160
+ - spec/fixtures/sections/section_2.md
161
+ - spec/fixtures/sections/section_3.md
162
+ - spec/lib/scope_spec.rb
163
+ - spec/spec_helper.rb
164
+ - templates/draft/draft.haml
165
+ - templates/new/bonfire.yml.tt
166
+ - templates/new/source/css/draft.css
167
+ - templates/new/source/images/.empty_directory
168
+ - templates/new/source/sections/sample_chapter.md
169
+ has_rdoc: true
170
+ homepage: http://rubygems.org/gems/bonfire
171
+ licenses: []
172
+
173
+ post_install_message:
174
+ rdoc_options: []
175
+
176
+ require_paths:
177
+ - lib
178
+ required_ruby_version: !ruby/object:Gem::Requirement
179
+ none: false
180
+ requirements:
181
+ - - ">="
182
+ - !ruby/object:Gem::Version
183
+ hash: 3
184
+ segments:
185
+ - 0
186
+ version: "0"
187
+ required_rubygems_version: !ruby/object:Gem::Requirement
188
+ none: false
189
+ requirements:
190
+ - - ">="
191
+ - !ruby/object:Gem::Version
192
+ hash: 3
193
+ segments:
194
+ - 0
195
+ version: "0"
196
+ requirements: []
197
+
198
+ rubyforge_project: bonfire
199
+ rubygems_version: 1.3.7
200
+ signing_key:
201
+ specification_version: 3
202
+ summary: Ruby for eBooks
203
+ test_files:
204
+ - spec/cli/draft_spec.rb
205
+ - spec/cli/new_spec.rb
206
+ - spec/fixtures/bonfire_no_sections.yml
207
+ - spec/fixtures/bonfire_with_sections.yml
208
+ - spec/fixtures/css/custom.css
209
+ - spec/fixtures/sections/section_1.md
210
+ - spec/fixtures/sections/section_2.md
211
+ - spec/fixtures/sections/section_3.md
212
+ - spec/lib/scope_spec.rb
213
+ - spec/spec_helper.rb