middleman-core 3.2.2 → 3.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (273) hide show
  1. checksums.yaml +4 -4
  2. data/features/cli_init.feature +18 -8
  3. data/features/helpers_select_tag.feature +1 -1
  4. data/features/layouts_dir.feature +8 -0
  5. data/features/markdown_redcarpet.feature +2 -2
  6. data/fixtures/asciidoc-app/source/layouts/default.erb +0 -1
  7. data/fixtures/capture-html-app/source/capture_html_haml.html.haml +1 -1
  8. data/fixtures/content-for-app/source/content_for_haml.html.haml +1 -1
  9. data/fixtures/frontmatter-settings-app/source/layouts/override.erb +1 -2
  10. data/fixtures/frontmatter-settings-neighbor-app/source/layouts/override.erb +1 -2
  11. data/fixtures/layouts-dir-app/source/ambiguous.html.erb +5 -0
  12. data/fixtures/layouts-dir-app/source/layouts/other.erb +3 -0
  13. data/fixtures/layouts-dir-app/source/other.erb +3 -0
  14. data/fixtures/link-to-app/source/link_to_haml.html.haml +1 -1
  15. data/fixtures/link-to-app/source/link_to_slim.html.slim +1 -1
  16. data/fixtures/nested-layout-app/source/layouts/inner_haml.haml +1 -1
  17. data/fixtures/nested-layout-app/source/layouts/inner_slim.slim +1 -1
  18. data/fixtures/nested-layout-app/source/layouts/outer_haml.haml +1 -1
  19. data/fixtures/nested-layout-app/source/layouts/outer_slim.slim +1 -1
  20. data/lib/middleman-core/application.rb +12 -3
  21. data/lib/middleman-core/cli/build.rb +5 -3
  22. data/lib/middleman-core/cli/console.rb +1 -1
  23. data/lib/middleman-core/cli/init.rb +1 -1
  24. data/lib/middleman-core/core_extensions.rb +0 -1
  25. data/lib/middleman-core/core_extensions/file_watcher.rb +11 -11
  26. data/lib/middleman-core/core_extensions/rendering.rb +40 -66
  27. data/lib/middleman-core/extension.rb +167 -0
  28. data/lib/middleman-core/extensions.rb +2 -151
  29. data/lib/middleman-core/logger.rb +2 -2
  30. data/lib/middleman-core/meta_pages/assets/config.css +13 -0
  31. data/lib/middleman-core/meta_pages/assets/meta.css +19 -3
  32. data/lib/middleman-core/meta_pages/assets/sitemap.css +18 -1
  33. data/lib/middleman-core/meta_pages/config_setting.rb +7 -9
  34. data/lib/middleman-core/meta_pages/sitemap_resource.rb +24 -15
  35. data/lib/middleman-core/meta_pages/sitemap_tree.rb +5 -1
  36. data/lib/middleman-core/meta_pages/templates/config.html.erb +2 -2
  37. data/lib/middleman-core/meta_pages/templates/index.html.erb +18 -8
  38. data/lib/middleman-core/meta_pages/templates/sitemap.html.erb +4 -5
  39. data/lib/middleman-core/preview_server.rb +6 -3
  40. data/lib/middleman-core/renderers/erb.rb +12 -14
  41. data/lib/middleman-core/renderers/haml.rb +10 -0
  42. data/lib/middleman-core/renderers/markdown.rb +5 -1
  43. data/lib/middleman-core/renderers/sass.rb +0 -4
  44. data/lib/middleman-core/renderers/slim.rb +16 -3
  45. data/lib/middleman-core/sitemap/resource.rb +1 -1
  46. data/lib/middleman-core/step_definitions.rb +2 -1
  47. data/lib/middleman-core/templates.rb +3 -1
  48. data/lib/middleman-core/templates/shared/Gemfile.tt +4 -1
  49. data/lib/middleman-core/templates/shared/config.tt +3 -1
  50. data/lib/middleman-core/templates/shared/gitignore +2 -1
  51. data/lib/middleman-core/util.rb +22 -16
  52. data/lib/middleman-core/version.rb +1 -1
  53. data/lib/middleman-more/core_extensions/compass.rb +3 -3
  54. data/lib/middleman-more/core_extensions/default_helpers.rb +18 -15
  55. data/lib/middleman-more/extensions/asset_hash.rb +1 -0
  56. data/middleman-core.gemspec +9 -6
  57. metadata +69 -227
  58. data/features/sass_cache_path.feature +0 -22
  59. data/fixtures/sass-cache-path-custom-app/config.rb +0 -3
  60. data/fixtures/sass-cache-path-custom-app/source/stylesheets/plain.css.sass +0 -4
  61. data/fixtures/sass-cache-path-default-app/config.rb +0 -3
  62. data/fixtures/sass-cache-path-default-app/source/stylesheets/plain.css.sass +0 -4
  63. data/lib/vendored-middleman-deps/hooks-0.2.0/CHANGES.textile +0 -9
  64. data/lib/vendored-middleman-deps/hooks-0.2.0/Gemfile +0 -3
  65. data/lib/vendored-middleman-deps/hooks-0.2.0/README.rdoc +0 -107
  66. data/lib/vendored-middleman-deps/hooks-0.2.0/Rakefile +0 -12
  67. data/lib/vendored-middleman-deps/hooks-0.2.0/hooks.gemspec +0 -22
  68. data/lib/vendored-middleman-deps/hooks-0.2.0/lib/hooks.rb +0 -109
  69. data/lib/vendored-middleman-deps/hooks-0.2.0/lib/hooks/inheritable_attribute.rb +0 -33
  70. data/lib/vendored-middleman-deps/hooks-0.2.0/test/hooks_test.rb +0 -141
  71. data/lib/vendored-middleman-deps/hooks-0.2.0/test/inheritable_attribute_test.rb +0 -55
  72. data/lib/vendored-middleman-deps/hooks-0.2.0/test/test_helper.rb +0 -10
  73. data/lib/vendored-middleman-deps/padrino-core-0.11.4/.document +0 -5
  74. data/lib/vendored-middleman-deps/padrino-core-0.11.4/.gitignore +0 -22
  75. data/lib/vendored-middleman-deps/padrino-core-0.11.4/.yardopts +0 -1
  76. data/lib/vendored-middleman-deps/padrino-core-0.11.4/LICENSE.txt +0 -20
  77. data/lib/vendored-middleman-deps/padrino-core-0.11.4/README.rdoc +0 -294
  78. data/lib/vendored-middleman-deps/padrino-core-0.11.4/Rakefile +0 -5
  79. data/lib/vendored-middleman-deps/padrino-core-0.11.4/bin/padrino +0 -9
  80. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core.rb +0 -200
  81. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application.rb +0 -297
  82. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/flash.rb +0 -229
  83. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/rendering.rb +0 -317
  84. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/rendering/extensions/erubis.rb +0 -64
  85. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/rendering/extensions/haml.rb +0 -28
  86. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/rendering/extensions/slim.rb +0 -14
  87. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/routing.rb +0 -1077
  88. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/showexceptions.rb +0 -21
  89. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/caller.rb +0 -53
  90. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/cli/adapter.rb +0 -24
  91. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/cli/base.rb +0 -159
  92. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/cli/console.rb +0 -20
  93. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/cli/rake.rb +0 -47
  94. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/cli/rake_tasks.rb +0 -52
  95. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/command.rb +0 -38
  96. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/images/404.png +0 -0
  97. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/images/500.png +0 -0
  98. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/loader.rb +0 -224
  99. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/cs.yml +0 -33
  100. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/da.yml +0 -33
  101. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/de.yml +0 -33
  102. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/en.yml +0 -33
  103. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/es.yml +0 -33
  104. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/fr.yml +0 -33
  105. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/hu.yml +0 -33
  106. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/it.yml +0 -39
  107. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/ja.yml +0 -33
  108. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/lv.yml +0 -33
  109. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/nl.yml +0 -33
  110. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/no.yml +0 -33
  111. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/pl.yml +0 -33
  112. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/pt_br.yml +0 -39
  113. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/ro.yml +0 -33
  114. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/ru.yml +0 -34
  115. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/sv.yml +0 -33
  116. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/tr.yml +0 -33
  117. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/uk.yml +0 -33
  118. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/zh_cn.yml +0 -33
  119. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/locale/zh_tw.yml +0 -33
  120. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/logger.rb +0 -438
  121. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/module.rb +0 -58
  122. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/mounter.rb +0 -234
  123. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/reloader.rb +0 -341
  124. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/router.rb +0 -95
  125. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/server.rb +0 -77
  126. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/support_lite.rb +0 -260
  127. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/tasks.rb +0 -21
  128. data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/version.rb +0 -20
  129. data/lib/vendored-middleman-deps/padrino-core-0.11.4/padrino-core.gemspec +0 -43
  130. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/app_gem/Gemfile +0 -4
  131. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/app_gem/app/app.rb +0 -3
  132. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/app_gem/app_gem.gemspec +0 -17
  133. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/app_gem/lib/app_gem.rb +0 -7
  134. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/app_gem/lib/app_gem/version.rb +0 -3
  135. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/apps/.components +0 -6
  136. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/apps/.gitignore +0 -7
  137. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/apps/complex.rb +0 -32
  138. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/apps/simple.rb +0 -33
  139. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/dependencies/a.rb +0 -9
  140. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/dependencies/b.rb +0 -4
  141. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/dependencies/c.rb +0 -1
  142. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/dependencies/circular/e.rb +0 -13
  143. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/dependencies/circular/f.rb +0 -2
  144. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/dependencies/circular/g.rb +0 -2
  145. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/fixtures/dependencies/d.rb +0 -4
  146. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/helper.rb +0 -83
  147. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/mini_shoulda.rb +0 -45
  148. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_application.rb +0 -125
  149. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_core.rb +0 -77
  150. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_csrf_protection.rb +0 -80
  151. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_dependencies.rb +0 -44
  152. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_filters.rb +0 -348
  153. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_flash.rb +0 -168
  154. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_locale.rb +0 -21
  155. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_logger.rb +0 -210
  156. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_mounter.rb +0 -199
  157. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_reloader_complex.rb +0 -75
  158. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_reloader_simple.rb +0 -98
  159. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_rendering.rb +0 -545
  160. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_rendering_extensions.rb +0 -14
  161. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_restful_routing.rb +0 -33
  162. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_router.rb +0 -146
  163. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_routing.rb +0 -1927
  164. data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_support_lite.rb +0 -56
  165. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/.document +0 -5
  166. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/.gitignore +0 -21
  167. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/.yardopts +0 -1
  168. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/LICENSE.txt +0 -20
  169. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/README.rdoc +0 -239
  170. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/Rakefile +0 -5
  171. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers.rb +0 -57
  172. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/asset_tag_helpers.rb +0 -401
  173. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/breadcrumb_helpers.rb +0 -183
  174. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/form_builder/abstract_form_builder.rb +0 -317
  175. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/form_builder/standard_form_builder.rb +0 -40
  176. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/form_helpers.rb +0 -919
  177. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/format_helpers.rb +0 -372
  178. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/cs.yml +0 -103
  179. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/da.yml +0 -91
  180. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/de.yml +0 -81
  181. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/en.yml +0 -103
  182. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/es.yml +0 -103
  183. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/fr.yml +0 -79
  184. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/hu.yml +0 -103
  185. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/it.yml +0 -89
  186. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/ja.yml +0 -103
  187. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/lv.yml +0 -103
  188. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/nl.yml +0 -82
  189. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/no.yml +0 -91
  190. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/pl.yml +0 -95
  191. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/pt_br.yml +0 -103
  192. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/ro.yml +0 -103
  193. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/ru.yml +0 -103
  194. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/sv.yml +0 -103
  195. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/tr.yml +0 -103
  196. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/uk.yml +0 -103
  197. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/zh_cn.yml +0 -103
  198. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/locale/zh_tw.yml +0 -103
  199. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/number_helpers.rb +0 -283
  200. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/output_helpers.rb +0 -207
  201. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/output_helpers/abstract_handler.rb +0 -96
  202. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/output_helpers/erb_handler.rb +0 -78
  203. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/output_helpers/haml_handler.rb +0 -63
  204. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/output_helpers/slim_handler.rb +0 -78
  205. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/render_helpers.rb +0 -59
  206. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/tag_helpers.rb +0 -292
  207. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/translation_helpers.rb +0 -36
  208. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/padrino-helpers.gemspec +0 -27
  209. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/app.rb +0 -84
  210. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/button_to.erb +0 -8
  211. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/button_to.haml +0 -5
  212. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/button_to.slim +0 -6
  213. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/capture_concat.erb +0 -14
  214. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/capture_concat.haml +0 -12
  215. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/capture_concat.slim +0 -12
  216. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/content_for.erb +0 -14
  217. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/content_for.haml +0 -12
  218. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/content_for.slim +0 -12
  219. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/content_tag.erb +0 -11
  220. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/content_tag.haml +0 -9
  221. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/content_tag.slim +0 -9
  222. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/current_engine.erb +0 -5
  223. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/current_engine.haml +0 -5
  224. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/current_engine.slim +0 -5
  225. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/fields_for.erb +0 -20
  226. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/fields_for.haml +0 -15
  227. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/fields_for.slim +0 -15
  228. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/form_for.erb +0 -72
  229. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/form_for.haml +0 -59
  230. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/form_for.slim +0 -59
  231. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/form_tag.erb +0 -95
  232. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/form_tag.haml +0 -78
  233. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/form_tag.slim +0 -79
  234. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/link_to.erb +0 -5
  235. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/link_to.haml +0 -4
  236. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/link_to.slim +0 -4
  237. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/mail_to.erb +0 -3
  238. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/mail_to.haml +0 -3
  239. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/mail_to.slim +0 -3
  240. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/meta_tag.erb +0 -3
  241. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/meta_tag.haml +0 -3
  242. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/meta_tag.slim +0 -3
  243. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/partials/_erb.erb +0 -1
  244. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/partials/_haml.haml +0 -1
  245. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/partials/_slim.slim +0 -1
  246. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/simple_partial.erb +0 -1
  247. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/simple_partial.haml +0 -1
  248. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/simple_partial.slim +0 -1
  249. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/app.rb +0 -58
  250. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/current_engine.haml +0 -5
  251. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/current_engines/_erb.erb +0 -1
  252. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/current_engines/_haml.haml +0 -1
  253. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/current_engines/_slim.slim +0 -1
  254. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/double_capture_erb.erb +0 -3
  255. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/double_capture_haml.haml +0 -2
  256. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/double_capture_slim.slim +0 -2
  257. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/erb/test.erb +0 -1
  258. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/explicit_engine.haml +0 -5
  259. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/haml/test.haml +0 -1
  260. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/template/_user.haml +0 -7
  261. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/template/haml_template.haml +0 -1
  262. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/render_app/views/template/some_template.haml +0 -2
  263. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/helper.rb +0 -67
  264. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_asset_tag_helpers.rb +0 -359
  265. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_breadcrumb_helpers.rb +0 -134
  266. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_form_builder.rb +0 -1178
  267. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_form_helpers.rb +0 -1030
  268. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_format_helpers.rb +0 -241
  269. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_locale.rb +0 -20
  270. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_number_helpers.rb +0 -143
  271. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_output_helpers.rb +0 -154
  272. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_render_helpers.rb +0 -94
  273. data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_tag_helpers.rb +0 -117
@@ -1,3 +1,5 @@
1
+ require 'pp'
2
+
1
3
  module Middleman
2
4
  module MetaPages
3
5
  # View class for a config entry
@@ -13,22 +15,18 @@ module Middleman
13
15
  content = ''
14
16
  key_classes = ['key']
15
17
  key_classes << 'modified' if @setting.value_set?
16
- content << content_tag(:span, @setting.key.inspect, :class => key_classes.join(' '))
18
+ content << content_tag(:span, @setting.key.pretty_inspect.strip, :class => key_classes.join(' '))
17
19
  content << ' = '
18
- content << content_tag(:span, @setting.value.inspect, :class => 'value')
19
- if @setting.default
20
+ content << content_tag(:span, @setting.value.pretty_inspect.strip, :class => 'value')
21
+ if @setting.default && @setting.value_set? && @setting.default != @setting.value
20
22
  content << content_tag(:span, :class => 'default') do
21
- if @setting.value_set?
22
- "Default: #{@setting.default.inspect}"
23
- else
24
- '(Default)'
25
- end
23
+ "(Default: #{@setting.default.inspect})"
26
24
  end
27
25
  end
28
26
 
29
27
  if @setting.description
30
28
  content << content_tag(:p, :class => 'description') do
31
- CGI::escapeHTML(@setting.description)
29
+ @setting.description
32
30
  end
33
31
  end
34
32
 
@@ -1,7 +1,4 @@
1
- if !defined?(::Padrino::Helpers)
2
- require 'vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/support_lite'
3
- require 'vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers'
4
- end
1
+ require 'padrino-helpers'
5
2
 
6
3
  module Middleman
7
4
  module MetaPages
@@ -15,7 +12,9 @@ module Middleman
15
12
  end
16
13
 
17
14
  def render
18
- content_tag :div, :class => 'resource-details' do
15
+ classes = 'resource-details'
16
+ classes << ' ignored' if @resource.ignored?
17
+ content_tag :div, :class => classes do
19
18
  content_tag :table do
20
19
  content = ''
21
20
  resource_properties.each do |label, value|
@@ -33,24 +32,34 @@ module Middleman
33
32
 
34
33
  # A hash of label to value for all the properties we want to display
35
34
  def resource_properties
36
- props = {
37
- 'Path' => @resource.path,
38
- 'Build Path' => @resource.destination_path,
39
- 'URL' => content_tag(:a, @resource.url, :href => @resource.url),
40
- 'Source File' => @resource.source_file,
41
- }
35
+ props = {}
36
+ props['Path'] = @resource.path
37
+
38
+ build_path = @resource.destination_path
39
+ build_path = 'Not built' if ignored?
40
+ props['Build Path'] = build_path if @resource.path != build_path
41
+ props['URL'] = content_tag(:a, @resource.url, :href => @resource.url) unless ignored?
42
+ props['Source File'] = @resource.source_file.sub(/^#{Regexp.escape(ENV['MM_ROOT'] + '/')}/, '')
42
43
 
43
44
  data = @resource.data
44
- props['Data'] = data unless data.empty?
45
+ props['Data'] = data.inspect unless data.empty?
46
+
47
+ meta = @resource.metadata
48
+ options = meta[:options]
49
+ props['Options'] = options.inspect unless options.empty?
45
50
 
46
- options = @resource.metadata[:options]
47
- props['Options'] = options unless options.empty?
51
+ locals = meta[:locals].keys
52
+ props['Locals'] = locals.join(', ') unless locals.empty?
48
53
 
49
54
  props
50
55
  end
51
56
 
57
+ def ignored?
58
+ @resource.ignored?
59
+ end
60
+
52
61
  def css_classes
53
- ['resource']
62
+ ['resource'].concat(ignored? ? ['ignored'] : [])
54
63
  end
55
64
  end
56
65
  end
@@ -45,7 +45,11 @@ module Middleman
45
45
  end
46
46
 
47
47
  def css_classes
48
- ['tree']
48
+ ['tree'].concat(ignored? ? ['ignored'] : [])
49
+ end
50
+
51
+ def ignored?
52
+ @children.values.all?(&:ignored?)
49
53
  end
50
54
 
51
55
  protected
@@ -13,7 +13,7 @@
13
13
  <a href="/__middleman/">&laquo; back</a>
14
14
  <h1>Middleman Configuration</h1>
15
15
 
16
- <p>This page shows the current configuration of your Middleman application.</p>
16
+ <p>This page shows the current configuration of your Middleman application. <a href="http://middlemanapp.com/advanced/configuration/">Read more about configuring Middleman.</a></p>
17
17
 
18
18
  <p>
19
19
  <a href="#core">Core configuration</a>
@@ -48,7 +48,7 @@
48
48
  <% end %>
49
49
 
50
50
  <% registered_extensions.keys.each do |ext_name| %>
51
- <li><span class="extension"><%= ext_name.inspect %></span> (Inactive)</li>
51
+ <li><span class="extension inactive"><%= ext_name.inspect %></span></li>
52
52
  <% end %>
53
53
  </ul>
54
54
  </article>
@@ -5,17 +5,27 @@
5
5
  <title>Middleman Info</title>
6
6
  <link type="text/css" rel="stylesheet" href="/__middleman/assets/meta.css">
7
7
  </head>
8
-
8
+
9
9
  <body>
10
10
  <div class="container">
11
- <h1>Middleman Information</h1>
11
+ <article id="main">
12
+ <h1>Middleman Information</h1>
12
13
 
13
- <ul>
14
- <li><a href="/__middleman/sitemap/">Sitemap</a></li>
15
- <li><a href="/__middleman/config/">Configuration</a></li>
16
- <li><a href="http://middlemanapp.com">Middleman Guides</a></li>
17
- </ul>
14
+ <ul class="nav-list">
15
+ <li>
16
+ <a href="/__middleman/sitemap/">Sitemap</a>
17
+ <p>The structure of your site as understood by Middleman.</p>
18
+ </li>
19
+ <li>
20
+ <a href="/__middleman/config/">Configuration</a>
21
+ <p>All available configuration options and their current values.</p>
22
+ </li>
23
+ <li>
24
+ <a href="http://middlemanapp.com">Middleman Guides</a>
25
+ <p>Documentation about Middleman's features.</p>
26
+ </li>
27
+ </ul>
28
+ </article>
18
29
  </div>
19
30
  </body>
20
31
  </html>
21
-
@@ -2,17 +2,17 @@
2
2
  <html>
3
3
  <head>
4
4
  <meta charset="utf-8">
5
-
5
+
6
6
  <title>Middleman Sitemap</title>
7
7
 
8
-
8
+
9
9
  <link type="text/css" rel="stylesheet" href="/__middleman/assets/meta.css">
10
10
  <link type="text/css" rel="stylesheet" href="/__middleman/assets/sitemap.css">
11
11
  <script src="/__middleman/assets/jquery-1.8.2.min.js"></script>
12
12
  <script src="/__middleman/assets/jquery.details-1.6.min.js"></script>
13
13
  <script src="/__middleman/assets/sitemap.js"></script>
14
14
  </head>
15
-
15
+
16
16
  <body>
17
17
  <div class="container">
18
18
  <article id="main">
@@ -20,7 +20,7 @@
20
20
  <h1>Middleman Sitemap</h1>
21
21
 
22
22
  <p>This page shows all of the pages in
23
- the <a href="http://middlemanapp.com/advanced/sitemap/">sitemap</a>,
23
+ <a href="http://middlemanapp.com/advanced/sitemap/">the sitemap</a>,
24
24
  Middleman's view of your site.</p>
25
25
 
26
26
  <%= sitemap_tree.render %>
@@ -28,4 +28,3 @@
28
28
  </div>
29
29
  </body>
30
30
  </html>
31
-
@@ -133,10 +133,12 @@ module Middleman
133
133
  @webrick.stop
134
134
  else
135
135
  added_and_modified.each do |path|
136
+ next if app.files.ignored?(path)
136
137
  app.files.did_change(path)
137
138
  end
138
139
 
139
140
  removed.each do |path|
141
+ next if app.files.ignored?(path)
140
142
  app.files.did_delete(path)
141
143
  end
142
144
  end
@@ -164,9 +166,10 @@ module Middleman
164
166
  # @return [void]
165
167
  def setup_webrick(is_logging)
166
168
  http_opts = {
167
- :BindAddress => host,
168
- :Port => port,
169
- :AccessLog => []
169
+ :BindAddress => host,
170
+ :Port => port,
171
+ :AccessLog => [],
172
+ :DoNotReverseLookup => true
170
173
  }
171
174
 
172
175
  if is_logging
@@ -7,30 +7,28 @@ module Middleman
7
7
 
8
8
  # once registered
9
9
  def registered(app)
10
- # Setup a default ERb engine
11
- app.config.define_setting :erb_engine, :erb, 'The engine to use for rendering ERb templates'
12
- app.config.define_setting :erb_engine_prefix, ::Tilt, 'The parent module for ERb template engines'
13
-
14
10
  app.before_configuration do
15
11
  template_extensions :erb => :html
16
12
  end
17
13
 
18
14
  # After config
19
15
  app.after_configuration do
20
- # Find the user's prefered engine
21
- # Convert symbols to classes
22
- if config[:erb_engine].is_a? Symbol
23
- engine = engine.to_s
24
- engine = engine == 'erb' ? 'ERB' : engine.camelize
25
- config[:erb_engine] = config[:erb_engine_prefix].const_get("#{engine}Template")
26
- end
27
-
28
- # Tell Tilt to use the preferred engine
29
- ::Tilt.prefer(config[:erb_engine])
16
+ ::Tilt.prefer(Template, :erb)
30
17
  end
31
18
  end
32
19
  alias :included :registered
33
20
  end
21
+
22
+ class Template < ::Tilt::ErubisTemplate
23
+ ##
24
+ # In preamble we need a flag `__in_erb_template` and SafeBuffer for padrino apps.
25
+ #
26
+ def precompiled_preamble(locals)
27
+ original = super
28
+ "__in_erb_template = true\n" << original
29
+ #.rpartition("\n").first << "#{@outvar} = _buf = ActiveSupport::SafeBuffer.new\n"
30
+ end
31
+ end
34
32
  end
35
33
  end
36
34
  end
@@ -1,6 +1,16 @@
1
1
  # Require gem
2
2
  require 'haml'
3
3
 
4
+ module SafeTemplate
5
+ def render(*)
6
+ super.html_safe
7
+ end
8
+ end
9
+
10
+ class Tilt::HamlTemplate
11
+ include SafeTemplate
12
+ end
13
+
4
14
  module Middleman
5
15
  module Renderers
6
16
 
@@ -49,7 +49,11 @@ module Middleman
49
49
  ::Tilt.prefer(markdown_engine_klass, *markdown_exts)
50
50
  end
51
51
  rescue LoadError
52
- logger.warn "Requested Markdown engine (#{config[:markdown_engine]}) not found. Maybe the gem needs to be installed and required?"
52
+ # If they just left it at the default engine and don't happen to have it,
53
+ # then they're using middleman-core bare and we shouldn't bother them.
54
+ if config.setting(:markdown_engine).value_set?
55
+ logger.warn "Requested Markdown engine (#{config[:markdown_engine]}) not found. Maybe the gem needs to be installed and required?"
56
+ end
53
57
  end
54
58
  end
55
59
  end
@@ -14,10 +14,6 @@ module Middleman
14
14
  # Default sass options
15
15
  app.config.define_setting :sass, {}, 'Sass engine options'
16
16
 
17
- # Location of SASS .sass-cache directory.
18
- # @return [String]
19
- app.config.define_setting :sass_cache_path, File.join(app.root_path, '.sass-cache'), 'Location of sass cache' # runtime compile of path
20
-
21
17
  app.before_configuration do
22
18
  template_extensions :scss => :css,
23
19
  :sass => :css
@@ -1,6 +1,20 @@
1
1
  # Load gem
2
2
  require 'slim'
3
3
 
4
+ module SafeTemplate
5
+ def render(*)
6
+ super.html_safe
7
+ end
8
+ end
9
+
10
+ class Slim::Template
11
+ include SafeTemplate
12
+
13
+ def precompiled_preamble(locals)
14
+ "__in_slim_template = true\n" << super
15
+ end
16
+ end
17
+
4
18
  module Middleman
5
19
  module Renderers
6
20
 
@@ -29,10 +43,9 @@ module Middleman
29
43
  :context => self
30
44
  }
31
45
 
32
- slim_embedded = defined?(::Slim::Embedded) ? ::Slim::Embedded : ::Slim::EmbeddedEngine
33
-
46
+ ::Slim::Embedded::SassEngine.disable_option_validator!
34
47
  %w(sass scss markdown).each do |engine|
35
- slim_embedded.default_options[engine.to_sym] = context_hack
48
+ ::Slim::Embedded.default_options[engine.to_sym] = context_hack
36
49
  end
37
50
  end
38
51
  end
@@ -111,7 +111,7 @@ module Middleman
111
111
 
112
112
  relative_source = Pathname(source_file).relative_path_from(Pathname(app.root))
113
113
 
114
- instrument 'render.resource', :path => relative_source do
114
+ instrument 'render.resource', :path => relative_source, :destination_path => destination_path do
115
115
  md = metadata.dup
116
116
  opts = md[:options].deep_merge(opts)
117
117
 
@@ -3,10 +3,11 @@ MIDDLEMAN_BIN_PATH = File.join(MIDDLEMAN_ROOT_PATH, 'bin')
3
3
  ENV['PATH'] = "#{MIDDLEMAN_BIN_PATH}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
4
4
 
5
5
  require 'aruba/cucumber'
6
+ require 'aruba/jruby'
6
7
  require 'middleman-core/step_definitions/middleman_steps'
7
8
  require 'middleman-core/step_definitions/builder_steps'
8
9
  require 'middleman-core/step_definitions/server_steps'
9
10
 
10
11
  Before do
11
- @aruba_timeout_seconds = 30
12
+ @aruba_timeout_seconds = RUBY_PLATFORM == 'java' ? 120 : 60
12
13
  end
@@ -96,7 +96,9 @@ require 'middleman-core/templates/mobile'
96
96
  require 'middleman-more/templates/smacss'
97
97
 
98
98
  # Local templates
99
- require 'middleman-core/templates/local'
99
+ if ENV['HOME'] # Sometimes HOME doesn't exist, in which case there's no point to local templates
100
+ require 'middleman-core/templates/local'
101
+ end
100
102
 
101
103
  # Barebones template
102
104
  require 'middleman-core/templates/empty'
@@ -8,4 +8,7 @@ gem "middleman", "~><%= Middleman::VERSION %>"
8
8
  gem "middleman-livereload", "~> 3.1.0"
9
9
 
10
10
  # For faster file watcher updates on Windows:
11
- gem "wdm", "~> 0.1.0", :platforms => [:mswin, :mingw]
11
+ gem "wdm", "~> 0.1.0", :platforms => [:mswin, :mingw]
12
+
13
+ # Windows does not come with time zone data
14
+ gem "tzinfo-data", platforms: [:mswin, :mingw]
@@ -36,7 +36,9 @@
36
36
  # activate :automatic_image_sizes
37
37
 
38
38
  # Reload the browser automatically whenever files change
39
- # activate :livereload
39
+ # configure :development do
40
+ # activate :livereload
41
+ # end
40
42
 
41
43
  # Methods defined in the helpers block are available in templates
42
44
  # helpers do
@@ -10,8 +10,9 @@
10
10
  # Ignore the build directory
11
11
  /build
12
12
 
13
- # Ignore Sass' cache
13
+ # Ignore cache
14
14
  /.sass-cache
15
+ /.cache
15
16
 
16
17
  # Ignore .DS_store file
17
18
  .DS_Store
@@ -28,7 +28,7 @@ module Middleman
28
28
  return false if Tilt.registered?(ext.sub('.', ''))
29
29
 
30
30
  dot_ext = (ext.to_s[0] == ?.) ? ext.dup : ".#{ext}"
31
-
31
+
32
32
  if mime = ::Rack::Mime.mime_type(dot_ext, nil)
33
33
  !nonbinary_mime?(mime)
34
34
  else
@@ -113,21 +113,27 @@ module Middleman
113
113
  end
114
114
  end
115
115
 
116
- # Get a recusive list of files inside a set of paths.
116
+ # Get a recusive list of files inside a path.
117
117
  # Works with symlinks.
118
118
  #
119
- # @param paths Some paths string or Pathname
120
- # @return [Array] An array of filenames
121
- def all_files_under(*paths)
122
- paths.flat_map do |p|
123
- path = Pathname(p)
124
-
125
- if path.directory?
126
- all_files_under(*path.children)
127
- elsif path.file?
128
- path
129
- end
130
- end.compact
119
+ # @param path Some path string or Pathname
120
+ # @param ignore A proc/block that returns true if a given path should be ignored - if a path
121
+ # is ignored, nothing below it will be searched either.
122
+ # @return [Array<Pathname>] An array of Pathnames for each file (no directories)
123
+ def all_files_under(path, &ignore)
124
+ path = Pathname(path)
125
+
126
+ return [] if ignore && ignore.call(path)
127
+
128
+ if path.directory?
129
+ path.children.flat_map do |child|
130
+ all_files_under(child, &ignore)
131
+ end.compact
132
+ elsif path.file?
133
+ [path]
134
+ else
135
+ []
136
+ end
131
137
  end
132
138
 
133
139
  # Given a source path (referenced either absolutely or relatively)
@@ -248,7 +254,7 @@ module Middleman
248
254
  s.each_byte do |c|
249
255
  return true if binary_bytes.include?(c)
250
256
  end
251
-
257
+
252
258
  false
253
259
  end
254
260
 
@@ -278,4 +284,4 @@ module Middleman
278
284
  end
279
285
  end
280
286
  end
281
- end
287
+ end