Merge branch 'master' of github.com:middleman/middleman

This commit is contained in:
Thomas Reynolds 2013-05-31 00:11:54 -04:00
commit fe2a7c4dd6
13 changed files with 31 additions and 6 deletions

View file

@ -22,6 +22,7 @@
3.1.0.rc.1
===
* Fix ignoring layouts from the sitemap when the source directory has been set to something other than 'source'. #896
* Move more into core, autoloaded if gems are available.
* DataStore may now be accessed like a hash with #[] and #has_key?. #880
* The i18n extension now supports providing localized templates as separate files, like index.es.html.haml. #816, #823

View file

@ -0,0 +1,7 @@
Feature: Support customizing the source directory name
Scenario: Layouts don't try to build
Given a successfully built app at "custom-src-app"
When I cd to "build"
Then the following files should not exist:
| layouts/layout.html |

View file

@ -13,9 +13,11 @@ Feature: i18n Builder
| index.html |
| hello.html |
| morning.html |
| one.html |
| es/index.html |
| es/hola.html |
| es/manana.html |
| es/una.html |
| CNAME |
| password.txt |
Then the following files should not exist:
@ -23,9 +25,11 @@ Feature: i18n Builder
And the file "index.html" should contain "Howdy"
And the file "hello.html" should contain "Hello World"
And the file "morning.html" should contain "Good morning"
And the file "one.html" should contain "Only one"
And the file "es/index.html" should contain "Como Esta?"
And the file "es/hola.html" should contain "Hola World"
And the file "es/manana.html" should contain "Buenos días"
And the file "es/una.html" should contain "Solamente una"
And the file "CNAME" should contain "test.github.com"
And the file "password.txt" should contain "hunter2"

View file

@ -14,6 +14,8 @@ Feature: i18n Preview
Then I should see "Hello World"
When I go to "/morning.html"
Then I should see "Good morning"
When I go to "/one.html"
Then I should see "Only one"
When I go to "/en/index.html"
Then I should see "File Not Found"
When I go to "/en/morning.html"
@ -24,6 +26,8 @@ Feature: i18n Preview
Then I should see "Hola World"
When I go to "/es/manana.html"
Then I should see "Buenos días"
When I go to "/es/una.html"
Then I should see "Solamente una"
Scenario: A template changes i18n during preview
Given a fixture app "i18n-test-app"

View file

@ -0,0 +1 @@
set :source, 'src'

View file

@ -0,0 +1 @@
<%= yield %>

View file

@ -3,6 +3,7 @@ es:
paths:
hello: "hola"
morning: "manana"
one: "una"
greetings: "Como Esta?"
hi: "Hola"

View file

@ -0,0 +1 @@
Only one

View file

@ -0,0 +1 @@
Solamente una

View file

@ -35,8 +35,8 @@ module Middleman
# Files starting with an underscore, but not a double-underscore
:partials => proc { |file| file =~ %r{/_} && file !~ %r{/__} },
:layout => proc { |file|
file.start_with?('source/layout.') || file.start_with?('source/layouts/')
:layout => proc { |file, app|
file.start_with?(File.join(app.config[:source], 'layout.')) || file.start_with?(File.join(app.config[:source], 'layouts/'))
}
}, 'Callbacks that can exclude paths from the sitemap'

View file

@ -46,7 +46,11 @@ module Middleman
return false unless path
ignored = @app.config[:ignored_sitemap_matchers].any? do |name, callback|
callback.call(file)
if callback.arity == 1
callback.call(file)
else
callback.call(file, @app)
end
end
@file_paths_on_disk << file unless ignored

View file

@ -250,7 +250,7 @@ module Middleman
path_bits = path.split('.')
lang = path_bits.last
if app.langs.include?(lang.to_sym)
return path_bits[0..-1].join('.')
return path_bits[0..-2].join('.')
end
end