middleman 0.5.5 → 0.9.0.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (147) hide show
  1. data/.document +1 -2
  2. data/.gitignore +3 -2
  3. data/LICENSE +0 -0
  4. data/README.rdoc +4 -0
  5. data/Rakefile +28 -36
  6. data/VERSION +1 -1
  7. data/bin/mm-build +7 -113
  8. data/bin/mm-init +11 -5
  9. data/bin/mm-server +56 -3
  10. data/features/asset_host.feature +12 -0
  11. data/features/automatic_image_sizes.feature +14 -0
  12. data/features/cache_buster.feature +22 -0
  13. data/features/generator.feature +8 -0
  14. data/features/minify_css.feature +22 -0
  15. data/features/minify_javascript.feature +12 -0
  16. data/features/page_alias_and_layouts.feature +12 -0
  17. data/features/relative_assets.feature +12 -0
  18. data/features/step_definitions/asset_host_steps.rb +7 -0
  19. data/features/step_definitions/env.rb +3 -0
  20. data/features/step_definitions/generator_steps.rb +24 -0
  21. data/features/step_definitions/middleman_steps.rb +28 -0
  22. data/features/step_definitions/page_layout_steps.rb +13 -0
  23. data/lib/middleman.rb +6 -132
  24. data/lib/middleman/assets.rb +33 -0
  25. data/lib/middleman/base.rb +147 -0
  26. data/lib/middleman/builder.rb +59 -0
  27. data/lib/middleman/config.ru +2 -0
  28. data/lib/middleman/features.rb +39 -0
  29. data/lib/middleman/features/asset_host.rb +21 -0
  30. data/lib/middleman/features/automatic_image_sizes.rb +31 -0
  31. data/lib/middleman/features/automatic_image_sizes/fastimage.rb +282 -0
  32. data/lib/middleman/features/cache_buster.rb +43 -0
  33. data/lib/middleman/features/default_helpers.rb +68 -0
  34. data/lib/middleman/features/livereload.rb +19 -0
  35. data/lib/middleman/features/minify_css.rb +9 -0
  36. data/lib/middleman/features/minify_javascript.rb +20 -0
  37. data/lib/middleman/features/minify_javascript/rack.rb +31 -0
  38. data/lib/middleman/features/relative_assets.rb +35 -0
  39. data/lib/middleman/features/slickmap.rb +118 -0
  40. data/lib/middleman/features/smush_pngs.rb +38 -0
  41. data/lib/middleman/features/ugly_haml.rb +7 -0
  42. data/lib/middleman/renderers.rb +26 -0
  43. data/lib/middleman/renderers/coffee.rb +28 -0
  44. data/lib/middleman/renderers/haml.rb +47 -0
  45. data/lib/middleman/renderers/sass.rb +67 -0
  46. data/lib/middleman/template/init.rbt +57 -0
  47. data/lib/middleman/template/views/index.html.haml +4 -0
  48. data/lib/middleman/template/views/layout.haml +11 -4
  49. data/lib/middleman/template/views/stylesheets/site.css.sass +27 -0
  50. data/lib/middleman/templater+dynamic_renderer.rb +26 -0
  51. data/middleman.gemspec +121 -107
  52. data/spec/builder_spec.rb +17 -16
  53. data/spec/fixtures/sample/init.rb +28 -2
  54. data/spec/fixtures/sample/public/images/blank.gif +0 -0
  55. data/spec/fixtures/sample/public/static.html +0 -0
  56. data/{vendor/sinatra-maruku/examples/public/javascripts/application.js → spec/fixtures/sample/public/stylesheets/auto-css.css} +0 -0
  57. data/spec/fixtures/sample/public/stylesheets/static.css +0 -0
  58. data/{vendor/sinatra-maruku/examples/public/stylesheets/print.css → spec/fixtures/sample/public/stylesheets/sub1/auto-css.css} +0 -0
  59. data/spec/fixtures/sample/public/stylesheets/sub1/sub2/auto-css.css +0 -0
  60. data/spec/fixtures/sample/views/_partial.haml +0 -0
  61. data/spec/fixtures/sample/views/asset_host.html.haml +1 -0
  62. data/spec/fixtures/sample/views/auto-css.html.haml +1 -0
  63. data/spec/fixtures/sample/views/auto-image-sizes.html.haml +1 -0
  64. data/spec/fixtures/sample/views/cache-buster.html.haml +2 -0
  65. data/spec/fixtures/sample/views/{index.haml → custom-layout.html.haml} +0 -0
  66. data/spec/fixtures/sample/views/custom.haml +5 -0
  67. data/spec/fixtures/sample/views/index.html.haml +1 -0
  68. data/spec/fixtures/sample/views/inline-css.html.haml +4 -0
  69. data/spec/fixtures/sample/views/{inline-js.haml → inline-js.html.haml} +0 -0
  70. data/spec/fixtures/sample/views/layout.haml +1 -1
  71. data/spec/fixtures/sample/views/{maruku.maruku → maruku.html.maruku} +0 -0
  72. data/spec/fixtures/sample/views/page-classes.html.haml +1 -0
  73. data/spec/fixtures/sample/views/services/{index.haml → index.html.haml} +0 -0
  74. data/spec/fixtures/sample/views/stylesheets/asset_host.css.sass +3 -0
  75. data/spec/fixtures/sample/views/stylesheets/relative_assets.css.sass +3 -0
  76. data/spec/fixtures/sample/views/stylesheets/site.css.sass +1 -0
  77. data/spec/fixtures/sample/views/stylesheets/site_scss.css.scss +1 -0
  78. data/spec/fixtures/sample/views/stylesheets/test_less.css.less +5 -0
  79. data/spec/helpers_spec.rb +43 -0
  80. data/spec/spec_helper.rb +3 -5
  81. metadata +298 -127
  82. data/lib/middleman/helpers.rb +0 -131
  83. data/lib/middleman/markaby.rb +0 -4
  84. data/lib/middleman/maruku.rb +0 -4
  85. data/lib/middleman/sprockets_ext.rb +0 -29
  86. data/lib/middleman/template/init.rb +0 -22
  87. data/lib/middleman/template/views/index.haml +0 -1
  88. data/lib/middleman/template/views/stylesheets/site.sass +0 -1
  89. data/spec/fixtures/sample/views/markaby.mab +0 -5
  90. data/spec/fixtures/sample/views/stylesheets/site.sass +0 -1
  91. data/spec/generator_spec.rb +0 -34
  92. data/vendor/rack-test/History.txt +0 -64
  93. data/vendor/rack-test/MIT-LICENSE.txt +0 -19
  94. data/vendor/rack-test/README.rdoc +0 -57
  95. data/vendor/rack-test/Rakefile +0 -62
  96. data/vendor/rack-test/lib/rack/mock_session.rb +0 -57
  97. data/vendor/rack-test/lib/rack/test.rb +0 -246
  98. data/vendor/rack-test/lib/rack/test/cookie_jar.rb +0 -169
  99. data/vendor/rack-test/lib/rack/test/methods.rb +0 -73
  100. data/vendor/rack-test/lib/rack/test/mock_digest_request.rb +0 -27
  101. data/vendor/rack-test/lib/rack/test/uploaded_file.rb +0 -36
  102. data/vendor/rack-test/lib/rack/test/utils.rb +0 -75
  103. data/vendor/rack-test/spec/fixtures/config.ru +0 -3
  104. data/vendor/rack-test/spec/fixtures/fake_app.rb +0 -109
  105. data/vendor/rack-test/spec/fixtures/foo.txt +0 -1
  106. data/vendor/rack-test/spec/rack/test/cookie_spec.rb +0 -176
  107. data/vendor/rack-test/spec/rack/test/digest_auth_spec.rb +0 -48
  108. data/vendor/rack-test/spec/rack/test/multipart_spec.rb +0 -85
  109. data/vendor/rack-test/spec/rack/test/utils_spec.rb +0 -44
  110. data/vendor/rack-test/spec/rack/test_spec.rb +0 -363
  111. data/vendor/rack-test/spec/rcov.opts +0 -1
  112. data/vendor/rack-test/spec/spec.opts +0 -1
  113. data/vendor/rack-test/spec/spec_helper.rb +0 -48
  114. data/vendor/sinatra-content-for/LICENSE +0 -22
  115. data/vendor/sinatra-content-for/README.rdoc +0 -49
  116. data/vendor/sinatra-content-for/Rakefile +0 -33
  117. data/vendor/sinatra-content-for/lib/sinatra/content_for.rb +0 -58
  118. data/vendor/sinatra-content-for/sinatra-content-for.gemspec +0 -34
  119. data/vendor/sinatra-content-for/test/content_for_test.rb +0 -156
  120. data/vendor/sinatra-markaby/CHANGES +0 -7
  121. data/vendor/sinatra-markaby/LICENSE +0 -20
  122. data/vendor/sinatra-markaby/README.rdoc +0 -33
  123. data/vendor/sinatra-markaby/Rakefile +0 -45
  124. data/vendor/sinatra-markaby/TODO +0 -3
  125. data/vendor/sinatra-markaby/VERSION.yml +0 -4
  126. data/vendor/sinatra-markaby/lib/sinatra/markaby.rb +0 -31
  127. data/vendor/sinatra-markaby/sinatra-markaby.gemspec +0 -49
  128. data/vendor/sinatra-markaby/test/sinatra_markaby_test.rb +0 -72
  129. data/vendor/sinatra-markaby/test/test_helper.rb +0 -19
  130. data/vendor/sinatra-markaby/test/views/hello.mab +0 -1
  131. data/vendor/sinatra-markaby/test/views/html.mab +0 -4
  132. data/vendor/sinatra-maruku/LICENSE +0 -22
  133. data/vendor/sinatra-maruku/README.markdown +0 -85
  134. data/vendor/sinatra-maruku/Rakefile +0 -34
  135. data/vendor/sinatra-maruku/VERSION.yml +0 -4
  136. data/vendor/sinatra-maruku/examples/app.rb +0 -8
  137. data/vendor/sinatra-maruku/examples/config.ru +0 -4
  138. data/vendor/sinatra-maruku/examples/mapp.rb +0 -15
  139. data/vendor/sinatra-maruku/examples/public/stylesheets/application.css +0 -23
  140. data/vendor/sinatra-maruku/examples/views/index.maruku +0 -32
  141. data/vendor/sinatra-maruku/examples/views/layout.maruku +0 -9
  142. data/vendor/sinatra-maruku/lib/sinatra/maruku.rb +0 -25
  143. data/vendor/sinatra-maruku/sinatra-maruku.gemspec +0 -70
  144. data/vendor/sinatra-maruku/test/sinatra_maruku_test.rb +0 -91
  145. data/vendor/sinatra-maruku/test/test_helper.rb +0 -21
  146. data/vendor/sinatra-maruku/test/views/hello.maruku +0 -1
  147. data/vendor/sinatra-maruku/test/views/layout2.maruku +0 -2
@@ -1,45 +0,0 @@
1
- require 'rake'
2
-
3
- begin
4
- require 'jeweler'
5
- Jeweler::Tasks.new do |s|
6
- s.name = "sinatra-markaby"
7
- s.summary = %Q{Sinatra plugin to enable markaby (.mab) template rendering.}
8
- s.email = "brentf@unwwwired.net"
9
- s.homepage = "http://github.com/sbfaulkner/sinatra-markaby"
10
- s.description = "Sinatra plugin to enable markaby (.mab) template rendering."
11
- s.authors = ["S. Brent Faulkner"]
12
- s.add_dependency "markaby"
13
- end
14
- rescue LoadError
15
- puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
16
- end
17
-
18
- require 'rake/rdoctask'
19
- Rake::RDocTask.new do |rdoc|
20
- rdoc.rdoc_dir = 'rdoc'
21
- rdoc.title = 'sinatra-markaby'
22
- rdoc.options << '--line-numbers' << '--inline-source'
23
- rdoc.rdoc_files.include('README*')
24
- rdoc.rdoc_files.include('lib/**/*.rb')
25
- end
26
-
27
- require 'rake/testtask'
28
- Rake::TestTask.new(:test) do |t|
29
- t.libs << 'lib' << 'test'
30
- t.pattern = 'test/**/*_test.rb'
31
- t.verbose = false
32
- end
33
-
34
- begin
35
- require 'rcov/rcovtask'
36
- Rcov::RcovTask.new do |t|
37
- t.libs << 'test'
38
- t.test_files = FileList['test/**/*_test.rb']
39
- t.verbose = true
40
- end
41
- rescue LoadError
42
- puts "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
43
- end
44
-
45
- task :default => :test
@@ -1,3 +0,0 @@
1
- = TODO
2
-
3
- * refactor render/views in sinatra
@@ -1,4 +0,0 @@
1
- ---
2
- :major: 0
3
- :minor: 9
4
- :patch: 2.2
@@ -1,31 +0,0 @@
1
- require 'sinatra/base'
2
- require 'markaby'
3
-
4
- module Sinatra
5
- module Markaby
6
- # Generate html file using Markaby.
7
- # Takes the name of a template to render as a Symbol and returns a String with the rendered output.
8
- #
9
- # Options for markaby may be specified in Sinatra using set :markaby, { ... }
10
- # TODO: the options aren't actually used yet
11
- def mab(template=nil, options={}, locals = {}, &block)
12
- options, template = template, nil if template.is_a?(Hash)
13
- template = lambda { block } if template.nil?
14
- render :mab, template, options, locals
15
- end
16
-
17
- protected
18
- def render_mab(template, data, options, locals, &block)
19
- filename = options.delete(:filename) || '<MARKABY>'
20
- line = options.delete(:line) || 1
21
- mab = ::Markaby::Builder.new(locals)
22
- if data.respond_to?(:to_str)
23
- eval(data.to_str, binding, filename, line)
24
- elsif data.kind_of?(Proc)
25
- data.call(mab)
26
- end
27
- end
28
- end
29
-
30
- helpers Markaby
31
- end
@@ -1,49 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- Gem::Specification.new do |s|
4
- s.name = %q{sinatra-markaby}
5
- s.version = "0.9.2.2"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["S. Brent Faulkner"]
9
- s.date = %q{2009-04-29}
10
- s.description = %q{Sinatra plugin to enable markaby (.mab) template rendering.}
11
- s.email = %q{brentf@unwwwired.net}
12
- s.extra_rdoc_files = [
13
- "LICENSE",
14
- "README.rdoc"
15
- ]
16
- s.files = [
17
- "LICENSE",
18
- "README.rdoc",
19
- "Rakefile",
20
- "VERSION.yml",
21
- "lib/sinatra/markaby.rb",
22
- "test/sinatra_markaby_test.rb",
23
- "test/test_helper.rb",
24
- "test/views/hello.mab"
25
- ]
26
- s.has_rdoc = true
27
- s.homepage = %q{http://github.com/sbfaulkner/sinatra-markaby}
28
- s.rdoc_options = ["--charset=UTF-8"]
29
- s.require_paths = ["lib"]
30
- s.rubygems_version = %q{1.3.1}
31
- s.summary = %q{Sinatra plugin to enable markaby (.mab) template rendering.}
32
- s.test_files = [
33
- "test/sinatra_markaby_test.rb",
34
- "test/test_helper.rb"
35
- ]
36
-
37
- if s.respond_to? :specification_version then
38
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
39
- s.specification_version = 2
40
-
41
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
42
- s.add_runtime_dependency(%q<markaby>, [">= 0"])
43
- else
44
- s.add_dependency(%q<markaby>, [">= 0"])
45
- end
46
- else
47
- s.add_dependency(%q<markaby>, [">= 0"])
48
- end
49
- end
@@ -1,72 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper'
2
-
3
- class SinatraMarkabyTest < Test::Unit::TestCase
4
- def markaby_app(&block)
5
- mock_app {
6
- use_in_file_templates!
7
- helpers Sinatra::Markaby
8
- set :views, File.dirname(__FILE__) + '/views'
9
- get '/', &block
10
- }
11
- get '/'
12
- end
13
-
14
- def test_renders_inline_strings
15
- markaby_app { markaby 'mab.p "Hello shrimp!"' }
16
- assert last_response.ok?
17
- assert_equal '<p>Hello shrimp!</p>', last_response.body
18
- end
19
-
20
- def test_renders_inline_blocks
21
- markaby_app {
22
- @name = 'Frank & Mary'
23
- markaby do |mab|
24
- mab.p "Hello #{@name}!"
25
- end
26
- }
27
- assert last_response.ok?
28
- assert_equal '<p>Hello Frank &amp; Mary!</p>', last_response.body
29
- end
30
-
31
- def test_renders_markaby_files_in_views_path
32
- markaby_app {
33
- @name = 'World'
34
- markaby :hello
35
- }
36
- assert last_response.ok?
37
- assert_equal '<p>Hello, World!</p>', last_response.body
38
- end
39
-
40
- def test_renders_in_file_template
41
- markaby_app {
42
- @name = 'Joe'
43
- markaby :in_file
44
- }
45
- assert last_response.ok?
46
- assert_equal '<p>Hey Joe</p>', last_response.body
47
- end
48
-
49
- def test_renders_with_layout
50
- markaby_app {
51
- @name = 'with Layout'
52
- markaby :hello, :layout => :html
53
- }
54
- assert last_response.ok?
55
- assert_equal '<html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/><title>Hello</title></head><body><p>Hello, with Layout!</p></body></html>', last_response.body
56
- end
57
-
58
- def test_raises_error_if_template_not_found
59
- mock_app {
60
- helpers Sinatra::Markaby
61
- set :environment, :test
62
- set :raise_errors, true
63
- get('/') { markaby :no_such_template }
64
- }
65
- assert_raises(Errno::ENOENT) { get('/') }
66
- end
67
- end
68
-
69
- __END__
70
-
71
- @@ in_file
72
- mab.p "Hey #{@name}"
@@ -1,19 +0,0 @@
1
- require 'rubygems'
2
- require 'test/unit'
3
- require 'rack/test'
4
-
5
- $LOAD_PATH.unshift(File.dirname(__FILE__))
6
- require 'sinatra/markaby'
7
-
8
- class Test::Unit::TestCase
9
- include Rack::Test::Methods
10
-
11
- attr_reader :app
12
-
13
- # Sets up a Sinatra::Base subclass defined with the block
14
- # given. Used in setup or individual spec methods to establish
15
- # the application.
16
- def mock_app(base=Sinatra::Base, &block)
17
- @app = Sinatra.new(base, &block)
18
- end
19
- end
@@ -1 +0,0 @@
1
- mab.p "Hello, #{@name}!"
@@ -1,4 +0,0 @@
1
- mab.html do
2
- head { title "Hello" }
3
- body { yield }
4
- end
@@ -1,22 +0,0 @@
1
- (The MIT License)
2
-
3
- Copyright (c) 2008 Wlodek Bzyl
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining
6
- a copy of this software and associated documentation files (the
7
- 'Software'), to deal in the Software without restriction, including
8
- without limitation the rights to use, copy, modify, merge, publish,
9
- distribute, sublicense, and/or sell copies of the Software, and to
10
- permit persons to whom the Software is furnished to do so, subject to
11
- the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be
14
- included in all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,85 +0,0 @@
1
- # Sinatra Maruku Extension
2
-
3
- The *sinatra-maruku* extension provides `maruku` helper method
4
- for rendering Maruku templates.
5
-
6
- To install it, run:
7
-
8
- sudo gem install wbzyl-sinatra-maruku -s http://gems.github.com
9
-
10
- To test it, create a simple Sinatra application:
11
-
12
- # app.rb
13
- require 'rubygems'
14
- require 'sinatra'
15
-
16
- gem 'wbzyl-sinatra-maruku'
17
- require 'sinatra/maruku'
18
-
19
- get "/" do
20
- maruku "# Hello Maruku"
21
- end
22
-
23
- and run it with:
24
-
25
- ruby app.rb
26
-
27
- The result could be seen at *http://localhost:4567*.
28
-
29
- Another example could be find in the *examples* directory.
30
- Run it with:
31
-
32
- rackup -p 4567 config.ru
33
-
34
- and visit *http://localhost:4567* to contemplate the sheer
35
- beauty of rendered text written in Maruku notation.
36
-
37
-
38
- ## Two links to Maruku related material
39
-
40
- * [Maruku features](http://maruku.rubyforge.org/maruku.html)
41
- * [Literate Maruku](http://www.slideshare.net/schmidt/literate-maruku)
42
-
43
-
44
- ## Template Languages (*update to The Sinatra Book*)
45
-
46
- ### Maruku Templates
47
-
48
- This helper method:
49
-
50
- get '/' do
51
- maruku :index
52
- end
53
-
54
- renders template *./views/index.maruku*.
55
-
56
- If a layout named *layout.maruku* exists, it will be used each time
57
- a template is rendered.
58
-
59
- You can disable layouts by passing `:layout => false`
60
- to *maruku* helper. For example
61
-
62
- get '/' do
63
- maruku :index, :layout => false
64
- end
65
-
66
- You can set a different layout from the default one with:
67
-
68
- get '/' do
69
- maruku :index, :layout => :application
70
- end
71
-
72
- This renders *./views/index.maruku* template
73
- within *./views/application.maruku* layout.
74
-
75
-
76
- ## Sample layout for Maruku templates
77
-
78
- CSS: /stylesheets/application.css /stylesheets/print.css
79
- Lang: pl
80
- Title: Hello Maruku
81
- LaTeX preamble: preamble.tex
82
-
83
- # Hello Maruku {.header}
84
-
85
- <%= yield %>
@@ -1,34 +0,0 @@
1
- require 'rake'
2
- require 'rake/testtask'
3
- require "rake/clean"
4
-
5
- begin
6
- require 'jeweler'
7
- Jeweler::Tasks.new do |gem|
8
- gem.name = "sinatra-maruku"
9
- gem.summary = "An extension providing Maruku templates for Sinatra applications."
10
- gem.email = "matwb@univ.gda.pl"
11
- gem.homepage = "http://github.com/wbzyl/sinatra-maruku"
12
- gem.description = gem.description
13
- gem.authors = ["Wlodek Bzyl"]
14
-
15
- gem.add_runtime_dependency 'sinatra', '>=0.10.1'
16
- gem.add_runtime_dependency 'maruku', '>=0.6.0'
17
-
18
- gem.add_development_dependency 'rack', '>=1.0.0'
19
- gem.add_development_dependency 'rack-test', '>=0.3.0'
20
-
21
- # gem is a Gem::Specification
22
- # refer to http://www.rubygems.org/read/chapter/20 for additional settings
23
- end
24
- rescue LoadError
25
- puts "Jeweler not available."
26
- puts "Install it with:"
27
- puts " sudo gem install technicalpickles-jeweler -s http://gems.github.com"
28
- end
29
-
30
- Rake::TestTask.new(:test) do |t|
31
- t.libs << 'lib' << 'test'
32
- t.pattern = 'test/**/*_test.rb'
33
- t.verbose = false
34
- end
@@ -1,4 +0,0 @@
1
- ---
2
- :major: 0
3
- :minor: 10
4
- :patch: 1
@@ -1,8 +0,0 @@
1
- require 'rubygems'
2
- require 'sinatra'
3
- require 'sinatra/maruku'
4
-
5
- get "/" do
6
- #maruku :hello, :layout => false
7
- maruku :index
8
- end
@@ -1,4 +0,0 @@
1
- # run it: rackup config.ru -p 4567
2
-
3
- require 'app'
4
- run Sinatra::Application
@@ -1,15 +0,0 @@
1
- require 'rubygems'
2
- require 'sinatra/base'
3
- require 'sinatra/maruku'
4
-
5
- require 'rack'
6
-
7
- class MApp < Sinatra::Base
8
- helpers Sinatra::Maruku
9
-
10
- get '/' do
11
- maruku "## hello form modular app"
12
- end
13
- end
14
-
15
- Rack::Handler::Thin.run MApp.new, :Port => 4567
@@ -1,23 +0,0 @@
1
- html {
2
- margin: 0;
3
- padding: 0;
4
- background-color: #B5052E;
5
- line-height: 1.6;
6
- }
7
-
8
- body {
9
- margin: 1em auto 1em auto;
10
- padding: 1em 2em 2em 1em;
11
- width: 760px;
12
- border: 1px solid black;
13
- background-color: #E8DDCB;
14
- }
15
-
16
- pre {
17
- padding: 0.5em 0 0.5em 2em;
18
- background-color: #D7D3C1;
19
- }
20
-
21
- h1, h2, h3 {
22
- color: #B5052E;
23
- }