middleman-core 3.2.1 → 3.2.2
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.
- checksums.yaml +4 -4
- data/Rakefile +1 -1
- data/features/helpers_select_tag.feature +19 -0
- data/lib/middleman-core.rb +4 -4
- data/lib/middleman-core/application.rb +40 -46
- data/lib/middleman-core/cli.rb +15 -15
- data/lib/middleman-core/cli/build.rb +26 -24
- data/lib/middleman-core/cli/bundler.rb +4 -4
- data/lib/middleman-core/cli/console.rb +6 -6
- data/lib/middleman-core/cli/extension.rb +12 -12
- data/lib/middleman-core/cli/init.rb +17 -17
- data/lib/middleman-core/cli/server.rb +28 -28
- data/lib/middleman-core/configuration.rb +2 -2
- data/lib/middleman-core/core_extensions.rb +23 -23
- data/lib/middleman-core/core_extensions/data.rb +5 -5
- data/lib/middleman-core/core_extensions/extensions.rb +6 -6
- data/lib/middleman-core/core_extensions/external_helpers.rb +2 -2
- data/lib/middleman-core/core_extensions/file_watcher.rb +3 -3
- data/lib/middleman-core/core_extensions/front_matter.rb +11 -11
- data/lib/middleman-core/core_extensions/rendering.rb +21 -21
- data/lib/middleman-core/core_extensions/request.rb +10 -8
- data/lib/middleman-core/core_extensions/routing.rb +1 -1
- data/lib/middleman-core/extensions.rb +5 -5
- data/lib/middleman-core/load_paths.rb +7 -7
- data/lib/middleman-core/logger.rb +13 -1
- data/lib/middleman-core/meta_pages.rb +2 -2
- data/lib/middleman-core/meta_pages/config_setting.rb +3 -3
- data/lib/middleman-core/meta_pages/sitemap_resource.rb +2 -2
- data/lib/middleman-core/meta_pages/sitemap_tree.rb +4 -4
- data/lib/middleman-core/preview_server.rb +16 -12
- data/lib/middleman-core/profiling.rb +1 -1
- data/lib/middleman-core/renderers/coffee_script.rb +1 -1
- data/lib/middleman-core/renderers/erb.rb +1 -1
- data/lib/middleman-core/renderers/haml.rb +1 -1
- data/lib/middleman-core/renderers/kramdown.rb +2 -2
- data/lib/middleman-core/renderers/less.rb +2 -2
- data/lib/middleman-core/renderers/liquid.rb +1 -1
- data/lib/middleman-core/renderers/markdown.rb +3 -3
- data/lib/middleman-core/renderers/redcarpet.rb +1 -1
- data/lib/middleman-core/renderers/sass.rb +7 -7
- data/lib/middleman-core/renderers/slim.rb +2 -2
- data/lib/middleman-core/renderers/stylus.rb +2 -2
- data/lib/middleman-core/sitemap.rb +8 -8
- data/lib/middleman-core/sitemap/extensions/ignores.rb +2 -2
- data/lib/middleman-core/sitemap/extensions/redirects.rb +4 -1
- data/lib/middleman-core/sitemap/extensions/traversal.rb +6 -6
- data/lib/middleman-core/sitemap/queryable.rb +3 -3
- data/lib/middleman-core/sitemap/resource.rb +6 -6
- data/lib/middleman-core/sitemap/store.rb +12 -12
- data/lib/middleman-core/step_definitions.rb +5 -5
- data/lib/middleman-core/step_definitions/builder_steps.rb +5 -5
- data/lib/middleman-core/step_definitions/server_steps.rb +6 -6
- data/lib/middleman-core/templates.rb +14 -14
- data/lib/middleman-core/templates/default.rb +17 -17
- data/lib/middleman-core/templates/empty.rb +3 -3
- data/lib/middleman-core/templates/extension/Gemfile +7 -7
- data/lib/middleman-core/templates/extension/Rakefile +1 -1
- data/lib/middleman-core/templates/extension/features/support/env.rb +2 -2
- data/lib/middleman-core/templates/extension/lib/lib.rb +2 -2
- data/lib/middleman-core/templates/extension/lib/middleman_extension.rb +1 -1
- data/lib/middleman-core/templates/html5.rb +9 -9
- data/lib/middleman-core/templates/local.rb +3 -3
- data/lib/middleman-core/templates/mobile.rb +6 -6
- data/lib/middleman-core/templates/shared/config.tt +1 -1
- data/lib/middleman-core/util.rb +234 -182
- data/lib/middleman-core/version.rb +1 -1
- data/lib/middleman-more/core_extensions/compass.rb +3 -3
- data/lib/middleman-more/core_extensions/default_helpers.rb +21 -10
- data/lib/middleman-more/core_extensions/i18n.rb +18 -18
- data/lib/middleman-more/extensions/asset_hash.rb +7 -5
- data/lib/middleman-more/extensions/asset_host.rb +2 -2
- data/lib/middleman-more/extensions/automatic_alt_tags.rb +4 -4
- data/lib/middleman-more/extensions/automatic_image_sizes.rb +3 -3
- data/lib/middleman-more/extensions/cache_buster.rb +7 -7
- data/lib/middleman-more/extensions/lorem.rb +5 -5
- data/lib/middleman-more/extensions/minify_css.rb +4 -4
- data/lib/middleman-more/extensions/minify_javascript.rb +3 -3
- data/lib/middleman-more/extensions/relative_assets.rb +1 -1
- data/lib/middleman-more/templates/smacss.rb +10 -10
- data/lib/middleman/rack.rb +2 -2
- data/middleman-core.gemspec +1 -1
- metadata +6 -4
|
@@ -17,10 +17,10 @@ module Middleman
|
|
|
17
17
|
def render
|
|
18
18
|
content_tag :div, :class => 'resource-details' do
|
|
19
19
|
content_tag :table do
|
|
20
|
-
content =
|
|
20
|
+
content = ''
|
|
21
21
|
resource_properties.each do |label, value|
|
|
22
22
|
content << content_tag(:tr) do
|
|
23
|
-
row_content =
|
|
23
|
+
row_content = ''
|
|
24
24
|
row_content << content_tag(:th, label)
|
|
25
25
|
row_content << content_tag(:td, value)
|
|
26
26
|
row_content.html_safe
|
|
@@ -13,7 +13,7 @@ module Middleman
|
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def render
|
|
16
|
-
content =
|
|
16
|
+
content = ''
|
|
17
17
|
@children.keys.sort do |a,b|
|
|
18
18
|
a_subtree = @children[a]
|
|
19
19
|
b_subtree = @children[b]
|
|
@@ -35,11 +35,11 @@ module Middleman
|
|
|
35
35
|
end.each do |path_part|
|
|
36
36
|
subtree = @children[path_part]
|
|
37
37
|
content << "<details class='#{subtree.css_classes.join(' ')}'>"
|
|
38
|
-
content <<
|
|
38
|
+
content << '<summary>'
|
|
39
39
|
content << "<i class='icon-folder-open'></i>" unless subtree.is_a? SitemapResource
|
|
40
40
|
content << "#{path_part}</summary>"
|
|
41
41
|
content << subtree.render
|
|
42
|
-
content <<
|
|
42
|
+
content << '</details>'
|
|
43
43
|
end
|
|
44
44
|
content
|
|
45
45
|
end
|
|
@@ -66,7 +66,7 @@ module Middleman
|
|
|
66
66
|
end
|
|
67
67
|
|
|
68
68
|
def to_s
|
|
69
|
-
|
|
69
|
+
'Sitemap Tree'
|
|
70
70
|
end
|
|
71
71
|
end
|
|
72
72
|
end
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
require
|
|
1
|
+
require 'webrick'
|
|
2
2
|
require 'middleman-core/meta_pages'
|
|
3
|
+
require 'middleman-core/logger'
|
|
3
4
|
|
|
4
5
|
module Middleman
|
|
5
6
|
module PreviewServer
|
|
@@ -29,7 +30,7 @@ module Middleman
|
|
|
29
30
|
|
|
30
31
|
# Save the last-used @options so it may be re-used when
|
|
31
32
|
# reloading later on.
|
|
32
|
-
::Middleman::Profiling.report(
|
|
33
|
+
::Middleman::Profiling.report('server_start')
|
|
33
34
|
|
|
34
35
|
loop do
|
|
35
36
|
@webrick.start
|
|
@@ -50,7 +51,7 @@ module Middleman
|
|
|
50
51
|
# @return [void]
|
|
51
52
|
def stop
|
|
52
53
|
begin
|
|
53
|
-
logger.info
|
|
54
|
+
logger.info '== The Middleman is shutting down'
|
|
54
55
|
rescue
|
|
55
56
|
# if the user closed their terminal STDOUT/STDERR won't exist
|
|
56
57
|
end
|
|
@@ -65,20 +66,20 @@ module Middleman
|
|
|
65
66
|
# Simply stop, then start the server
|
|
66
67
|
# @return [void]
|
|
67
68
|
def reload
|
|
68
|
-
logger.info
|
|
69
|
+
logger.info '== The Middleman is reloading'
|
|
69
70
|
|
|
70
71
|
begin
|
|
71
72
|
app = new_app
|
|
72
73
|
rescue Exception => e
|
|
73
74
|
logger.error "Error reloading Middleman: #{e}\n#{e.backtrace.join("\n")}"
|
|
74
|
-
logger.info
|
|
75
|
+
logger.info '== The Middleman is still running the application from before the error'
|
|
75
76
|
return
|
|
76
77
|
end
|
|
77
78
|
|
|
78
79
|
unmount_instance
|
|
79
80
|
mount_instance(app)
|
|
80
81
|
|
|
81
|
-
logger.info
|
|
82
|
+
logger.info '== The Middleman has reloaded'
|
|
82
83
|
end
|
|
83
84
|
|
|
84
85
|
# Stop the current instance, exit Webrick
|
|
@@ -90,7 +91,7 @@ module Middleman
|
|
|
90
91
|
|
|
91
92
|
private
|
|
92
93
|
def new_app
|
|
93
|
-
opts = @options
|
|
94
|
+
opts = @options.dup
|
|
94
95
|
server = ::Middleman::Application.server
|
|
95
96
|
|
|
96
97
|
# Add in the meta pages application
|
|
@@ -100,11 +101,14 @@ module Middleman
|
|
|
100
101
|
end
|
|
101
102
|
|
|
102
103
|
@app = server.inst do
|
|
104
|
+
::Middleman::Logger.singleton(
|
|
105
|
+
opts[:debug] ? 0 : 1,
|
|
106
|
+
opts[:instrumenting] || false
|
|
107
|
+
)
|
|
108
|
+
|
|
103
109
|
if opts[:environment]
|
|
104
110
|
config[:environment] = opts[:environment].to_sym
|
|
105
111
|
end
|
|
106
|
-
|
|
107
|
-
logger(opts[:debug] ? 0 : 1, opts[:instrumenting] || false)
|
|
108
112
|
end
|
|
109
113
|
end
|
|
110
114
|
|
|
@@ -115,7 +119,7 @@ module Middleman
|
|
|
115
119
|
|
|
116
120
|
if first_run
|
|
117
121
|
# Watcher Library
|
|
118
|
-
require
|
|
122
|
+
require 'listen'
|
|
119
123
|
@listener = Listen.to(Dir.pwd, :relative_paths => true, :force_polling => @options[:force_polling])
|
|
120
124
|
@listener.latency(@options[:latency])
|
|
121
125
|
end
|
|
@@ -190,13 +194,13 @@ module Middleman
|
|
|
190
194
|
start_file_watcher
|
|
191
195
|
|
|
192
196
|
rack_app = app.class.to_rack_app
|
|
193
|
-
@webrick.mount
|
|
197
|
+
@webrick.mount '/', ::Rack::Handler::WEBrick, rack_app
|
|
194
198
|
end
|
|
195
199
|
|
|
196
200
|
# Detach the current Middleman::Application instance
|
|
197
201
|
# @return [void]
|
|
198
202
|
def unmount_instance
|
|
199
|
-
@webrick.unmount
|
|
203
|
+
@webrick.unmount '/'
|
|
200
204
|
@app = nil
|
|
201
205
|
end
|
|
202
206
|
|
|
@@ -46,7 +46,7 @@ module Middleman
|
|
|
46
46
|
result = RubyProf.stop
|
|
47
47
|
|
|
48
48
|
printer = RubyProf::GraphHtmlPrinter.new(result)
|
|
49
|
-
outfile = File.join(
|
|
49
|
+
outfile = File.join('profile', report_name)
|
|
50
50
|
outfile = (outfile + '.html') unless outfile.end_with? '.html'
|
|
51
51
|
FileUtils.mkdir_p(File.dirname(outfile))
|
|
52
52
|
File.open(outfile, 'w') do |f|
|
|
@@ -21,7 +21,7 @@ module Middleman
|
|
|
21
21
|
# Convert symbols to classes
|
|
22
22
|
if config[:erb_engine].is_a? Symbol
|
|
23
23
|
engine = engine.to_s
|
|
24
|
-
engine = engine ==
|
|
24
|
+
engine = engine == 'erb' ? 'ERB' : engine.camelize
|
|
25
25
|
config[:erb_engine] = config[:erb_engine_prefix].const_get("#{engine}Template")
|
|
26
26
|
end
|
|
27
27
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require
|
|
1
|
+
require 'kramdown'
|
|
2
2
|
|
|
3
3
|
module Middleman
|
|
4
4
|
module Renderers
|
|
@@ -30,7 +30,7 @@ module Middleman
|
|
|
30
30
|
|
|
31
31
|
if el.attr['href'] =~ /\Amailto:/
|
|
32
32
|
mail_addr = el.attr['href'].sub(/\Amailto:/, '')
|
|
33
|
-
href = obfuscate('mailto') <<
|
|
33
|
+
href = obfuscate('mailto') << ':' << obfuscate(mail_addr)
|
|
34
34
|
content = obfuscate(content) if content == mail_addr
|
|
35
35
|
return %Q{<a href="#{href}">#{content}</a>}
|
|
36
36
|
end
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require
|
|
1
|
+
require 'less'
|
|
2
2
|
|
|
3
3
|
module Middleman
|
|
4
4
|
module Renderers
|
|
@@ -37,7 +37,7 @@ module Middleman
|
|
|
37
37
|
if ::Less.const_defined? :Engine
|
|
38
38
|
@engine = ::Less::Engine.new(data)
|
|
39
39
|
else
|
|
40
|
-
parser = ::Less::Parser.new(options.merge :filename => eval_file, :line => line, :paths => [
|
|
40
|
+
parser = ::Less::Parser.new(options.merge :filename => eval_file, :line => line, :paths => ['.', File.dirname(eval_file)])
|
|
41
41
|
@engine = parser.parse(data)
|
|
42
42
|
end
|
|
43
43
|
end
|
|
@@ -28,18 +28,18 @@ module Middleman
|
|
|
28
28
|
begin
|
|
29
29
|
# Look for the user's preferred engine
|
|
30
30
|
if config[:markdown_engine] == :redcarpet
|
|
31
|
-
require
|
|
31
|
+
require 'middleman-core/renderers/redcarpet'
|
|
32
32
|
::Tilt.prefer(::Middleman::Renderers::RedcarpetTemplate, *markdown_exts)
|
|
33
33
|
MiddlemanRedcarpetHTML.middleman_app = self
|
|
34
34
|
elsif config[:markdown_engine] == :kramdown
|
|
35
|
-
require
|
|
35
|
+
require 'middleman-core/renderers/kramdown'
|
|
36
36
|
::Tilt.prefer(::Middleman::Renderers::KramdownTemplate, *markdown_exts)
|
|
37
37
|
MiddlemanKramdownHTML.middleman_app = self
|
|
38
38
|
elsif !config[:markdown_engine].nil?
|
|
39
39
|
# Map symbols to classes
|
|
40
40
|
markdown_engine_klass = if config[:markdown_engine].is_a? Symbol
|
|
41
41
|
engine = config[:markdown_engine].to_s
|
|
42
|
-
engine = engine ==
|
|
42
|
+
engine = engine == 'rdiscount' ? 'RDiscount' : engine.camelize
|
|
43
43
|
config[:markdown_engine_prefix].const_get("#{engine}Template")
|
|
44
44
|
else
|
|
45
45
|
config[:markdown_engine_prefix]
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require
|
|
1
|
+
require 'sass'
|
|
2
2
|
|
|
3
3
|
module Middleman
|
|
4
4
|
module Renderers
|
|
@@ -40,12 +40,12 @@ module Middleman
|
|
|
40
40
|
|
|
41
41
|
def initialize(*args, &block)
|
|
42
42
|
super
|
|
43
|
-
|
|
43
|
+
|
|
44
44
|
if @options.has_key?(:context)
|
|
45
45
|
@context = @options[:context]
|
|
46
46
|
end
|
|
47
47
|
end
|
|
48
|
-
|
|
48
|
+
|
|
49
49
|
# Define the expected syntax for the template
|
|
50
50
|
# @return [Symbol]
|
|
51
51
|
def syntax
|
|
@@ -73,15 +73,15 @@ module Middleman
|
|
|
73
73
|
# @return [Hash]
|
|
74
74
|
def sass_options
|
|
75
75
|
more_opts = { :filename => eval_file, :line => line, :syntax => syntax }
|
|
76
|
-
|
|
76
|
+
|
|
77
77
|
if @context.is_a?(::Middleman::Application) && file
|
|
78
78
|
location_of_sass_file = @context.source_dir
|
|
79
|
-
|
|
79
|
+
|
|
80
80
|
parts = basename.split('.')
|
|
81
81
|
parts.pop
|
|
82
|
-
more_opts[:css_filename] = File.join(location_of_sass_file, @context.config[:css_dir], parts.join(
|
|
82
|
+
more_opts[:css_filename] = File.join(location_of_sass_file, @context.config[:css_dir], parts.join('.'))
|
|
83
83
|
end
|
|
84
|
-
|
|
84
|
+
|
|
85
85
|
options.merge(more_opts)
|
|
86
86
|
end
|
|
87
87
|
end
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# Load gem
|
|
2
|
-
require
|
|
2
|
+
require 'slim'
|
|
3
3
|
|
|
4
4
|
module Middleman
|
|
5
5
|
module Renderers
|
|
@@ -23,7 +23,7 @@ module Middleman
|
|
|
23
23
|
:generator => ::Temple::Generators::RailsOutputBuffer,
|
|
24
24
|
:disable_escape => true
|
|
25
25
|
)
|
|
26
|
-
|
|
26
|
+
|
|
27
27
|
app.after_configuration do
|
|
28
28
|
context_hack = {
|
|
29
29
|
:context => self
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
require
|
|
2
|
-
require
|
|
3
|
-
|
|
4
|
-
require
|
|
5
|
-
require
|
|
6
|
-
require
|
|
7
|
-
require
|
|
8
|
-
require
|
|
1
|
+
require 'middleman-core/sitemap/store'
|
|
2
|
+
require 'middleman-core/sitemap/resource'
|
|
3
|
+
|
|
4
|
+
require 'middleman-core/sitemap/extensions/on_disk'
|
|
5
|
+
require 'middleman-core/sitemap/extensions/redirects'
|
|
6
|
+
require 'middleman-core/sitemap/extensions/request_endpoints'
|
|
7
|
+
require 'middleman-core/sitemap/extensions/proxies'
|
|
8
|
+
require 'middleman-core/sitemap/extensions/ignores'
|
|
9
9
|
|
|
10
10
|
# Core Sitemap Extensions
|
|
11
11
|
module Middleman
|
|
@@ -28,7 +28,7 @@ module Middleman
|
|
|
28
28
|
def ignored?
|
|
29
29
|
@app.ignore_manager.ignored?(path) ||
|
|
30
30
|
(!proxy? &&
|
|
31
|
-
@app.ignore_manager.ignored?(source_file.sub("#{@app.source_dir}/",
|
|
31
|
+
@app.ignore_manager.ignored?(source_file.sub("#{@app.source_dir}/", ''))
|
|
32
32
|
)
|
|
33
33
|
end
|
|
34
34
|
end
|
|
@@ -64,7 +64,7 @@ module Middleman
|
|
|
64
64
|
@ignored_callbacks << Proc.new {|p| p =~ path }
|
|
65
65
|
elsif path.is_a? String
|
|
66
66
|
path_clean = ::Middleman::Util.normalize_path(path)
|
|
67
|
-
if path_clean.include?(
|
|
67
|
+
if path_clean.include?('*') # It's a glob
|
|
68
68
|
@ignored_callbacks << Proc.new {|p| File.fnmatch(path_clean, p) }
|
|
69
69
|
else
|
|
70
70
|
# Add a specific-path ignore unless that path is already covered
|
|
@@ -78,7 +78,10 @@ module Middleman
|
|
|
78
78
|
end
|
|
79
79
|
|
|
80
80
|
def render(*args, &block)
|
|
81
|
-
url = ::Middleman::Util.url_for(store.app, @request_path,
|
|
81
|
+
url = ::Middleman::Util.url_for(store.app, @request_path, {
|
|
82
|
+
:relative => false,
|
|
83
|
+
:find_resource => true
|
|
84
|
+
})
|
|
82
85
|
|
|
83
86
|
if output
|
|
84
87
|
output.call(path, url)
|
|
@@ -8,7 +8,7 @@ module Middleman
|
|
|
8
8
|
# This resource's parent resource
|
|
9
9
|
# @return [Middleman::Sitemap::Resource, nil]
|
|
10
10
|
def parent
|
|
11
|
-
parts = path.split(
|
|
11
|
+
parts = path.split('/')
|
|
12
12
|
parts.pop if path.include?(app.index_file)
|
|
13
13
|
|
|
14
14
|
return nil if parts.length < 1
|
|
@@ -16,7 +16,7 @@ module Middleman
|
|
|
16
16
|
parts.pop
|
|
17
17
|
parts << app.index_file
|
|
18
18
|
|
|
19
|
-
parent_path =
|
|
19
|
+
parent_path = '/' + parts.join('/')
|
|
20
20
|
|
|
21
21
|
store.find_resource_by_destination_path(parent_path)
|
|
22
22
|
end
|
|
@@ -30,7 +30,7 @@ module Middleman
|
|
|
30
30
|
base_path = eponymous_directory_path
|
|
31
31
|
prefix = %r|^#{base_path.sub("/", "\\/")}|
|
|
32
32
|
else
|
|
33
|
-
base_path = path.sub("#{app.index_file}",
|
|
33
|
+
base_path = path.sub("#{app.index_file}", '')
|
|
34
34
|
prefix = %r|^#{base_path.sub("/", "\\/")}|
|
|
35
35
|
end
|
|
36
36
|
|
|
@@ -38,8 +38,8 @@ module Middleman
|
|
|
38
38
|
if sub_resource.path == self.path || sub_resource.path !~ prefix
|
|
39
39
|
false
|
|
40
40
|
else
|
|
41
|
-
inner_path = sub_resource.path.sub(prefix,
|
|
42
|
-
parts = inner_path.split(
|
|
41
|
+
inner_path = sub_resource.path.sub(prefix, '')
|
|
42
|
+
parts = inner_path.split('/')
|
|
43
43
|
if parts.length == 1
|
|
44
44
|
true
|
|
45
45
|
elsif parts.length == 2
|
|
@@ -79,7 +79,7 @@ module Middleman
|
|
|
79
79
|
# (e.g., for 'gallery.html' this would return 'gallery/')
|
|
80
80
|
# @return [String]
|
|
81
81
|
def eponymous_directory_path
|
|
82
|
-
path.sub(ext, '/').sub(/\/$/,
|
|
82
|
+
path.sub(ext, '/').sub(/\/$/, '') + '/'
|
|
83
83
|
end
|
|
84
84
|
end
|
|
85
85
|
end
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
require
|
|
1
|
+
require 'active_support/core_ext/object/inclusion'
|
|
2
2
|
|
|
3
3
|
module Middleman
|
|
4
4
|
module Sitemap
|
|
5
|
-
|
|
5
|
+
|
|
6
6
|
# Code adapted from https://github.com/ralph/document_mapper/
|
|
7
7
|
module Queryable
|
|
8
8
|
OPERATOR_MAPPING = {
|
|
@@ -146,7 +146,7 @@ class Symbol
|
|
|
146
146
|
end
|
|
147
147
|
OPERATORS
|
|
148
148
|
end
|
|
149
|
-
|
|
149
|
+
|
|
150
150
|
unless method_defined?(:"<=>")
|
|
151
151
|
def <=>(other)
|
|
152
152
|
self.to_s <=> other.to_s
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
require
|
|
2
|
-
require
|
|
1
|
+
require 'middleman-core/sitemap/extensions/traversal'
|
|
2
|
+
require 'middleman-core/sitemap/extensions/content_type'
|
|
3
3
|
|
|
4
4
|
module Middleman
|
|
5
5
|
|
|
@@ -111,14 +111,14 @@ module Middleman
|
|
|
111
111
|
|
|
112
112
|
relative_source = Pathname(source_file).relative_path_from(Pathname(app.root))
|
|
113
113
|
|
|
114
|
-
instrument
|
|
114
|
+
instrument 'render.resource', :path => relative_source do
|
|
115
115
|
md = metadata.dup
|
|
116
116
|
opts = md[:options].deep_merge(opts)
|
|
117
117
|
|
|
118
118
|
# Pass "renderer_options" hash from frontmatter along to renderer
|
|
119
|
-
if md[:page][
|
|
119
|
+
if md[:page]['renderer_options']
|
|
120
120
|
opts[:renderer_options] = {}
|
|
121
|
-
md[:page][
|
|
121
|
+
md[:page]['renderer_options'].each do |k, v|
|
|
122
122
|
opts[:renderer_options][k.to_sym] = v
|
|
123
123
|
end
|
|
124
124
|
end
|
|
@@ -127,7 +127,7 @@ module Middleman
|
|
|
127
127
|
|
|
128
128
|
# Forward remaining data to helpers
|
|
129
129
|
if md.has_key?(:page)
|
|
130
|
-
app.data.store(
|
|
130
|
+
app.data.store('page', md[:page])
|
|
131
131
|
end
|
|
132
132
|
|
|
133
133
|
blocks = Array(md[:blocks]).dup
|