middleman-core 3.1.0.rc.2 → 3.1.0.rc.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (232) hide show
  1. checksums.yaml +4 -4
  2. data/.simplecov +2 -1
  3. data/features/capture_html.feature +18 -0
  4. data/features/content_for.feature +3 -3
  5. data/features/v4_extension_callbacks.feature +8 -0
  6. data/fixtures/capture-html-app/config.rb +7 -0
  7. data/fixtures/capture-html-app/source/capture_html_erb.html.erb +5 -0
  8. data/fixtures/capture-html-app/source/capture_html_haml.html.haml +4 -0
  9. data/fixtures/capture-html-app/source/capture_html_slim.html.slim +4 -0
  10. data/fixtures/capture-html-app/source/layouts/capture_html.erb +4 -0
  11. data/fixtures/content-for-app/source/content_for_erb.html.erb +1 -1
  12. data/fixtures/content-for-app/source/content_for_haml.html.haml +1 -1
  13. data/fixtures/content-for-app/source/content_for_slim.html.slim +2 -1
  14. data/fixtures/v4-extension-callbacks/config.rb +26 -0
  15. data/fixtures/v4-extension-callbacks/source/index.html.erb +2 -0
  16. data/lib/middleman-core/core_extensions/extensions.rb +6 -1
  17. data/lib/middleman-core/core_extensions/file_watcher.rb +1 -0
  18. data/lib/middleman-core/core_extensions/rendering.rb +1 -2
  19. data/lib/middleman-core/core_extensions/request.rb +2 -2
  20. data/lib/middleman-core/extensions.rb +21 -0
  21. data/lib/middleman-core/meta_pages/sitemap_resource.rb +4 -1
  22. data/lib/middleman-core/version.rb +1 -1
  23. data/lib/middleman-more/core_extensions/default_helpers.rb +17 -3
  24. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/.document +0 -0
  25. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/.gitignore +0 -0
  26. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/.yardopts +0 -0
  27. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/LICENSE.txt +0 -0
  28. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/README.rdoc +0 -0
  29. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/Rakefile +0 -0
  30. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/bin/padrino +0 -0
  31. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core.rb +58 -4
  32. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/application.rb +40 -16
  33. data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/flash.rb +229 -0
  34. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/application/rendering.rb +39 -11
  35. data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/rendering/extensions/erubis.rb +55 -0
  36. data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/rendering/extensions/haml.rb +26 -0
  37. data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/rendering/extensions/slim.rb +14 -0
  38. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/application/routing.rb +133 -37
  39. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/application/showexceptions.rb +0 -0
  40. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/caller.rb +0 -0
  41. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/cli/adapter.rb +0 -0
  42. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/cli/base.rb +41 -38
  43. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/cli/console.rb +0 -0
  44. data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/cli/rake.rb +47 -0
  45. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/cli/rake_tasks.rb +9 -14
  46. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/command.rb +0 -0
  47. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/images/404.png +0 -0
  48. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/images/500.png +0 -0
  49. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/loader.rb +23 -9
  50. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/cs.yml +0 -0
  51. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/da.yml +0 -0
  52. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/de.yml +6 -6
  53. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/en.yml +0 -0
  54. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/es.yml +0 -0
  55. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/fr.yml +1 -1
  56. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/hu.yml +0 -0
  57. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/it.yml +0 -0
  58. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/ja.yml +0 -0
  59. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/lv.yml +0 -0
  60. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/nl.yml +0 -0
  61. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/no.yml +0 -0
  62. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/pl.yml +0 -0
  63. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/pt_br.yml +0 -0
  64. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/ro.yml +0 -0
  65. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/ru.yml +1 -1
  66. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/sv.yml +0 -0
  67. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/tr.yml +0 -0
  68. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/uk.yml +0 -0
  69. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/zh_cn.yml +11 -11
  70. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/locale/zh_tw.yml +0 -0
  71. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/logger.rb +48 -32
  72. data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/module.rb +58 -0
  73. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/mounter.rb +15 -5
  74. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/reloader.rb +139 -52
  75. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/router.rb +0 -0
  76. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/server.rb +5 -5
  77. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/support_lite.rb +59 -6
  78. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/tasks.rb +0 -0
  79. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/lib/padrino-core/version.rb +1 -1
  80. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/padrino-core.gemspec +10 -5
  81. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/fixtures/app_gem/Gemfile +4 -0
  82. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/fixtures/app_gem/app/app.rb +3 -0
  83. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/fixtures/app_gem/app_gem.gemspec +17 -0
  84. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/fixtures/app_gem/lib/app_gem.rb +7 -0
  85. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/fixtures/app_gem/lib/app_gem/version.rb +3 -0
  86. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/apps/.components +0 -0
  87. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/apps/.gitignore +0 -0
  88. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/apps/complex.rb +0 -0
  89. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/apps/simple.rb +0 -0
  90. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/dependencies/a.rb +0 -0
  91. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/dependencies/b.rb +0 -0
  92. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/dependencies/c.rb +0 -0
  93. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/dependencies/circular/e.rb +0 -0
  94. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/dependencies/circular/f.rb +0 -0
  95. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/dependencies/circular/g.rb +0 -0
  96. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/fixtures/dependencies/d.rb +0 -0
  97. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/helper.rb +0 -0
  98. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/mini_shoulda.rb +2 -2
  99. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_application.rb +38 -21
  100. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_core.rb +0 -0
  101. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/test_csrf_protection.rb +80 -0
  102. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_dependencies.rb +0 -0
  103. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_filters.rb +70 -0
  104. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/test_flash.rb +168 -0
  105. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_locale.rb +0 -0
  106. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_logger.rb +27 -0
  107. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_mounter.rb +24 -2
  108. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_reloader_complex.rb +0 -0
  109. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_reloader_simple.rb +4 -4
  110. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_rendering.rb +75 -4
  111. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_restful_routing.rb +0 -0
  112. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_router.rb +0 -0
  113. data/lib/vendored-middleman-deps/{padrino-core-0.10.7 → padrino-core-0.11.2}/test/test_routing.rb +209 -35
  114. data/lib/vendored-middleman-deps/padrino-core-0.11.2/test/test_support_lite.rb +56 -0
  115. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/.document +0 -0
  116. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/.gitignore +0 -0
  117. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/.yardopts +0 -0
  118. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/LICENSE.txt +0 -0
  119. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/README.rdoc +0 -0
  120. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/Rakefile +0 -0
  121. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers.rb +2 -1
  122. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/asset_tag_helpers.rb +58 -66
  123. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/lib/padrino-helpers/breadcrumb_helpers.rb +171 -0
  124. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/form_builder/abstract_form_builder.rb +84 -26
  125. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/form_builder/standard_form_builder.rb +0 -0
  126. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/form_helpers.rb +94 -19
  127. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/format_helpers.rb +9 -5
  128. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/cs.yml +0 -0
  129. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/da.yml +0 -0
  130. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/de.yml +0 -0
  131. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/en.yml +0 -0
  132. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/es.yml +0 -0
  133. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/fr.yml +12 -12
  134. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/hu.yml +0 -0
  135. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/it.yml +0 -0
  136. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/ja.yml +0 -0
  137. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/lv.yml +0 -0
  138. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/nl.yml +0 -0
  139. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/no.yml +0 -0
  140. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/pl.yml +0 -0
  141. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/pt_br.yml +2 -2
  142. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/ro.yml +0 -0
  143. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/ru.yml +0 -0
  144. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/sv.yml +0 -0
  145. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/tr.yml +0 -0
  146. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/uk.yml +0 -0
  147. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/zh_cn.yml +13 -14
  148. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/locale/zh_tw.yml +0 -0
  149. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/number_helpers.rb +0 -0
  150. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/output_helpers.rb +45 -5
  151. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/output_helpers/abstract_handler.rb +0 -0
  152. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/output_helpers/erb_handler.rb +3 -3
  153. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/output_helpers/haml_handler.rb +0 -0
  154. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/output_helpers/slim_handler.rb +6 -7
  155. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/render_helpers.rb +2 -2
  156. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/tag_helpers.rb +34 -6
  157. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/lib/padrino-helpers/translation_helpers.rb +0 -0
  158. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/padrino-helpers.gemspec +0 -0
  159. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/app.rb +13 -6
  160. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/capture_concat.erb +2 -2
  161. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/capture_concat.haml +2 -2
  162. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/capture_concat.slim +4 -5
  163. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/content_for.erb +0 -0
  164. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/content_for.haml +0 -0
  165. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/content_for.slim +4 -4
  166. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/content_tag.erb +0 -0
  167. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/content_tag.haml +0 -0
  168. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/content_tag.slim +9 -0
  169. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/current_engine.erb +0 -0
  170. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/current_engine.haml +1 -1
  171. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/current_engine.slim +0 -0
  172. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/fields_for.erb +0 -0
  173. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/fields_for.haml +0 -0
  174. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/fields_for.slim +15 -0
  175. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/form_for.erb +0 -0
  176. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/form_for.haml +0 -0
  177. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/form_for.slim +59 -0
  178. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/form_tag.erb +0 -0
  179. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/form_tag.haml +0 -0
  180. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/form_tag.slim +70 -0
  181. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/link_to.erb +0 -0
  182. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/link_to.haml +0 -0
  183. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/link_to.slim +4 -0
  184. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/mail_to.erb +0 -0
  185. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/mail_to.haml +0 -0
  186. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/mail_to.slim +3 -0
  187. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/meta_tag.erb +0 -0
  188. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/meta_tag.haml +0 -0
  189. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/meta_tag.slim +3 -0
  190. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/partials/_erb.erb +0 -0
  191. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/partials/_haml.haml +0 -0
  192. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/partials/_slim.slim +1 -0
  193. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/simple_partial.erb +0 -0
  194. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/markup_app/views/simple_partial.haml +0 -0
  195. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/markup_app/views/simple_partial.slim +1 -0
  196. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/app.rb +7 -0
  197. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/current_engine.haml +0 -0
  198. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/current_engines/_erb.erb +0 -0
  199. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/current_engines/_haml.haml +0 -0
  200. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/current_engines/_slim.slim +0 -0
  201. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/render_app/views/double_capture_erb.erb +3 -0
  202. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/render_app/views/double_capture_haml.haml +2 -0
  203. data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/test/fixtures/render_app/views/double_capture_slim.slim +2 -0
  204. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/erb/test.erb +0 -0
  205. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/explicit_engine.haml +0 -0
  206. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/haml/test.haml +0 -0
  207. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/template/_user.haml +0 -0
  208. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/template/haml_template.haml +0 -0
  209. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/fixtures/render_app/views/template/some_template.haml +0 -0
  210. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/helper.rb +1 -0
  211. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_asset_tag_helpers.rb +24 -5
  212. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_form_builder.rb +41 -1
  213. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_form_helpers.rb +36 -0
  214. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_format_helpers.rb +14 -0
  215. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_locale.rb +0 -0
  216. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_number_helpers.rb +0 -0
  217. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_output_helpers.rb +5 -3
  218. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_render_helpers.rb +18 -0
  219. data/lib/vendored-middleman-deps/{padrino-helpers-0.10.7 → padrino-helpers-0.11.2}/test/test_tag_helpers.rb +11 -0
  220. data/middleman-core.gemspec +1 -1
  221. metadata +218 -184
  222. data/lib/vendored-middleman-deps/padrino-core-0.10.7/lib/padrino-core/cli/rake.rb +0 -25
  223. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/content_tag.slim +0 -9
  224. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/fields_for.slim +0 -15
  225. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/form_for.slim +0 -59
  226. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/form_tag.slim +0 -70
  227. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/link_to.slim +0 -4
  228. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/mail_to.slim +0 -3
  229. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/meta_tag.slim +0 -3
  230. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/partials/_slim.slim +0 -1
  231. data/lib/vendored-middleman-deps/padrino-helpers-0.10.7/test/fixtures/markup_app/views/simple_partial.slim +0 -1
  232. data/spec/middleman-core/sitemap_spec.rb +0 -0
@@ -17,8 +17,8 @@ pt_br:
17
17
  format: "%u%n"
18
18
  unit: "R$"
19
19
  # These three are to override number.format and are optional
20
- separator: "."
21
- delimiter: ","
20
+ separator: ","
21
+ delimiter: "."
22
22
  precision: 2
23
23
 
24
24
  # Used in number_to_percentage()
@@ -14,8 +14,8 @@ zh_cn:
14
14
  currency:
15
15
  format:
16
16
  # Where is the currency sign? %u is the currency unit, %n the number (default: $5.00)
17
- format: "%u %n"
18
- unit: ""
17
+ format: "%u%n"
18
+ unit: "RMB"
19
19
  # These three are to override number.format and are optional
20
20
  separator: "."
21
21
  delimiter: ","
@@ -50,12 +50,12 @@ zh_cn:
50
50
  format: "%n %u"
51
51
  units:
52
52
  byte:
53
- one: "Byte"
54
- other: "Bytes"
55
- kb: "KB"
56
- mb: "MB"
57
- gb: "GB"
58
- tb: "TB"
53
+ one: "字节"
54
+ other: "字节"
55
+ kb: "K"
56
+ mb: ""
57
+ gb: "G"
58
+ tb: "T"
59
59
 
60
60
  # Used in distance_of_time_in_words(), distance_of_time_in_words_to_now(), time_ago_in_words()
61
61
  datetime:
@@ -92,13 +92,12 @@ zh_cn:
92
92
  one: "一年多"
93
93
  other: "%{count} 年多"
94
94
  almost_x_years:
95
- one: "接近一年"
96
- other: "接近 %{count} 年"
95
+ one: "已经一年"
96
+ other: "已经 %{count} 年"
97
97
  models:
98
98
  errors:
99
99
  template:
100
100
  header:
101
- one: "有1 个错误发生使得「%{model}」无法被储存。 "
102
- other: "有%{count} 个错误发生使得「%{model}」无法被储存。 "
103
- body: "以下栏位发生问题:"
104
-
101
+ one: "%{model} 保存时产生错误"
102
+ other: "%{model} 保存时产生了 %{count} 个错误"
103
+ body: "下列字段产生错误:"
@@ -26,6 +26,8 @@ module Padrino
26
26
  ##
27
27
  # Captures the html from a block of template code for any available handler.
28
28
  #
29
+ # Be aware that trusting the html is up to the caller.
30
+ #
29
31
  # @param [Object] *args
30
32
  # Objects yield to the captured block
31
33
  # @param [Proc] &block
@@ -37,15 +39,21 @@ module Padrino
37
39
  # capture_html(&block) => "...html..."
38
40
  # capture_html(object_for_block, &block) => "...html..."
39
41
  #
42
+ # @example
43
+ # ActiveSupport::SafeBuffer.new + capture_html { "<foo>" }
44
+ # # => "&lt;foo&gt;"
45
+ # ActiveSupport::SafeBuffer.safe_concat + capture_html { "<foo>" }
46
+ # # => "<foo>"
47
+ #
40
48
  # @api semipublic
41
49
  def capture_html(*args, &block)
42
50
  handler = find_proper_handler
43
- captured_html = ""
51
+ captured_block, captured_html = nil, ""
44
52
  if handler && handler.is_type? && handler.block_is_type?(block)
45
- captured_html = handler.capture_from_template(*args, &block)
53
+ captured_html, captured_block = handler.capture_from_template(*args, &block)
46
54
  end
47
55
  # invoking the block directly if there was no template
48
- captured_html = block_given? && block.call(*args) if captured_html.blank?
56
+ captured_html = block_given? && ( captured_block || block.call(*args) ) if captured_html.blank?
49
57
  captured_html
50
58
  end
51
59
  alias :capture :capture_html
@@ -53,7 +61,9 @@ module Padrino
53
61
  ##
54
62
  # Outputs the given text to the templates buffer directly.
55
63
  #
56
- # @param [String] text
64
+ # The output might be subject to escaping, if it is not marked as safe.
65
+ #
66
+ # @param [String,SafeBuffer] text
57
67
  # Text to concatenate to the buffer.
58
68
  #
59
69
  # @example
@@ -70,6 +80,21 @@ module Padrino
70
80
  end
71
81
  alias :concat :concat_content
72
82
 
83
+ ##
84
+ # Outputs the given text to the templates buffer directly,
85
+ # assuming that it is safe.
86
+ #
87
+ # @param [String] text
88
+ # Text to concatenate to the buffer.
89
+ #
90
+ # @example
91
+ # concat_safe_content("This will be output to the template buffer")
92
+ #
93
+ # @api semipublic
94
+ def concat_safe_content(text="")
95
+ concat_content text.html_safe
96
+ end
97
+
73
98
  ##
74
99
  # Returns true if the block is from a supported template type; false otherwise.
75
100
  # Used to determine if html should be returned or concatenated to the view.
@@ -146,7 +171,7 @@ module Padrino
146
171
  def yield_content(key, *args)
147
172
  blocks = content_blocks[key.to_sym]
148
173
  return nil if blocks.empty?
149
- blocks.map { |content| capture_html(*args, &content) }.join
174
+ mark_safe(blocks.map { |content| capture_html(*args, &content) }.join)
150
175
  end
151
176
 
152
177
  protected
@@ -170,6 +195,21 @@ module Padrino
170
195
  def find_proper_handler
171
196
  OutputHelpers.handlers.map { |h| h.new(self) }.find { |h| h.engines.include?(current_engine) && h.is_type? }
172
197
  end
198
+
199
+ ##
200
+ # Marks a String or a collection of Strings as safe. `nil` is accepted
201
+ # but ignored.
202
+ #
203
+ # @param [String, Array<String>] the values to be marked safe.
204
+ #
205
+ # @return [ActiveSupport::SafeBuffer, Array<ActiveSupport::SafeBuffer>]
206
+ def mark_safe(value)
207
+ if value.respond_to? :map!
208
+ value.map!{|v| v.html_safe if v }
209
+ else
210
+ value.html_safe if value
211
+ end
212
+ end
173
213
  end # OutputHelpers
174
214
  end # Helpers
175
215
  end # Padrino
@@ -28,11 +28,11 @@ module Padrino
28
28
  # @handler.capture_from_template(&block) => "...html..."
29
29
  #
30
30
  def capture_from_template(*args, &block)
31
- self.output_buffer, _buf_was = "", self.output_buffer
32
- block.call(*args)
31
+ self.output_buffer, _buf_was = ActiveSupport::SafeBuffer.new, self.output_buffer
32
+ captured_block = block.call(*args)
33
33
  ret = eval("@_out_buf", block.binding)
34
34
  self.output_buffer = _buf_was
35
- ret
35
+ [ ret, captured_block ]
36
36
  end
37
37
 
38
38
  ##
@@ -1,5 +1,4 @@
1
1
  # Make slim works with sinatra/padrino
2
- Slim::Engine.set_default_options(:buffer => '@_out_buf', :generator => Temple::Generators::StringBuffer) if defined?(Slim)
3
2
 
4
3
  module Padrino
5
4
  module Helpers
@@ -31,11 +30,11 @@ module Padrino
31
30
  # @handler.capture_from_template(&block) => "...html..."
32
31
  #
33
32
  def capture_from_template(*args, &block)
34
- self.output_buffer, _buf_was = '', self.output_buffer
35
- block.call(*args)
36
- ret = eval('@_out_buf', block.binding)
33
+ self.output_buffer, _buf_was = ActiveSupport::SafeBuffer.new, self.output_buffer
34
+ captured_block = block.call(*args)
35
+ ret = eval("@_out_buf", block.binding)
37
36
  self.output_buffer = _buf_was
38
- ret
37
+ [ ret, captured_block ]
39
38
  end
40
39
 
41
40
  ##
@@ -73,9 +72,9 @@ module Padrino
73
72
  def output_buffer=(val)
74
73
  template.instance_variable_set(:@_out_buf, val)
75
74
  end
76
- end # SlimHandler
75
+ end # SlimHandler
77
76
 
78
- OutputHelpers.register(SlimHandler)
77
+ OutputHelpers.register(SlimHandler)
79
78
  end # OutputHelpers
80
79
  end # Helpers
81
80
  end # Padrino
@@ -46,12 +46,12 @@ module Padrino
46
46
  counter += 1
47
47
  options[:locals].merge!(object_name => member, "#{object_name}_counter".to_sym => counter)
48
48
  render(explicit_engine, template_path, options.dup)
49
- }.join("\n")
49
+ }.join("\n").html_safe
50
50
  else
51
51
  if member = options.delete(:object)
52
52
  options[:locals].merge!(object_name => member)
53
53
  end
54
- render(explicit_engine, template_path, options.dup)
54
+ render(explicit_engine, template_path, options.dup).html_safe
55
55
  end
56
56
  end
57
57
  alias :render_partial :partial
@@ -13,6 +13,12 @@ module Padrino
13
13
  '"' => "&quot;"
14
14
  }
15
15
 
16
+ ##
17
+ # Cached Regexp for escaping values to avoid rebuilding one
18
+ # on every escape operation.
19
+ #
20
+ ESCAPE_REGEXP = Regexp.union(*ESCAPE_VALUES.keys)
21
+
16
22
  BOOLEAN_ATTRIBUTES = [
17
23
  :autoplay,
18
24
  :autofocus,
@@ -42,6 +48,12 @@ module Padrino
42
48
  :confirm
43
49
  ]
44
50
 
51
+ ##
52
+ # A html_safe newline string to avoid allocating a new on each
53
+ # concatenation.
54
+ #
55
+ NEWLINE = "\n".html_safe.freeze
56
+
45
57
  ##
46
58
  # Creates an HTML tag with given name, content, and options
47
59
  #
@@ -104,14 +116,30 @@ module Padrino
104
116
  content = capture_html(&block)
105
117
  end
106
118
 
107
- content = content.join("\n") if content.respond_to?(:join)
108
-
109
119
  options = parse_data_options(name, options)
110
120
  attributes = tag_attributes(options)
111
- output = "<#{name}#{attributes}>#{content}</#{name}>"
121
+ output = ActiveSupport::SafeBuffer.new
122
+ output.safe_concat "<#{name}#{attributes}>"
123
+ if content.respond_to?(:each) && !content.is_a?(String)
124
+ content.each { |c| output.concat c; output.safe_concat NEWLINE }
125
+ else
126
+ output.concat content
127
+ end
128
+ output.safe_concat "</#{name}>"
129
+
112
130
  block_is_template?(block) ? concat_content(output) : output
113
131
  end
114
132
 
133
+ ##
134
+ # Like #content_tag, but assumes its input to be safe and doesn't
135
+ # escape. It also returns safe html.
136
+ #
137
+ # @see #content_tag
138
+ #
139
+ def safe_content_tag(name, content = nil, options = nil, &block)
140
+ mark_safe(content_tag(name, mark_safe(content), options, &block))
141
+ end
142
+
115
143
  ##
116
144
  # Creates an HTML input field with the given type and options
117
145
  #
@@ -185,7 +213,7 @@ module Padrino
185
213
  #
186
214
  # @example
187
215
  # tag :hr, :class => 'dotted'
188
- # # => <hr class="dotted">
216
+ # # => <hr class="dotted" />
189
217
  #
190
218
  # tag :input, :name => 'username', :type => :text
191
219
  # # => <input name="username" type="text" />
@@ -200,7 +228,7 @@ module Padrino
200
228
  def tag(name, options = nil, open = false)
201
229
  options = parse_data_options(name, options)
202
230
  attributes = tag_attributes(options)
203
- "<#{name}#{attributes}#{open ? '>' : ' />'}"
231
+ "<#{name}#{attributes}#{open ? '>' : ' />'}".html_safe
204
232
  end
205
233
 
206
234
  private
@@ -226,7 +254,7 @@ module Padrino
226
254
  # Escape tag values to their HTML/XML entities.
227
255
  ##
228
256
  def escape_value(string)
229
- string.to_s.gsub(Regexp.union(*ESCAPE_VALUES.keys)) { |c| ESCAPE_VALUES[c] }
257
+ string.to_s.gsub(ESCAPE_REGEXP) { |c| ESCAPE_VALUES[c] }
230
258
  end
231
259
 
232
260
  ##
@@ -2,12 +2,19 @@ require 'sinatra/base'
2
2
  require 'haml'
3
3
  require 'erubis'
4
4
  require 'slim'
5
+ require 'padrino-core/application/rendering/extensions/erubis'
6
+ require 'padrino-core/application/rendering/extensions/haml'
7
+ require 'padrino-core/application/rendering/extensions/slim'
5
8
 
6
9
  class MarkupDemo < Sinatra::Base
7
10
  register Padrino::Helpers
8
11
 
9
12
  configure do
10
13
  set :root, File.dirname(__FILE__)
14
+ set :erb, :engine_class => Padrino::Erubis::SafeBufferTemplate
15
+ set :haml, :escape_html => true
16
+ set :slim, :generator => Temple::Generators::RailsOutputBuffer,
17
+ :buffer => "out_buf"
11
18
  end
12
19
 
13
20
  get '/:engine/:file' do
@@ -23,19 +30,19 @@ class MarkupDemo < Sinatra::Base
23
30
 
24
31
  def captured_content(&block)
25
32
  content_html = capture_html(&block)
26
- "<p>#{content_html}</p>"
33
+ "<p>#{content_html}</p>".html_safe
27
34
  end
28
35
 
29
36
  def concat_in_p(content_html)
30
- concat_content "<p>#{content_html}</p>"
37
+ concat_safe_content "<p>#{content_html}</p>"
31
38
  end
32
39
 
33
- def determine_block_is_template(name, &block)
34
- concat_content "<p class='is_template'>The #{name} block passed in is a template</p>" if block_is_template?(block)
40
+ def concat_if_block_is_template(name, &block)
41
+ concat_safe_content "<p class='is_template'>The #{name} block passed in is a template</p>" if block_is_template?(block)
35
42
  end
36
43
 
37
- def ruby_not_template_block
38
- determine_block_is_template('ruby') do
44
+ def concat_ruby_not_template_block
45
+ concat_if_block_is_template('ruby') do
39
46
  content_tag(:span, "This not a template block")
40
47
  end
41
48
  end
@@ -6,9 +6,9 @@
6
6
 
7
7
  <% concat_in_p('Concat Line 3') %>
8
8
 
9
- <% determine_block_is_template('erb') do %>
9
+ <% concat_if_block_is_template('erb') do %>
10
10
  <span>This is erb</span>
11
11
  <span>This is erb</span>
12
12
  <% end %>
13
13
 
14
- <% ruby_not_template_block %>
14
+ <% concat_ruby_not_template_block %>
@@ -5,8 +5,8 @@
5
5
 
6
6
  - concat_in_p('Concat Line 3')
7
7
 
8
- - determine_block_is_template('haml') do
8
+ - concat_if_block_is_template('haml') do
9
9
  %span This is haml
10
10
  %span This is haml
11
11
 
12
- - ruby_not_template_block
12
+ - concat_ruby_not_template_block
@@ -1,13 +1,12 @@
1
1
  - @content = captured_content do
2
2
  span Captured Line 1
3
3
  span Captured Line 2
4
+ = @content
4
5
 
5
- == @content
6
+ - concat_in_p('Concat Line 3')
6
7
 
7
- - determine_block_is_template('slim') do
8
+ - concat_if_block_is_template('slim') do
8
9
  span This is slim
9
10
  span This is slim
10
11
 
11
- == concat_in_p('Concat Line 3')
12
-
13
- == ruby_not_template_block
12
+ - concat_ruby_not_template_block