middleman-blog 3.4.1 → 3.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +0 -6
  3. data/CHANGELOG.md +32 -1
  4. data/Gemfile +5 -9
  5. data/README.md +3 -2
  6. data/features/article_cli.feature +10 -1
  7. data/features/custom_collections.feature +11 -0
  8. data/features/language.feature +82 -0
  9. data/features/multiblog.feature +4 -2
  10. data/features/permalink-data.feature +12 -0
  11. data/features/summary.feature +13 -0
  12. data/features/support/env.rb +3 -0
  13. data/features/tags.feature +18 -1
  14. data/features/time_zone.feature +1 -1
  15. data/fixtures/custom-article-template-app/config.rb +3 -0
  16. data/fixtures/custom-article-template-app/my_custom_article.tt +7 -0
  17. data/fixtures/custom-article-template-app/source/index.html.erb +9 -0
  18. data/fixtures/custom-article-template-app/source/layout.erb +30 -0
  19. data/fixtures/custom-collections-sources-app/config.rb +11 -0
  20. data/fixtures/custom-collections-sources-app/source/articles/2011-01-02-another-article.html.markdown +8 -0
  21. data/fixtures/custom-collections-sources-app/source/category.html.erb +7 -0
  22. data/fixtures/custom-collections-sources-app/source/index.html.erb +5 -0
  23. data/fixtures/custom-collections-sources-app/source/layout.erb +13 -0
  24. data/fixtures/custom-collections-sources-app/source/news/2011-01-01-new-article.html.markdown +7 -0
  25. data/fixtures/language-app/config.rb +2 -0
  26. data/fixtures/language-app/locales/en.yml +4 -0
  27. data/fixtures/language-app/locales/ru.yml +4 -0
  28. data/fixtures/language-app/source/2013-09-07-english-article-with-lang-in-frontmatter.html.erb +6 -0
  29. data/fixtures/language-app/source/2013-09-07-russian-article-with-lang-in-frontmatter.html.erb +6 -0
  30. data/fixtures/language-app/source/en/2013-09-07-english-article-with-lang-in-path.html.erb +5 -0
  31. data/fixtures/language-app/source/layouts/layout.erb +8 -0
  32. data/fixtures/language-app/source/localizable/index.html.erb +5 -0
  33. data/fixtures/language-app/source/ru/2013-09-07-russian-article-with-lang-in-path.html.erb +5 -0
  34. data/fixtures/multiblog-app/source/blog1/index.html.erb +7 -0
  35. data/fixtures/permalink-data-app/config.rb +5 -0
  36. data/fixtures/permalink-data-app/source/index.html.erb +3 -0
  37. data/fixtures/permalink-data-app/source/layout.erb +14 -0
  38. data/fixtures/permalink-data-app/source/news/2011-01-01-new-article.html.markdown +7 -0
  39. data/fixtures/time-zone-app/source/blog/2013-06-24-hello.html.erb +1 -0
  40. data/lib/middleman-blog.rb +3 -8
  41. data/lib/middleman-blog/blog_article.rb +96 -60
  42. data/lib/middleman-blog/blog_data.rb +78 -76
  43. data/lib/middleman-blog/calendar_pages.rb +87 -119
  44. data/lib/middleman-blog/commands/article.rb +20 -14
  45. data/lib/middleman-blog/custom_pages.rb +30 -64
  46. data/lib/middleman-blog/extension.rb +175 -0
  47. data/lib/middleman-blog/helpers.rb +152 -0
  48. data/lib/middleman-blog/paginator.rb +127 -123
  49. data/lib/middleman-blog/tag_pages.rb +27 -45
  50. data/lib/middleman-blog/template.rb +17 -15
  51. data/lib/middleman-blog/template/config.tt +30 -33
  52. data/lib/middleman-blog/template/source/layout.erb +1 -0
  53. data/lib/middleman-blog/uri_templates.rb +58 -0
  54. data/lib/middleman-blog/version.rb +1 -1
  55. data/middleman-blog.gemspec +4 -1
  56. metadata +75 -9
  57. data/Gemfile-3.0 +0 -27
  58. data/lib/middleman-blog/extension_3_0.rb +0 -248
  59. data/lib/middleman-blog/extension_3_1.rb +0 -278
@@ -6,27 +6,29 @@ module Middleman
6
6
  # A template that generates a blog-specific config.rb
7
7
  # and a set of example templates for index, layout, tags, and calendar.
8
8
  class Template < Middleman::Templates::Base
9
- class_option "css_dir",
10
- :default => "stylesheets",
11
- :desc => 'The path to the css files'
12
- class_option "js_dir",
13
- :default => "javascripts",
14
- :desc => 'The path to the javascript files'
15
- class_option "images_dir",
16
- :default => "images",
17
- :desc => 'The path to the image files'
9
+ class_option "css_dir",
10
+ default: "stylesheets",
11
+ desc: 'The path to the css files'
12
+ class_option "js_dir",
13
+ default: "javascripts",
14
+ desc: 'The path to the javascript files'
15
+ class_option "images_dir",
16
+ default: "images",
17
+ desc: 'The path to the image files'
18
18
 
19
19
  def self.source_root
20
20
  File.join(File.dirname(__FILE__), 'template')
21
21
  end
22
-
22
+
23
23
  def build_scaffold
24
24
  template "config.tt", File.join(location, "config.rb")
25
- directory "source", File.join(location, "source")
26
-
27
- empty_directory File.join(location, "source", options[:css_dir])
28
- empty_directory File.join(location, "source", options[:js_dir])
29
- empty_directory File.join(location, "source", options[:images_dir])
25
+
26
+ source = File.join(location, "source")
27
+ directory "source", source
28
+
29
+ [:css_dir, :js_dir, :images_dir].each do |dir|
30
+ empty_directory File.join(source, options[dir])
31
+ end
30
32
  end
31
33
  end
32
34
  end
@@ -5,36 +5,36 @@
5
5
  # Time.zone = "UTC"
6
6
 
7
7
  activate :blog do |blog|
8
+ # This will add a prefix to all links, template references and source paths
8
9
  # blog.prefix = "blog"
9
- # blog.permalink = ":year/:month/:day/:title.html"
10
- # blog.sources = ":year-:month-:day-:title.html"
11
- # blog.taglink = "tags/:tag.html"
10
+
11
+ # blog.permalink = "{year}/{month}/{day}/{title}.html"
12
+ # Matcher for blog source files
13
+ # blog.sources = "{year}-{month}-{day}-{title}.html"
14
+ # blog.taglink = "tags/{tag}.html"
12
15
  # blog.layout = "layout"
13
16
  # blog.summary_separator = /(READMORE)/
14
17
  # blog.summary_length = 250
15
- # blog.year_link = ":year.html"
16
- # blog.month_link = ":year/:month.html"
17
- # blog.day_link = ":year/:month/:day.html"
18
+ # blog.year_link = "{year}.html"
19
+ # blog.month_link = "{year}/{month}.html"
20
+ # blog.day_link = "{year}/{month}/{day}.html"
18
21
  # blog.default_extension = ".markdown"
19
22
 
20
23
  blog.tag_template = "tag.html"
21
24
  blog.calendar_template = "calendar.html"
22
25
 
26
+ # Enable pagination
23
27
  # blog.paginate = true
24
28
  # blog.per_page = 10
25
- # blog.page_link = "page/:num"
29
+ # blog.page_link = "page/{num}"
26
30
  end
27
31
 
28
- page "/feed.xml", :layout => false
32
+ page "/feed.xml", layout: false
29
33
 
30
- ###
34
+ ###
31
35
  # Compass
32
36
  ###
33
37
 
34
- # Susy grids in Compass
35
- # First: gem install susy
36
- # require 'susy'
37
-
38
38
  # Change Compass configuration
39
39
  # compass_config do |config|
40
40
  # config.output_style = :compact
@@ -45,22 +45,21 @@ page "/feed.xml", :layout => false
45
45
  ###
46
46
 
47
47
  # Per-page layout changes:
48
- #
48
+ #
49
49
  # With no layout
50
- # page "/path/to/file.html", :layout => false
51
- #
50
+ # page "/path/to/file.html", layout: false
51
+ #
52
52
  # With alternative layout
53
- # page "/path/to/file.html", :layout => :otherlayout
54
- #
53
+ # page "/path/to/file.html", layout: :otherlayout
54
+ #
55
55
  # A path which all have the same layout
56
56
  # with_layout :admin do
57
57
  # page "/admin/*"
58
58
  # end
59
59
 
60
- # Proxy (fake) files
61
- # page "/this-page-has-no-template.html", :proxy => "/template-file.html" do
62
- # @which_fake_page = "Rendering a fake page with a variable"
63
- # end
60
+ # Proxy pages (http://middlemanapp.com/dynamic-pages/)
61
+ # proxy "/this-page-has-no-template.html", "/template-file.html", locals: {
62
+ # which_fake_page: "Rendering a fake page with a local variable" }
64
63
 
65
64
  ###
66
65
  # Helpers
@@ -69,6 +68,9 @@ page "/feed.xml", :layout => false
69
68
  # Automatic image dimensions on image_tag helper
70
69
  # activate :automatic_image_sizes
71
70
 
71
+ # Reload the browser automatically whenever files change
72
+ # activate :livereload
73
+
72
74
  # Methods defined in the helpers block are available in templates
73
75
  # helpers do
74
76
  # def some_helper
@@ -101,21 +103,16 @@ set :images_dir, '<%= options[:images_dir] -%>'
101
103
  configure :build do
102
104
  # For example, change the Compass output style for deployment
103
105
  # activate :minify_css
104
-
106
+
105
107
  # Minify Javascript on build
106
108
  # activate :minify_javascript
107
-
109
+
108
110
  # Enable cache buster
109
- # activate :cache_buster
110
-
111
+ # activate :asset_hash
112
+
111
113
  # Use relative URLs
112
114
  # activate :relative_assets
113
-
114
- # Compress PNGs after build
115
- # First: gem install middleman-smusher
116
- # require "middleman-smusher"
117
- # activate :smusher
118
-
115
+
119
116
  # Or use a different image path
120
- # set :http_path, "/Content/images/"
117
+ # set :http_prefix, "/Content/images/"
121
118
  end
@@ -4,6 +4,7 @@
4
4
  <meta charset="utf-8" />
5
5
  <meta http-equiv='X-UA-Compatible' content='IE=edge;chrome=1' />
6
6
  <title>Blog Title<%= ' - ' + current_article.title unless current_article.nil? %></title>
7
+ <%= feed_tag :atom, "#{blog.options.prefix.to_s}/feed.xml"), title: "Atom Feed" %>
7
8
  </head>
8
9
  <body>
9
10
 
@@ -0,0 +1,58 @@
1
+ require 'addressable/template'
2
+
3
+ module Middleman
4
+ module Blog
5
+ # Handy methods for dealing with URI templates. Mix into whatever class.
6
+ module UriTemplates
7
+
8
+ module_function
9
+
10
+ # Given a URI template string, make an Addressable::Template
11
+ # This supports the legacy middleman-blog/Sinatra style :colon
12
+ # URI templates as well as RFC6470 templates.
13
+ #
14
+ # @param [String] tmpl_src URI template source
15
+ # @return [Addressable::Template] a URI template
16
+ def uri_template(tmpl_src)
17
+ # Support the RFC6470 templates directly if people use them
18
+ if tmpl_src.include?(':')
19
+ tmpl_src = tmpl_src.gsub(/:([A-Za-z0-9]+)/, '{\1}')
20
+ end
21
+
22
+ Addressable::Template.new ::Middleman::Util.normalize_path(tmpl_src)
23
+ end
24
+
25
+ # Apply a URI template with the given data, producing a normalized
26
+ # Middleman path.
27
+ #
28
+ # @param [Addressable::Template] template
29
+ # @param [Hash] data
30
+ # @return [String] normalized path
31
+ def apply_uri_template(template, data)
32
+ ::Middleman::Util.normalize_path Addressable::URI.unencode(template.expand(data)).to_s
33
+ end
34
+
35
+ # Parameterize a string only if it does not contain UTF-8 characters
36
+ def safe_parameterize(str)
37
+ if str.chars.all? { |c| c.bytes.count == 1 }
38
+ str.parameterize
39
+ else
40
+ # At least change spaces to dashes
41
+ str.gsub(/\s+/, '-')
42
+ end
43
+ end
44
+
45
+ # Convert a date into a hash of components to strings
46
+ # suitable for using in a URL template.
47
+ # @param [DateTime] date
48
+ # @return [Hash] parameters
49
+ def date_to_params(date)
50
+ return {
51
+ year: date.year.to_s,
52
+ month: date.month.to_s.rjust(2,'0'),
53
+ day: date.day.to_s.rjust(2,'0')
54
+ }
55
+ end
56
+ end
57
+ end
58
+ end
@@ -1,5 +1,5 @@
1
1
  module Middleman
2
2
  module Blog
3
- VERSION = "3.4.1"
3
+ VERSION = "3.5.0"
4
4
  end
5
5
  end
@@ -15,6 +15,9 @@ Gem::Specification.new do |s|
15
15
  s.files = `git ls-files -z`.split("\0")
16
16
  s.test_files = `git ls-files -z -- {fixtures,features}/*`.split("\0")
17
17
  s.require_paths = ["lib"]
18
+ s.required_ruby_version = '>= 1.9.3'
19
+
18
20
  s.add_dependency("middleman-core", ["~> 3.2"])
19
- s.add_dependency("tzinfo", ["~> 0.3.0"])
21
+ s.add_dependency("tzinfo", [">= 0.3.0"])
22
+ s.add_dependency("addressable", ["~> 2.3.5"])
20
23
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: middleman-blog
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.1
4
+ version: 3.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Reynolds
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-11-03 00:00:00.000000000 Z
12
+ date: 2013-11-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: middleman-core
@@ -29,16 +29,30 @@ dependencies:
29
29
  name: tzinfo
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ~>
32
+ - - '>='
33
33
  - !ruby/object:Gem::Version
34
34
  version: 0.3.0
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ~>
39
+ - - '>='
40
40
  - !ruby/object:Gem::Version
41
41
  version: 0.3.0
42
+ - !ruby/object:Gem::Dependency
43
+ name: addressable
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: 2.3.5
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ~>
54
+ - !ruby/object:Gem::Version
55
+ version: 2.3.5
42
56
  description: Blog engine for Middleman
43
57
  email:
44
58
  - me@tdreyno.com
@@ -54,7 +68,6 @@ files:
54
68
  - CHANGELOG.md
55
69
  - CONTRIBUTING.md
56
70
  - Gemfile
57
- - Gemfile-3.0
58
71
  - LICENSE.md
59
72
  - README.md
60
73
  - Rakefile
@@ -70,12 +83,14 @@ files:
70
83
  - features/directory_indexes.feature
71
84
  - features/filename_date.feature
72
85
  - features/future_date.feature
86
+ - features/language.feature
73
87
  - features/layouts.feature
74
88
  - features/multiblog.feature
75
89
  - features/next_previous.feature
76
90
  - features/no_date.feature
77
91
  - features/paginate.feature
78
92
  - features/paginate_multiblog.feature
93
+ - features/permalink-data.feature
79
94
  - features/preview.feature
80
95
  - features/published.feature
81
96
  - features/summary.feature
@@ -118,6 +133,10 @@ files:
118
133
  - fixtures/calendar-multiblog-app/source/calendar2.html.erb
119
134
  - fixtures/calendar-multiblog-app/source/index.html.erb
120
135
  - fixtures/calendar-multiblog-app/source/layout.erb
136
+ - fixtures/custom-article-template-app/config.rb
137
+ - fixtures/custom-article-template-app/my_custom_article.tt
138
+ - fixtures/custom-article-template-app/source/index.html.erb
139
+ - fixtures/custom-article-template-app/source/layout.erb
121
140
  - fixtures/custom-collections-app/config-blog-prefix.rb
122
141
  - fixtures/custom-collections-app/config-directory-indexes.rb
123
142
  - fixtures/custom-collections-app/config.rb
@@ -135,6 +154,12 @@ files:
135
154
  - fixtures/custom-collections-multiblog-app/source/category2.html.erb
136
155
  - fixtures/custom-collections-multiblog-app/source/index.html.erb
137
156
  - fixtures/custom-collections-multiblog-app/source/layout.erb
157
+ - fixtures/custom-collections-sources-app/config.rb
158
+ - fixtures/custom-collections-sources-app/source/articles/2011-01-02-another-article.html.markdown
159
+ - fixtures/custom-collections-sources-app/source/category.html.erb
160
+ - fixtures/custom-collections-sources-app/source/index.html.erb
161
+ - fixtures/custom-collections-sources-app/source/layout.erb
162
+ - fixtures/custom-collections-sources-app/source/news/2011-01-01-new-article.html.markdown
138
163
  - fixtures/custom-permalinks-app/config-directory-indexes.rb
139
164
  - fixtures/custom-permalinks-app/config.rb
140
165
  - fixtures/custom-permalinks-app/source/blog/2011-01-01-new-article.html.markdown
@@ -168,6 +193,15 @@ files:
168
193
  - fixtures/indexes-app/source/2011/01/01/new-article.html.markdown
169
194
  - fixtures/indexes-app/source/index.html.erb
170
195
  - fixtures/indexes-app/source/layout.erb
196
+ - fixtures/language-app/config.rb
197
+ - fixtures/language-app/locales/en.yml
198
+ - fixtures/language-app/locales/ru.yml
199
+ - fixtures/language-app/source/2013-09-07-english-article-with-lang-in-frontmatter.html.erb
200
+ - fixtures/language-app/source/2013-09-07-russian-article-with-lang-in-frontmatter.html.erb
201
+ - fixtures/language-app/source/en/2013-09-07-english-article-with-lang-in-path.html.erb
202
+ - fixtures/language-app/source/layouts/layout.erb
203
+ - fixtures/language-app/source/localizable/index.html.erb
204
+ - fixtures/language-app/source/ru/2013-09-07-russian-article-with-lang-in-path.html.erb
171
205
  - fixtures/layouts-app/config.rb
172
206
  - fixtures/layouts-app/source/2011/01/01/first-article.html.markdown
173
207
  - fixtures/layouts-app/source/2011/01/01/second-article.html.markdown
@@ -180,6 +214,7 @@ files:
180
214
  - fixtures/layouts-app/source/layouts/third.html.erb
181
215
  - fixtures/multiblog-app/config.rb
182
216
  - fixtures/multiblog-app/source/blog1/2012-12-12-other-article.html.markdown
217
+ - fixtures/multiblog-app/source/blog1/index.html.erb
183
218
  - fixtures/multiblog-app/source/blog2/2011/01/01/new-article.html.markdown
184
219
  - fixtures/multiblog-app/source/index.html.erb
185
220
  - fixtures/multiblog-app/source/layout.erb
@@ -238,6 +273,10 @@ files:
238
273
  - fixtures/paginate-multiblog-app/source/tag1.html.erb
239
274
  - fixtures/paginate-multiblog-app/source/tag2.html.erb
240
275
  - fixtures/paginate-multiblog-app/source/tag3.html.erb
276
+ - fixtures/permalink-data-app/config.rb
277
+ - fixtures/permalink-data-app/source/index.html.erb
278
+ - fixtures/permalink-data-app/source/layout.erb
279
+ - fixtures/permalink-data-app/source/news/2011-01-01-new-article.html.markdown
241
280
  - fixtures/preview-app/config.rb
242
281
  - fixtures/preview-app/source/2011/01/01/new-article.html.markdown
243
282
  - fixtures/preview-app/source/index.html.erb
@@ -284,8 +323,8 @@ files:
284
323
  - lib/middleman-blog/commands/article.rb
285
324
  - lib/middleman-blog/commands/article.tt
286
325
  - lib/middleman-blog/custom_pages.rb
287
- - lib/middleman-blog/extension_3_0.rb
288
- - lib/middleman-blog/extension_3_1.rb
326
+ - lib/middleman-blog/extension.rb
327
+ - lib/middleman-blog/helpers.rb
289
328
  - lib/middleman-blog/paginator.rb
290
329
  - lib/middleman-blog/tag_pages.rb
291
330
  - lib/middleman-blog/template.rb
@@ -298,6 +337,7 @@ files:
298
337
  - lib/middleman-blog/template/source/layout.erb
299
338
  - lib/middleman-blog/template/source/tag.html.erb
300
339
  - lib/middleman-blog/truncate_html.rb
340
+ - lib/middleman-blog/uri_templates.rb
301
341
  - lib/middleman-blog/version.rb
302
342
  - lib/middleman_extension.rb
303
343
  - middleman-blog.gemspec
@@ -313,7 +353,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
313
353
  requirements:
314
354
  - - '>='
315
355
  - !ruby/object:Gem::Version
316
- version: '0'
356
+ version: 1.9.3
317
357
  required_rubygems_version: !ruby/object:Gem::Requirement
318
358
  requirements:
319
359
  - - '>='
@@ -321,7 +361,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
321
361
  version: '0'
322
362
  requirements: []
323
363
  rubyforge_project:
324
- rubygems_version: 2.0.3
364
+ rubygems_version: 2.0.6
325
365
  signing_key:
326
366
  specification_version: 4
327
367
  summary: Blog engine for Middleman
@@ -338,12 +378,14 @@ test_files:
338
378
  - features/directory_indexes.feature
339
379
  - features/filename_date.feature
340
380
  - features/future_date.feature
381
+ - features/language.feature
341
382
  - features/layouts.feature
342
383
  - features/multiblog.feature
343
384
  - features/next_previous.feature
344
385
  - features/no_date.feature
345
386
  - features/paginate.feature
346
387
  - features/paginate_multiblog.feature
388
+ - features/permalink-data.feature
347
389
  - features/preview.feature
348
390
  - features/published.feature
349
391
  - features/summary.feature
@@ -386,6 +428,10 @@ test_files:
386
428
  - fixtures/calendar-multiblog-app/source/calendar2.html.erb
387
429
  - fixtures/calendar-multiblog-app/source/index.html.erb
388
430
  - fixtures/calendar-multiblog-app/source/layout.erb
431
+ - fixtures/custom-article-template-app/config.rb
432
+ - fixtures/custom-article-template-app/my_custom_article.tt
433
+ - fixtures/custom-article-template-app/source/index.html.erb
434
+ - fixtures/custom-article-template-app/source/layout.erb
389
435
  - fixtures/custom-collections-app/config-blog-prefix.rb
390
436
  - fixtures/custom-collections-app/config-directory-indexes.rb
391
437
  - fixtures/custom-collections-app/config.rb
@@ -403,6 +449,12 @@ test_files:
403
449
  - fixtures/custom-collections-multiblog-app/source/category2.html.erb
404
450
  - fixtures/custom-collections-multiblog-app/source/index.html.erb
405
451
  - fixtures/custom-collections-multiblog-app/source/layout.erb
452
+ - fixtures/custom-collections-sources-app/config.rb
453
+ - fixtures/custom-collections-sources-app/source/articles/2011-01-02-another-article.html.markdown
454
+ - fixtures/custom-collections-sources-app/source/category.html.erb
455
+ - fixtures/custom-collections-sources-app/source/index.html.erb
456
+ - fixtures/custom-collections-sources-app/source/layout.erb
457
+ - fixtures/custom-collections-sources-app/source/news/2011-01-01-new-article.html.markdown
406
458
  - fixtures/custom-permalinks-app/config-directory-indexes.rb
407
459
  - fixtures/custom-permalinks-app/config.rb
408
460
  - fixtures/custom-permalinks-app/source/blog/2011-01-01-new-article.html.markdown
@@ -436,6 +488,15 @@ test_files:
436
488
  - fixtures/indexes-app/source/2011/01/01/new-article.html.markdown
437
489
  - fixtures/indexes-app/source/index.html.erb
438
490
  - fixtures/indexes-app/source/layout.erb
491
+ - fixtures/language-app/config.rb
492
+ - fixtures/language-app/locales/en.yml
493
+ - fixtures/language-app/locales/ru.yml
494
+ - fixtures/language-app/source/2013-09-07-english-article-with-lang-in-frontmatter.html.erb
495
+ - fixtures/language-app/source/2013-09-07-russian-article-with-lang-in-frontmatter.html.erb
496
+ - fixtures/language-app/source/en/2013-09-07-english-article-with-lang-in-path.html.erb
497
+ - fixtures/language-app/source/layouts/layout.erb
498
+ - fixtures/language-app/source/localizable/index.html.erb
499
+ - fixtures/language-app/source/ru/2013-09-07-russian-article-with-lang-in-path.html.erb
439
500
  - fixtures/layouts-app/config.rb
440
501
  - fixtures/layouts-app/source/2011/01/01/first-article.html.markdown
441
502
  - fixtures/layouts-app/source/2011/01/01/second-article.html.markdown
@@ -448,6 +509,7 @@ test_files:
448
509
  - fixtures/layouts-app/source/layouts/third.html.erb
449
510
  - fixtures/multiblog-app/config.rb
450
511
  - fixtures/multiblog-app/source/blog1/2012-12-12-other-article.html.markdown
512
+ - fixtures/multiblog-app/source/blog1/index.html.erb
451
513
  - fixtures/multiblog-app/source/blog2/2011/01/01/new-article.html.markdown
452
514
  - fixtures/multiblog-app/source/index.html.erb
453
515
  - fixtures/multiblog-app/source/layout.erb
@@ -506,6 +568,10 @@ test_files:
506
568
  - fixtures/paginate-multiblog-app/source/tag1.html.erb
507
569
  - fixtures/paginate-multiblog-app/source/tag2.html.erb
508
570
  - fixtures/paginate-multiblog-app/source/tag3.html.erb
571
+ - fixtures/permalink-data-app/config.rb
572
+ - fixtures/permalink-data-app/source/index.html.erb
573
+ - fixtures/permalink-data-app/source/layout.erb
574
+ - fixtures/permalink-data-app/source/news/2011-01-01-new-article.html.markdown
509
575
  - fixtures/preview-app/config.rb
510
576
  - fixtures/preview-app/source/2011/01/01/new-article.html.markdown
511
577
  - fixtures/preview-app/source/index.html.erb