massimo 0.3.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/.document +5 -0
- data/.gitignore +25 -0
- data/LICENSE +20 -0
- data/README.md +108 -0
- data/Rakefile +62 -0
- data/VERSION +1 -0
- data/bin/massimo +6 -0
- data/lib/massimo/command.rb +242 -0
- data/lib/massimo/helpers.rb +26 -0
- data/lib/massimo/javascript.rb +38 -0
- data/lib/massimo/page.rb +113 -0
- data/lib/massimo/resource.rb +52 -0
- data/lib/massimo/site.rb +186 -0
- data/lib/massimo/stylesheet.rb +46 -0
- data/lib/massimo/templates.rb +20 -0
- data/lib/massimo/view.rb +30 -0
- data/lib/massimo.rb +38 -0
- data/massimo.gemspec +130 -0
- data/test/assertions.rb +8 -0
- data/test/helper.rb +54 -0
- data/test/source/config.yml +4 -0
- data/test/source/helpers/test_helper.rb +5 -0
- data/test/source/javascripts/_plugin.js +1 -0
- data/test/source/javascripts/application.js +3 -0
- data/test/source/javascripts/lib.js +1 -0
- data/test/source/lib/site.rb +5 -0
- data/test/source/pages/_skipped_page.haml +0 -0
- data/test/source/pages/about_us.erb +5 -0
- data/test/source/pages/erb.erb +5 -0
- data/test/source/pages/erb_with_layout.erb +4 -0
- data/test/source/pages/feed.haml +6 -0
- data/test/source/pages/haml.haml +5 -0
- data/test/source/pages/html.html +4 -0
- data/test/source/pages/index.erb +4 -0
- data/test/source/pages/markdown.markdown +5 -0
- data/test/source/pages/posts/first-post.haml +1 -0
- data/test/source/pages/with_extension.haml +4 -0
- data/test/source/pages/with_meta_data.haml +7 -0
- data/test/source/pages/with_title.haml +4 -0
- data/test/source/pages/with_url.haml +4 -0
- data/test/source/pages/without_extension.haml +0 -0
- data/test/source/pages/without_meta_data.haml +1 -0
- data/test/source/pages/without_title.haml +1 -0
- data/test/source/pages/without_url.haml +1 -0
- data/test/source/stylesheets/_base.sass +2 -0
- data/test/source/stylesheets/application.sass +4 -0
- data/test/source/stylesheets/basic.css +3 -0
- data/test/source/stylesheets/less_file.less +5 -0
- data/test/source/views/layouts/application.haml +2 -0
- data/test/source/views/with_helper.haml +1 -0
- data/test/source/views/with_locals.haml +1 -0
- data/test/source/views/without_locals.haml +1 -0
- data/test/test_javascript.rb +30 -0
- data/test/test_page.rb +136 -0
- data/test/test_resource.rb +27 -0
- data/test/test_site.rb +126 -0
- data/test/test_stylesheet.rb +40 -0
- data/test/test_view.rb +46 -0
- metadata +191 -0
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
%h1 A Page without meta_data
|
@@ -0,0 +1 @@
|
|
1
|
+
%h1 A Page without a title
|
@@ -0,0 +1 @@
|
|
1
|
+
%h1 A Page without a URL
|
@@ -0,0 +1 @@
|
|
1
|
+
%p= test_method
|
@@ -0,0 +1 @@
|
|
1
|
+
%h1= title
|
@@ -0,0 +1 @@
|
|
1
|
+
%h1 A Partial
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "helper")
|
2
|
+
|
3
|
+
class TestJavascript < Test::Unit::TestCase
|
4
|
+
context "A Site" do
|
5
|
+
setup { site() }
|
6
|
+
|
7
|
+
should "concat js using Sprockets" do
|
8
|
+
javascript = Massimo::Javascript.new(source_dir("javascripts", "application.js"))
|
9
|
+
assert_equal %{var plugin = "plugin";\n\nvar application = "application";\n}, javascript.render
|
10
|
+
end
|
11
|
+
|
12
|
+
context "processing Javascripts" do
|
13
|
+
should "output the js file to the javascripts dir" do
|
14
|
+
Massimo::Javascript.new(source_dir("javascripts", "application.js")).process!
|
15
|
+
assert_equal %{var plugin = "plugin";\n\nvar application = "application";\n}, File.read(output_dir("javascripts", "application.js"))
|
16
|
+
end
|
17
|
+
|
18
|
+
teardown { clear_output }
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
context "A Production Site" do
|
23
|
+
setup { site(:production => true) }
|
24
|
+
|
25
|
+
should "minify js" do
|
26
|
+
javascript = Massimo::Javascript.new(source_dir("javascripts", "application.js"))
|
27
|
+
assert_equal %{\nvar plugin="plugin";var application="application";}, javascript.render
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
data/test/test_page.rb
ADDED
@@ -0,0 +1,136 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "helper")
|
2
|
+
|
3
|
+
class TestPage < Test::Unit::TestCase
|
4
|
+
context "A Site" do
|
5
|
+
setup { site() }
|
6
|
+
|
7
|
+
|
8
|
+
context "Page without meta_data" do
|
9
|
+
setup { page("without_meta_data.haml") }
|
10
|
+
|
11
|
+
should "return a non-empty hash when calling meta_data" do
|
12
|
+
assert_instance_of Hash, @page.meta_data
|
13
|
+
assert !@page.meta_data.empty?
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
context "Page with meta_data" do
|
18
|
+
setup { page("with_meta_data.haml") }
|
19
|
+
|
20
|
+
should "return a non-empty hash when calling meta_data" do
|
21
|
+
assert_instance_of Hash, @page.meta_data
|
22
|
+
assert !@page.meta_data.empty?
|
23
|
+
end
|
24
|
+
|
25
|
+
should "be able to access meta_data directly through methods on the Page" do
|
26
|
+
assert_instance_of Array, @page.tags
|
27
|
+
end
|
28
|
+
|
29
|
+
should "be able to write new meta_data dynamically" do
|
30
|
+
@page.new_tag = "test"
|
31
|
+
assert_equal "test", @page.new_tag
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
context "Page with title" do
|
36
|
+
setup { page("with_title.haml") }
|
37
|
+
|
38
|
+
should "fetch the title from the meta_data" do
|
39
|
+
assert_equal "A Title", @page.title
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
context "Page without title" do
|
44
|
+
setup { page("without_title.haml") }
|
45
|
+
|
46
|
+
should "create the title from the file name" do
|
47
|
+
assert_equal "Without Title", @page.title
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
context "Page with extension" do
|
52
|
+
setup { page("with_extension.haml") }
|
53
|
+
|
54
|
+
should "fetch the extension from the meta_data" do
|
55
|
+
assert_equal ".rss", @page.extension
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
context "Page without extension" do
|
60
|
+
setup { page("without_extension.haml") }
|
61
|
+
|
62
|
+
should "default to .html" do
|
63
|
+
assert_equal ".html", @page.extension
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
context "Page with URL" do
|
68
|
+
setup { page("with_url.haml") }
|
69
|
+
|
70
|
+
should "fetch the extension from the meta_data" do
|
71
|
+
assert_equal "/page-with-url", @page.url
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
context "Page without URL" do
|
76
|
+
setup { page("without_url.haml") }
|
77
|
+
|
78
|
+
should "default to .html" do
|
79
|
+
assert_equal "/without-url", @page.url
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
should "fetch the body from the page file" do
|
84
|
+
assert_equal %{<h1>An <%= "HTML" %> Page</h1>}, page("about_us.erb").body
|
85
|
+
end
|
86
|
+
|
87
|
+
context "rendering Pages" do
|
88
|
+
context "without layouts" do
|
89
|
+
|
90
|
+
should "render erb content from the page file correctly" do
|
91
|
+
assert_equal "<h1>ERB</h1>", page("erb.erb").render
|
92
|
+
end
|
93
|
+
|
94
|
+
should "render haml content from the page file correctly" do
|
95
|
+
assert_equal "<h1>Haml</h1>\n", page("haml.haml").render
|
96
|
+
end
|
97
|
+
|
98
|
+
should "render markdown content from the page file correctly" do
|
99
|
+
assert_equal "<h1>Markdown</h1>\n", page("markdown.markdown").render
|
100
|
+
end
|
101
|
+
|
102
|
+
should "render html content from the page file correctly" do
|
103
|
+
assert_equal "<h1>HTML</h1>", page("html.html").render
|
104
|
+
end
|
105
|
+
|
106
|
+
end
|
107
|
+
context "with layouts" do
|
108
|
+
|
109
|
+
should "filter the content from the page file correctly" do
|
110
|
+
assert_equal "<title>ERB With Layout</title>\n<body><h1>ERB With Layout</h1></body>\n", page("erb_with_layout.erb").render
|
111
|
+
end
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
context "processing Pages" do
|
116
|
+
|
117
|
+
should "write the filtered body to a new file in the output dir" do
|
118
|
+
page("index.erb").process!
|
119
|
+
assert_equal File.read(output_dir("index.html")), page.render
|
120
|
+
end
|
121
|
+
|
122
|
+
should "write the filtered body to a new file using the extension in the meta_data" do
|
123
|
+
page("feed.haml").process!
|
124
|
+
assert_equal File.read(output_dir("feed.rss")), page.render(false)
|
125
|
+
end
|
126
|
+
|
127
|
+
should "write the filtered body to a new file with a pretty URL scheme in the output dir" do
|
128
|
+
page("about_us.erb").process!
|
129
|
+
assert_equal File.read(output_dir("about-us", "index.html")), page.render(false)
|
130
|
+
end
|
131
|
+
|
132
|
+
teardown { clear_output }
|
133
|
+
|
134
|
+
end
|
135
|
+
end
|
136
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "helper")
|
2
|
+
|
3
|
+
class TestResource < Test::Unit::TestCase
|
4
|
+
context "A site" do
|
5
|
+
setup { site() }
|
6
|
+
|
7
|
+
should "raise an error when reading a non-existent resource" do
|
8
|
+
assert_raise Massimo::MissingResource do
|
9
|
+
Massimo::Resource.new("some/non-existent/file")
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
should "raise an error when reading an invalid resource" do
|
14
|
+
assert_raise Massimo::InvalidResource do
|
15
|
+
Massimo::Resource.new(source_dir("views", "layouts"))
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
should "have a method to get the resource's type (extension)" do
|
20
|
+
assert_equal Massimo::Resource.new(source_dir("pages", "about_us.erb")).resource_type, "erb"
|
21
|
+
end
|
22
|
+
|
23
|
+
should "render the resource files data" do
|
24
|
+
assert_equal Massimo::Resource.new(source_dir("pages", "without_meta_data.haml")).render, "%h1 A Page without meta_data"
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
data/test/test_site.rb
ADDED
@@ -0,0 +1,126 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "helper")
|
2
|
+
|
3
|
+
class TestSite < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def source_page_paths
|
6
|
+
@source_page_paths ||= Pathname.glob(source_dir("pages", "**", "*")).
|
7
|
+
reject { |p| p.basename.to_s =~ /^_/ || File.directory?(p) }.
|
8
|
+
collect { |p| p.basename }
|
9
|
+
end
|
10
|
+
|
11
|
+
should "store configuration options" do
|
12
|
+
@site = Massimo::Site(
|
13
|
+
:source => "./source",
|
14
|
+
:output => "./output"
|
15
|
+
)
|
16
|
+
assert_equal "./source", @site.options[:source]
|
17
|
+
assert_equal "./output", @site.options[:output]
|
18
|
+
end
|
19
|
+
|
20
|
+
should "use default options unless specified" do
|
21
|
+
@site = Massimo::Site(:output => "./output")
|
22
|
+
assert_equal Massimo::Site::DEFAULT_OPTIONS[:source], @site.options[:source]
|
23
|
+
assert_equal "./output", @site.options[:output]
|
24
|
+
end
|
25
|
+
|
26
|
+
should "have refresh the configuration if new options are set" do
|
27
|
+
Massimo::Site(:souce => "/some/strange/dir", :output => "/the/wrong/dir")
|
28
|
+
@site = Massimo::Site(:output => "/the/wrong/dir")
|
29
|
+
assert_equal Massimo::Site::DEFAULT_OPTIONS[:source], @site.options[:source]
|
30
|
+
end
|
31
|
+
|
32
|
+
should "have methods for determining the environment" do
|
33
|
+
@site = Massimo::Site()
|
34
|
+
assert @site.development?
|
35
|
+
@site = Massimo::Site(:environment => :development)
|
36
|
+
assert @site.development?
|
37
|
+
@site = Massimo::Site(:environment => :production)
|
38
|
+
assert @site.production?
|
39
|
+
end
|
40
|
+
|
41
|
+
context "A Normal Site" do
|
42
|
+
setup { site() }
|
43
|
+
|
44
|
+
should "have a source_dir method" do
|
45
|
+
assert_equal source_dir("some", "path"), @site.source_dir("some", "path")
|
46
|
+
end
|
47
|
+
|
48
|
+
should "have a directory shortcut methods" do
|
49
|
+
assert_equal source_dir("pages", "some", "file.txt"), @site.pages_dir("some", "file.txt")
|
50
|
+
assert_equal source_dir("views", "some", "file.txt"), @site.views_dir("some", "file.txt")
|
51
|
+
assert_equal source_dir("stylesheets", "some", "file.txt"), @site.stylesheets_dir("some", "file.txt")
|
52
|
+
assert_equal source_dir("javascripts", "some", "file.txt"), @site.javascripts_dir("some", "file.txt")
|
53
|
+
end
|
54
|
+
|
55
|
+
should "have a output_dir method" do
|
56
|
+
assert_equal output_dir("some", "path"), @site.output_dir("some", "path")
|
57
|
+
end
|
58
|
+
|
59
|
+
should "render a view by name" do
|
60
|
+
assert_equal "<h1>Title</h1>\n", @site.render_view("with_locals", :title => "Title")
|
61
|
+
end
|
62
|
+
|
63
|
+
should "find all the pages in the pages dir" do
|
64
|
+
page_paths = @site.pages.collect { |page| page.source_path.basename }
|
65
|
+
assert_equal_arrays source_page_paths, page_paths
|
66
|
+
end
|
67
|
+
|
68
|
+
should "add helpers from the helpers directory" do
|
69
|
+
assert_equal "<p>working</p>\n", @site.render_view("with_helper")
|
70
|
+
end
|
71
|
+
|
72
|
+
should "require the lib directory for further customization" do
|
73
|
+
assert_equal "working", @site.new_method
|
74
|
+
end
|
75
|
+
|
76
|
+
context "processing Sites" do
|
77
|
+
setup { @site.process! }
|
78
|
+
|
79
|
+
should "process each page in the pages dir" do
|
80
|
+
output_page_paths = Dir.glob(output_dir("**", "*.{html,rss}"))
|
81
|
+
assert_equal source_page_paths.length, output_page_paths.length
|
82
|
+
end
|
83
|
+
|
84
|
+
should "process each stylesheet file in the stylesheets dir" do
|
85
|
+
assert File.exist?(output_dir("stylesheets", "application.css"))
|
86
|
+
assert File.exist?(output_dir("stylesheets", "less_file.css"))
|
87
|
+
assert File.exist?(output_dir("stylesheets", "basic.css"))
|
88
|
+
end
|
89
|
+
|
90
|
+
should "process each javascript file in the javascripts dir" do
|
91
|
+
assert File.exist?(output_dir("javascripts", "application.js"))
|
92
|
+
assert File.exist?(output_dir("javascripts", "lib.js"))
|
93
|
+
end
|
94
|
+
|
95
|
+
teardown { clear_output }
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
should "find only the pages set in the :pages option" do
|
100
|
+
only_pages = %w{about_us.erb feed.haml index.erb}
|
101
|
+
page_paths = Massimo::Site(:source => source_dir, :pages => only_pages).pages(true).collect { |page| page.source_path.basename }
|
102
|
+
assert_equal_arrays only_pages, page_paths
|
103
|
+
end
|
104
|
+
|
105
|
+
should "skip pages set in the :skip_pages option (as an Array)" do
|
106
|
+
skip_pages = %w{about_us.erb erb.erb erb_with_layout.erb feed.haml posts/first-post.haml haml.haml html.html index.erb markdown.markdown}
|
107
|
+
page_paths = Massimo::Site(:source => source_dir, :skip_pages => skip_pages).pages(true).collect { |page| page.source_path.basename }
|
108
|
+
assert_equal_arrays [
|
109
|
+
"with_extension.haml",
|
110
|
+
"with_meta_data.haml",
|
111
|
+
"with_title.haml",
|
112
|
+
"with_url.haml",
|
113
|
+
"without_extension.haml",
|
114
|
+
"without_meta_data.haml",
|
115
|
+
"without_title.haml",
|
116
|
+
"without_url.haml"
|
117
|
+
], page_paths
|
118
|
+
end
|
119
|
+
|
120
|
+
should "skip pages set in the :skip_pages option (as a Proc)" do
|
121
|
+
site_options = { :source => source_dir, :skip_pages => lambda { |file| file.include?("with") } }
|
122
|
+
page_paths = Massimo::Site(site_options).pages(true).collect { |page| page.source_path.basename }
|
123
|
+
assert_equal_arrays %w{about_us.erb erb.erb feed.haml first-post.haml haml.haml html.html index.erb markdown.markdown}, page_paths
|
124
|
+
end
|
125
|
+
|
126
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "helper")
|
2
|
+
|
3
|
+
class TestStylesheet < Test::Unit::TestCase
|
4
|
+
context "A Site" do
|
5
|
+
setup { site() }
|
6
|
+
|
7
|
+
should "render CSS stylesheets" do
|
8
|
+
stylesheet = Massimo::Stylesheet.new(source_dir("stylesheets", "basic.css"))
|
9
|
+
assert_equal "body {\n font-size: 12px;\n}", stylesheet.render
|
10
|
+
end
|
11
|
+
|
12
|
+
should "render Sass stylesheets" do
|
13
|
+
stylesheet = Massimo::Stylesheet.new(source_dir("stylesheets", "application.sass"))
|
14
|
+
assert_equal "body {\n font-size: 12px; }\n\n#header {\n font-size: 36px; }\n", stylesheet.render
|
15
|
+
end
|
16
|
+
|
17
|
+
should "render Less stylesheets" do
|
18
|
+
stylesheet = Massimo::Stylesheet.new(source_dir("stylesheets", "less_file.less"))
|
19
|
+
assert_equal "#header { color: #4d926f; }\n", stylesheet.render
|
20
|
+
end
|
21
|
+
|
22
|
+
context "processing Stylesheets" do
|
23
|
+
should "output the css file to the stylesheets dir" do
|
24
|
+
Massimo::Stylesheet.new(source_dir("stylesheets", "application.sass")).process!
|
25
|
+
assert_equal "body {\n font-size: 12px; }\n\n#header {\n font-size: 36px; }\n", File.read(output_dir("stylesheets", "application.css"))
|
26
|
+
end
|
27
|
+
|
28
|
+
teardown { clear_output }
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
context "A Production Site" do
|
33
|
+
setup { site(:production => true)}
|
34
|
+
|
35
|
+
should "should compress Sass stylesheets" do
|
36
|
+
stylesheet = Massimo::Stylesheet.new(source_dir("stylesheets", "application.sass"))
|
37
|
+
assert_equal "body{font-size:12px}#header{font-size:36px}\n", stylesheet.render
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
data/test/test_view.rb
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "helper")
|
2
|
+
|
3
|
+
class TestView < Test::Unit::TestCase
|
4
|
+
context "A View with options" do
|
5
|
+
setup do
|
6
|
+
site(:haml => { :format => :xhtml })
|
7
|
+
view("without_locals.haml")
|
8
|
+
end
|
9
|
+
|
10
|
+
should "render through Tilt with the Site's options for the resource type" do
|
11
|
+
tilt = {}
|
12
|
+
stub(tilt).render
|
13
|
+
mock(Tilt).new(@view.file_name, 1, :format => :xhtml) { tilt }
|
14
|
+
@view.render
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
context "View without locals" do
|
19
|
+
setup { view("without_locals.haml") }
|
20
|
+
|
21
|
+
should "fetch the body from the view file" do
|
22
|
+
assert_equal "%h1 A Partial", @view.body
|
23
|
+
end
|
24
|
+
|
25
|
+
should "render the content from the view file correctly" do
|
26
|
+
assert_equal "<h1>A Partial</h1>\n", @view.render
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
context "View with locals" do
|
31
|
+
setup { view("with_locals.haml", :title => "A Partial") }
|
32
|
+
|
33
|
+
should "render the content from the page file correctly" do
|
34
|
+
assert_equal "<h1>A Partial</h1>\n", @view.render
|
35
|
+
end
|
36
|
+
|
37
|
+
should "be able to access meta_data directly" do
|
38
|
+
assert_equal "A Partial", @view.title
|
39
|
+
end
|
40
|
+
|
41
|
+
should "be able to write new meta_data dynamically" do
|
42
|
+
@view.new_data = "test"
|
43
|
+
assert_equal "test", @view.new_data
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
metadata
ADDED
@@ -0,0 +1,191 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: massimo
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.9
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Peter Browne
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-12-24 00:00:00 -06:00
|
13
|
+
default_executable: massimo
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: shoulda
|
17
|
+
type: :development
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 2.10.2
|
24
|
+
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: yard
|
27
|
+
type: :development
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.5.2
|
34
|
+
version:
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: activesupport
|
37
|
+
type: :runtime
|
38
|
+
version_requirement:
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 2.3.5
|
44
|
+
version:
|
45
|
+
- !ruby/object:Gem::Dependency
|
46
|
+
name: sinatra_more
|
47
|
+
type: :runtime
|
48
|
+
version_requirement:
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 0.3.26
|
54
|
+
version:
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: directory_watcher
|
57
|
+
type: :runtime
|
58
|
+
version_requirement:
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: 1.3.1
|
64
|
+
version:
|
65
|
+
- !ruby/object:Gem::Dependency
|
66
|
+
name: sprockets
|
67
|
+
type: :runtime
|
68
|
+
version_requirement:
|
69
|
+
version_requirements: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: 1.0.2
|
74
|
+
version:
|
75
|
+
- !ruby/object:Gem::Dependency
|
76
|
+
name: jsmin
|
77
|
+
type: :runtime
|
78
|
+
version_requirement:
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - ">="
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: 1.0.1
|
84
|
+
version:
|
85
|
+
description: Massimo builds HTML, Javascript, and CSS Files from your source.
|
86
|
+
email: peter@peterbrowne.net
|
87
|
+
executables:
|
88
|
+
- massimo
|
89
|
+
extensions: []
|
90
|
+
|
91
|
+
extra_rdoc_files:
|
92
|
+
- LICENSE
|
93
|
+
- README.md
|
94
|
+
files:
|
95
|
+
- .document
|
96
|
+
- .gitignore
|
97
|
+
- LICENSE
|
98
|
+
- README.md
|
99
|
+
- Rakefile
|
100
|
+
- VERSION
|
101
|
+
- bin/massimo
|
102
|
+
- lib/massimo.rb
|
103
|
+
- lib/massimo/command.rb
|
104
|
+
- lib/massimo/helpers.rb
|
105
|
+
- lib/massimo/javascript.rb
|
106
|
+
- lib/massimo/page.rb
|
107
|
+
- lib/massimo/resource.rb
|
108
|
+
- lib/massimo/site.rb
|
109
|
+
- lib/massimo/stylesheet.rb
|
110
|
+
- lib/massimo/templates.rb
|
111
|
+
- lib/massimo/view.rb
|
112
|
+
- massimo.gemspec
|
113
|
+
- test/assertions.rb
|
114
|
+
- test/helper.rb
|
115
|
+
- test/source/config.yml
|
116
|
+
- test/source/helpers/test_helper.rb
|
117
|
+
- test/source/javascripts/_plugin.js
|
118
|
+
- test/source/javascripts/application.js
|
119
|
+
- test/source/javascripts/lib.js
|
120
|
+
- test/source/lib/site.rb
|
121
|
+
- test/source/pages/_skipped_page.haml
|
122
|
+
- test/source/pages/about_us.erb
|
123
|
+
- test/source/pages/erb.erb
|
124
|
+
- test/source/pages/erb_with_layout.erb
|
125
|
+
- test/source/pages/feed.haml
|
126
|
+
- test/source/pages/haml.haml
|
127
|
+
- test/source/pages/html.html
|
128
|
+
- test/source/pages/index.erb
|
129
|
+
- test/source/pages/markdown.markdown
|
130
|
+
- test/source/pages/posts/first-post.haml
|
131
|
+
- test/source/pages/with_extension.haml
|
132
|
+
- test/source/pages/with_meta_data.haml
|
133
|
+
- test/source/pages/with_title.haml
|
134
|
+
- test/source/pages/with_url.haml
|
135
|
+
- test/source/pages/without_extension.haml
|
136
|
+
- test/source/pages/without_meta_data.haml
|
137
|
+
- test/source/pages/without_title.haml
|
138
|
+
- test/source/pages/without_url.haml
|
139
|
+
- test/source/stylesheets/_base.sass
|
140
|
+
- test/source/stylesheets/application.sass
|
141
|
+
- test/source/stylesheets/basic.css
|
142
|
+
- test/source/stylesheets/less_file.less
|
143
|
+
- test/source/views/layouts/application.haml
|
144
|
+
- test/source/views/with_helper.haml
|
145
|
+
- test/source/views/with_locals.haml
|
146
|
+
- test/source/views/without_locals.haml
|
147
|
+
- test/test_javascript.rb
|
148
|
+
- test/test_page.rb
|
149
|
+
- test/test_resource.rb
|
150
|
+
- test/test_site.rb
|
151
|
+
- test/test_stylesheet.rb
|
152
|
+
- test/test_view.rb
|
153
|
+
has_rdoc: true
|
154
|
+
homepage: http://github.com/peterbrowne/massimo
|
155
|
+
licenses: []
|
156
|
+
|
157
|
+
post_install_message:
|
158
|
+
rdoc_options:
|
159
|
+
- --charset=UTF-8
|
160
|
+
require_paths:
|
161
|
+
- lib
|
162
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: "0"
|
167
|
+
version:
|
168
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
169
|
+
requirements:
|
170
|
+
- - ">="
|
171
|
+
- !ruby/object:Gem::Version
|
172
|
+
version: "0"
|
173
|
+
version:
|
174
|
+
requirements: []
|
175
|
+
|
176
|
+
rubyforge_project:
|
177
|
+
rubygems_version: 1.3.5
|
178
|
+
signing_key:
|
179
|
+
specification_version: 3
|
180
|
+
summary: Massimo is a static website builder.
|
181
|
+
test_files:
|
182
|
+
- test/assertions.rb
|
183
|
+
- test/helper.rb
|
184
|
+
- test/source/helpers/test_helper.rb
|
185
|
+
- test/source/lib/site.rb
|
186
|
+
- test/test_javascript.rb
|
187
|
+
- test/test_page.rb
|
188
|
+
- test/test_resource.rb
|
189
|
+
- test/test_site.rb
|
190
|
+
- test/test_stylesheet.rb
|
191
|
+
- test/test_view.rb
|