middleman 1.2.0 → 1.2.1
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/features/step_definitions/middleman_steps.rb +1 -0
- data/features/tiny_src.feature +13 -0
- data/fixtures/test-app/views/tiny_src.html.haml +1 -0
- data/lib/middleman/features.rb +3 -0
- data/lib/middleman/features/minify_javascript/rack.rb +9 -4
- data/lib/middleman/features/tiny_src.rb +11 -0
- data/lib/middleman/server.rb +4 -1
- data/lib/middleman/templates.rb +4 -1
- data/lib/middleman/templates/compass.rb +18 -0
- data/lib/middleman/version.rb +1 -1
- data/middleman.gemspec +2 -2
- metadata +15 -9
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
@wip
|
|
2
|
+
Feature: Tiny Src
|
|
3
|
+
In order automatically scale images for mobile devices
|
|
4
|
+
|
|
5
|
+
Scenario: Rendering html with the feature disabled
|
|
6
|
+
Given "tiny_src" feature is "disabled"
|
|
7
|
+
When I go to "/tiny_src.html"
|
|
8
|
+
Then I should see "http://test.com/image.jpg"
|
|
9
|
+
|
|
10
|
+
Scenario: Rendering html with the feature enabled
|
|
11
|
+
Given "tiny_src" feature is "enabled"
|
|
12
|
+
When I go to "/tiny_src.html"
|
|
13
|
+
Then I should see "http://i.tinysrc.mobi/http://test.com/image.jpg"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
= image_tag "http://test.com/image.jpg"
|
data/lib/middleman/features.rb
CHANGED
|
@@ -71,6 +71,9 @@ module Middleman::Features
|
|
|
71
71
|
# to dynamic requests.
|
|
72
72
|
autoload :Data, "middleman/features/data"
|
|
73
73
|
|
|
74
|
+
# Automatically resize images for mobile devises
|
|
75
|
+
# autoload :TinySrc, "middleman/features/tiny_src"
|
|
76
|
+
|
|
74
77
|
# LiveReload will auto-reload browsers with the live reload extension installed after changes
|
|
75
78
|
# Currently disabled and untested.
|
|
76
79
|
#autoload :LiveReload, "middleman/features/live_reload"
|
|
@@ -18,9 +18,14 @@ module Middleman
|
|
|
18
18
|
if env["PATH_INFO"].match(/\.js$/)
|
|
19
19
|
compressor = ::YUI::JavaScriptCompressor.new(:munge => true)
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
if response.is_a?(::Rack::File) or response.is_a?(Sinatra::Helpers::StaticFile)
|
|
22
|
+
uncompressed_source = File.read(response.path)
|
|
23
|
+
else
|
|
24
|
+
uncompressed_source = response.join
|
|
25
|
+
end
|
|
26
|
+
minified = compressor.compress(uncompressed_source)
|
|
27
|
+
headers["Content-Length"] = ::Rack::Utils.bytesize(minified).to_s
|
|
28
|
+
response = [minified]
|
|
24
29
|
end
|
|
25
30
|
|
|
26
31
|
[status, headers, response]
|
|
@@ -28,4 +33,4 @@ module Middleman
|
|
|
28
33
|
end
|
|
29
34
|
|
|
30
35
|
end
|
|
31
|
-
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module Middleman::Features::TinySrc
|
|
2
|
+
class << self
|
|
3
|
+
def registered(app)
|
|
4
|
+
Middleman::Assets.register :tiny_src do |path, prefix, request|
|
|
5
|
+
original_output = Middleman::Assets.before(:tiny_src, path, prefix, request)
|
|
6
|
+
"http://i.tinysrc.mobi/#{original_output}"
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
alias :included :registered
|
|
10
|
+
end
|
|
11
|
+
end
|
data/lib/middleman/server.rb
CHANGED
|
@@ -147,7 +147,10 @@ module Middleman
|
|
|
147
147
|
settings.layout(options[:layout]) if !options[:layout].nil?
|
|
148
148
|
layout = settings.fetch_layout_path.to_sym
|
|
149
149
|
layout = false if options[:layout] == false or path =~ /\.(css|js)$/
|
|
150
|
-
|
|
150
|
+
|
|
151
|
+
render_options = { :layout => layout }
|
|
152
|
+
render_options[:layout_engine] = options[:layout_engine] if options.has_key? :layout_engine
|
|
153
|
+
result = render(path, render_options)
|
|
151
154
|
settings.layout(old_layout)
|
|
152
155
|
|
|
153
156
|
if result
|
data/lib/middleman/templates.rb
CHANGED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
require 'compass'
|
|
2
|
+
|
|
3
|
+
class Middleman::Templates::Compass < Middleman::Templates::Base
|
|
4
|
+
def self.source_root
|
|
5
|
+
# Middleman.templates_path
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
def build_scaffold
|
|
9
|
+
# directory options[:template].to_s, location
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
$stderr.puts Compass::Frameworks::ALL.map { |f| f.name }.inspect
|
|
14
|
+
|
|
15
|
+
# Dir[File.join(Middleman.templates_path, "*")].each do |dir|
|
|
16
|
+
# next unless File.directory?(dir)
|
|
17
|
+
# Middleman::Templates.register(File.basename(dir).to_sym, Middleman::Templates::Local)
|
|
18
|
+
# end
|
data/lib/middleman/version.rb
CHANGED
data/middleman.gemspec
CHANGED
|
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
|
|
|
9
9
|
s.authors = ["Thomas Reynolds"]
|
|
10
10
|
s.email = ["tdreyno@gmail.com"]
|
|
11
11
|
s.homepage = "http://wiki.github.com/tdreyno/middleman"
|
|
12
|
-
s.summary = "A static site generator
|
|
12
|
+
s.summary = "A static site generator based on Sinatra. Providing Haml, Sass, Compass, Less, Coffee Script and including minification, compression and cache busting."
|
|
13
13
|
|
|
14
14
|
s.rubyforge_project = "middleman"
|
|
15
15
|
|
|
@@ -31,7 +31,7 @@ Gem::Specification.new do |s|
|
|
|
31
31
|
s.add_runtime_dependency("yui-compressor", ["~> 0.9.0"])
|
|
32
32
|
s.add_runtime_dependency("haml", ["~> 3.1.0"])
|
|
33
33
|
s.add_runtime_dependency("sass", ["~> 3.1.0"])
|
|
34
|
-
s.add_runtime_dependency("compass", ["
|
|
34
|
+
s.add_runtime_dependency("compass", ["~> 0.11.1"])
|
|
35
35
|
s.add_runtime_dependency("chunky_png", ["~> 1.1.0"])
|
|
36
36
|
s.add_runtime_dependency("oily_png", ["~> 1.0"]) unless defined?(JRUBY_VERSION)
|
|
37
37
|
s.add_runtime_dependency("coffee-script", ["~> 2.1.0"])
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: middleman
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 29
|
|
5
5
|
prerelease:
|
|
6
6
|
segments:
|
|
7
7
|
- 1
|
|
8
8
|
- 2
|
|
9
|
-
-
|
|
10
|
-
version: 1.2.
|
|
9
|
+
- 1
|
|
10
|
+
version: 1.2.1
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Thomas Reynolds
|
|
@@ -15,7 +15,7 @@ autorequire:
|
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
17
|
|
|
18
|
-
date: 2011-04-
|
|
18
|
+
date: 2011-04-26 00:00:00 -07:00
|
|
19
19
|
default_executable:
|
|
20
20
|
dependencies:
|
|
21
21
|
- !ruby/object:Gem::Dependency
|
|
@@ -215,14 +215,14 @@ dependencies:
|
|
|
215
215
|
requirement: &id013 !ruby/object:Gem::Requirement
|
|
216
216
|
none: false
|
|
217
217
|
requirements:
|
|
218
|
-
- -
|
|
218
|
+
- - ~>
|
|
219
219
|
- !ruby/object:Gem::Version
|
|
220
|
-
hash:
|
|
220
|
+
hash: 49
|
|
221
221
|
segments:
|
|
222
222
|
- 0
|
|
223
223
|
- 11
|
|
224
|
-
-
|
|
225
|
-
version: 0.11.
|
|
224
|
+
- 1
|
|
225
|
+
version: 0.11.1
|
|
226
226
|
type: :runtime
|
|
227
227
|
version_requirements: *id013
|
|
228
228
|
- !ruby/object:Gem::Dependency
|
|
@@ -372,6 +372,7 @@ files:
|
|
|
372
372
|
- features/step_definitions/generator_steps.rb
|
|
373
373
|
- features/step_definitions/middleman_steps.rb
|
|
374
374
|
- features/step_definitions/page_layout_steps.rb
|
|
375
|
+
- features/tiny_src.feature
|
|
375
376
|
- features/w_asset_host.feature
|
|
376
377
|
- features/x_automatic_image_sizes.feature
|
|
377
378
|
- features/y_cache_buster.feature
|
|
@@ -404,6 +405,7 @@ files:
|
|
|
404
405
|
- fixtures/test-app/views/stylesheets/site.css.sass
|
|
405
406
|
- fixtures/test-app/views/stylesheets/site_scss.css.scss
|
|
406
407
|
- fixtures/test-app/views/stylesheets/test_less.css.less
|
|
408
|
+
- fixtures/test-app/views/tiny_src.html.haml
|
|
407
409
|
- lib/middleman.rb
|
|
408
410
|
- lib/middleman/assets.rb
|
|
409
411
|
- lib/middleman/builder.rb
|
|
@@ -422,11 +424,13 @@ files:
|
|
|
422
424
|
- lib/middleman/features/minify_javascript.rb
|
|
423
425
|
- lib/middleman/features/minify_javascript/rack.rb
|
|
424
426
|
- lib/middleman/features/relative_assets.rb
|
|
427
|
+
- lib/middleman/features/tiny_src.rb
|
|
425
428
|
- lib/middleman/features/ugly_haml.rb
|
|
426
429
|
- lib/middleman/renderers/haml.rb
|
|
427
430
|
- lib/middleman/renderers/sass.rb
|
|
428
431
|
- lib/middleman/server.rb
|
|
429
432
|
- lib/middleman/templates.rb
|
|
433
|
+
- lib/middleman/templates/compass.rb
|
|
430
434
|
- lib/middleman/templates/default.rb
|
|
431
435
|
- lib/middleman/templates/default/config.ru
|
|
432
436
|
- lib/middleman/templates/default/config.tt
|
|
@@ -489,7 +493,7 @@ rubyforge_project: middleman
|
|
|
489
493
|
rubygems_version: 1.5.0
|
|
490
494
|
signing_key:
|
|
491
495
|
specification_version: 3
|
|
492
|
-
summary: A static site generator
|
|
496
|
+
summary: A static site generator based on Sinatra. Providing Haml, Sass, Compass, Less, Coffee Script and including minification, compression and cache busting.
|
|
493
497
|
test_files:
|
|
494
498
|
- features/builder.feature
|
|
495
499
|
- features/coffee-script.feature
|
|
@@ -508,6 +512,7 @@ test_files:
|
|
|
508
512
|
- features/step_definitions/generator_steps.rb
|
|
509
513
|
- features/step_definitions/middleman_steps.rb
|
|
510
514
|
- features/step_definitions/page_layout_steps.rb
|
|
515
|
+
- features/tiny_src.feature
|
|
511
516
|
- features/w_asset_host.feature
|
|
512
517
|
- features/x_automatic_image_sizes.feature
|
|
513
518
|
- features/y_cache_buster.feature
|
|
@@ -540,3 +545,4 @@ test_files:
|
|
|
540
545
|
- fixtures/test-app/views/stylesheets/site.css.sass
|
|
541
546
|
- fixtures/test-app/views/stylesheets/site_scss.css.scss
|
|
542
547
|
- fixtures/test-app/views/stylesheets/test_less.css.less
|
|
548
|
+
- fixtures/test-app/views/tiny_src.html.haml
|