middleman 0.12.0.pre3 → 0.12.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (297) hide show
  1. data/Gemfile +2 -0
  2. data/VERSION +1 -1
  3. data/lib/middleman.rb +0 -0
  4. data/lib/middleman/base.rb +1 -0
  5. data/lib/middleman/builder.rb +0 -0
  6. data/lib/middleman/features/automatic_image_sizes.rb +0 -0
  7. data/lib/middleman/features/minify_javascript.rb +0 -0
  8. data/lib/middleman/features/relative_assets.rb +0 -0
  9. data/lib/middleman/features/smush_pngs.rb +0 -0
  10. data/lib/middleman/rack/static.rb +0 -0
  11. data/lib/middleman/sass.rb +2 -0
  12. data/lib/middleman/template/views/layout.haml +0 -0
  13. data/lib/middleman/template/views/stylesheets/site.css.sass +0 -0
  14. data/lib/middleman/vendor/bin/compass +1 -1
  15. data/lib/middleman/vendor/bin/css2sass +1 -1
  16. data/lib/middleman/vendor/bin/edit_json.rb +2 -2
  17. data/lib/middleman/vendor/bin/haml +1 -1
  18. data/lib/middleman/vendor/bin/html2haml +1 -1
  19. data/lib/middleman/vendor/bin/htmldiff +1 -1
  20. data/lib/middleman/vendor/bin/launchy +1 -1
  21. data/lib/middleman/vendor/bin/ldiff +1 -1
  22. data/lib/middleman/vendor/bin/prettify_json.rb +2 -2
  23. data/lib/middleman/vendor/bin/rackup +1 -1
  24. data/lib/middleman/vendor/bin/rake +1 -1
  25. data/lib/middleman/vendor/bin/sass +1 -1
  26. data/lib/middleman/vendor/bin/shotgun +1 -1
  27. data/lib/middleman/vendor/bin/smusher +1 -1
  28. data/lib/middleman/vendor/bin/sprocketize +1 -1
  29. data/lib/middleman/vendor/gems/cache/compass-colors-0.3.1.gem +0 -0
  30. data/lib/middleman/vendor/gems/cache/configuration-1.1.0.gem +0 -0
  31. data/lib/middleman/vendor/gems/cache/diff-lcs-1.1.2.gem +0 -0
  32. data/lib/middleman/vendor/gems/cache/extlib-0.9.13.gem +0 -0
  33. data/lib/middleman/vendor/gems/cache/extlib-0.9.14.gem +0 -0
  34. data/lib/middleman/vendor/gems/cache/fancy-buttons-0.3.6.gem +0 -0
  35. data/lib/middleman/vendor/gems/cache/highline-1.5.1.gem +0 -0
  36. data/lib/middleman/vendor/gems/cache/launchy-0.3.3.gem +0 -0
  37. data/lib/middleman/vendor/gems/cache/rack-1.0.1.gem +0 -0
  38. data/lib/middleman/vendor/gems/cache/rake-0.8.7.gem +0 -0
  39. data/lib/middleman/vendor/gems/cache/shotgun-0.4.gem +0 -0
  40. data/lib/middleman/vendor/gems/cache/sinatra-0.9.4.gem +0 -0
  41. data/lib/middleman/vendor/gems/cache/sprockets-1.0.2.gem +0 -0
  42. data/lib/middleman/vendor/gems/cache/templater-1.0.0.gem +0 -0
  43. data/lib/middleman/vendor/gems/environment.rb +60 -52
  44. data/lib/middleman/vendor/gems/gems/compass-0.10.0.pre2/examples/css3/extensions/fancy-fonts/templates/project/Vtks Revolt.ttf b/data/lib/middleman/vendor/gems/gems/compass-0.10.0.pre2/examples/css3/extensions/fancy-fonts/templates/project/Vtks → Revolt.ttf +0 -0
  45. data/lib/middleman/vendor/gems/gems/compass-0.10.0.pre2/examples/css3/extensions/fancy-fonts/templates/project/angelina.ttf +0 -0
  46. data/lib/middleman/vendor/gems/gems/compass-0.10.0.pre2/lib/compass/frameworks/blueprint/templates/buttons/buttons/cross.png +0 -0
  47. data/lib/middleman/vendor/gems/gems/compass-0.10.0.pre2/lib/compass/frameworks/blueprint/templates/buttons/buttons/key.png +0 -0
  48. data/lib/middleman/vendor/gems/gems/compass-0.10.0.pre2/lib/compass/frameworks/blueprint/templates/buttons/buttons/tick.png +0 -0
  49. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/README.markdown +50 -0
  50. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/Rakefile +26 -0
  51. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/VERSION.yml +5 -0
  52. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/example/config.rb +13 -0
  53. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/example/split_compliment_example.html +38 -0
  54. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/example/src/_split_compliment_theme.sass +28 -0
  55. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/example/src/screen.sass +40 -0
  56. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/lib/compass-colors.rb +9 -0
  57. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/lib/compass-colors/compass_extension.rb +7 -0
  58. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/lib/compass-colors/hsl.rb +109 -0
  59. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/lib/compass-colors/sass_extensions.rb +112 -0
  60. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/spec/approximate_color_matching.rb +43 -0
  61. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/spec/sass_extensions_spec.rb +54 -0
  62. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/analogous/_theme.sass +28 -0
  63. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/analogous/manifest.rb +1 -0
  64. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/basic/_theme.sass +7 -0
  65. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/basic/manifest.rb +1 -0
  66. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/complementary/_theme.sass +20 -0
  67. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/complementary/manifest.rb +1 -0
  68. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/split_complement/_theme.sass +28 -0
  69. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/split_complement/manifest.rb +1 -0
  70. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/triadic/_theme.sass +28 -0
  71. data/lib/middleman/vendor/gems/gems/compass-colors-0.3.1/templates/triadic/manifest.rb +1 -0
  72. data/lib/middleman/vendor/gems/gems/compass-slickmap-0.2.3/lib/slickmap.rb +0 -0
  73. data/lib/middleman/vendor/gems/gems/compass-slickmap-0.2.3/lib/slickmap/compass_plugin.rb +0 -0
  74. data/lib/middleman/vendor/gems/gems/compass-slickmap-0.2.3/templates/project/manifest.rb +0 -0
  75. data/lib/middleman/vendor/gems/gems/compass-slickmap-0.2.3/templates/project/sitemap.sass +0 -0
  76. data/lib/middleman/vendor/gems/gems/configuration-1.1.0/README +0 -0
  77. data/lib/middleman/vendor/gems/gems/configuration-1.1.0/README.erb +0 -0
  78. data/lib/middleman/vendor/gems/gems/configuration-1.1.0/Rakefile +0 -0
  79. data/lib/middleman/vendor/gems/gems/diff-lcs-1.1.2/Install +0 -0
  80. data/lib/middleman/vendor/gems/gems/diff-lcs-1.1.2/README +0 -0
  81. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/.autotest +21 -0
  82. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/.document +5 -0
  83. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/.gitignore +22 -0
  84. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/LICENSE +1 -1
  85. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/README.rdoc +17 -0
  86. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/Rakefile +28 -0
  87. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/VERSION +1 -0
  88. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/extlib.gemspec +146 -0
  89. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib.rb +0 -0
  90. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/array.rb +0 -0
  91. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/assertions.rb +0 -0
  92. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/blank.rb +0 -0
  93. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/boolean.rb +0 -0
  94. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/byte_array.rb +0 -0
  95. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/class.rb +8 -8
  96. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/datetime.rb +0 -0
  97. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/dictionary.rb +0 -0
  98. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/hash.rb +7 -7
  99. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/hook.rb +0 -0
  100. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/inflection.rb +11 -5
  101. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/lazy_array.rb +26 -32
  102. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/lazy_module.rb +0 -0
  103. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/logger.rb +0 -0
  104. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/mash.rb +11 -11
  105. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/module.rb +0 -0
  106. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/nil.rb +0 -0
  107. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/numeric.rb +0 -0
  108. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/object.rb +9 -9
  109. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/object_space.rb +1 -1
  110. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/pathname.rb +0 -0
  111. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/pooling.rb +0 -0
  112. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/rubygems.rb +1 -1
  113. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/simple_set.rb +0 -0
  114. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/string.rb +4 -3
  115. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/struct.rb +0 -0
  116. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/symbol.rb +0 -0
  117. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/time.rb +0 -0
  118. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/lib/extlib/virtual_file.rb +0 -0
  119. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/array_spec.rb +0 -0
  120. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/blank_spec.rb +0 -0
  121. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/byte_array_spec.rb +0 -0
  122. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/class_spec.rb +0 -0
  123. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/datetime_spec.rb +0 -0
  124. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/hash_spec.rb +0 -0
  125. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/hook_spec.rb +0 -0
  126. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/inflection/plural_spec.rb +0 -0
  127. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/inflection/singular_spec.rb +0 -0
  128. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/inflection_extras_spec.rb +18 -1
  129. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/lazy_array_spec.rb +25 -0
  130. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/lazy_module_spec.rb +0 -0
  131. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/mash_spec.rb +0 -0
  132. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/module_spec.rb +0 -0
  133. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/object_space_spec.rb +0 -0
  134. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/object_spec.rb +0 -0
  135. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/pooling_spec.rb +0 -0
  136. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/spec/rcov.opts +6 -0
  137. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/simple_set_spec.rb +0 -0
  138. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/spec.opts +1 -0
  139. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/spec_helper.rb +0 -0
  140. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/string_spec.rb +1 -0
  141. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/struct_spec.rb +0 -0
  142. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/symbol_spec.rb +0 -0
  143. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/time_spec.rb +0 -0
  144. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/try_call_spec.rb +0 -0
  145. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/try_dup_spec.rb +0 -0
  146. data/lib/middleman/vendor/gems/gems/{extlib-0.9.13 → extlib-0.9.14}/spec/virtual_file_spec.rb +0 -0
  147. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/tasks/ci.rake +1 -0
  148. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/tasks/metrics.rake +36 -0
  149. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/tasks/spec.rake +25 -0
  150. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/tasks/yard.rake +9 -0
  151. data/lib/middleman/vendor/gems/gems/extlib-0.9.14/tasks/yardstick.rake +19 -0
  152. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/README.markdown +44 -0
  153. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/Rakefile +22 -0
  154. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/fancy-buttons.gemspec +54 -0
  155. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/lib/fancy-buttons.rb +3 -0
  156. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/lib/sass/_fancy_buttons.sass +159 -0
  157. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/lib/sass/_fancy_gradient.sass +28 -0
  158. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/lib/templates/project/button_bg.png +0 -0
  159. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/lib/templates/project/buttons.sass +57 -0
  160. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/lib/templates/project/index.html +31 -0
  161. data/lib/middleman/vendor/gems/gems/fancy-buttons-0.3.6/lib/templates/project/manifest.rb +3 -0
  162. data/lib/middleman/vendor/gems/gems/haml-2.2.15/test/benchmark.rb +0 -0
  163. data/lib/middleman/vendor/gems/gems/haml-2.2.15/test/sass/engine_test.rb +0 -0
  164. data/lib/middleman/vendor/gems/gems/highline-1.5.1/INSTALL +0 -0
  165. data/lib/middleman/vendor/gems/gems/highline-1.5.1/LICENSE +0 -0
  166. data/lib/middleman/vendor/gems/gems/highline-1.5.1/README +0 -0
  167. data/lib/middleman/vendor/gems/gems/highline-1.5.1/TODO +0 -0
  168. data/lib/middleman/vendor/gems/gems/json-1.2.0/benchmarks/generator_benchmark.rb +0 -0
  169. data/lib/middleman/vendor/gems/gems/json-1.2.0/benchmarks/parser_benchmark.rb +0 -0
  170. data/lib/middleman/vendor/gems/gems/json-1.2.0/ext/json/ext/generator.bundle +0 -0
  171. data/lib/middleman/vendor/gems/gems/json-1.2.0/ext/json/ext/generator/generator.bundle +0 -0
  172. data/lib/middleman/vendor/gems/gems/json-1.2.0/ext/json/ext/parser.bundle +0 -0
  173. data/lib/middleman/vendor/gems/gems/json-1.2.0/ext/json/ext/parser/parser.bundle +0 -0
  174. data/lib/middleman/vendor/gems/gems/json-1.2.0/install.rb +0 -0
  175. data/lib/middleman/vendor/gems/gems/json-1.2.0/tests/test_json.rb +0 -0
  176. data/lib/middleman/vendor/gems/gems/json-1.2.0/tests/test_json_addition.rb +0 -0
  177. data/lib/middleman/vendor/gems/gems/json-1.2.0/tests/test_json_fixtures.rb +0 -0
  178. data/lib/middleman/vendor/gems/gems/json-1.2.0/tests/test_json_generate.rb +0 -0
  179. data/lib/middleman/vendor/gems/gems/json-1.2.0/tests/test_json_rails.rb +0 -0
  180. data/lib/middleman/vendor/gems/gems/json-1.2.0/tests/test_json_unicode.rb +0 -0
  181. data/lib/middleman/vendor/gems/gems/json-1.2.0/tools/fuzz.rb +0 -0
  182. data/lib/middleman/vendor/gems/gems/json-1.2.0/tools/server.rb +0 -0
  183. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/benchmarks/generator_benchmark.rb +0 -0
  184. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/benchmarks/parser_benchmark.rb +0 -0
  185. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/install.rb +0 -0
  186. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tests/test_json.rb +0 -0
  187. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tests/test_json_addition.rb +0 -0
  188. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tests/test_json_fixtures.rb +0 -0
  189. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tests/test_json_generate.rb +0 -0
  190. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tests/test_json_rails.rb +0 -0
  191. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tests/test_json_unicode.rb +0 -0
  192. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tools/fuzz.rb +0 -0
  193. data/lib/middleman/vendor/gems/gems/json_pure-1.2.0/tools/server.rb +0 -0
  194. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/HISTORY +0 -0
  195. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/LICENSE +0 -0
  196. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/README +0 -0
  197. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/Rakefile +0 -0
  198. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/gemspec.rb +0 -0
  199. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/lib/launchy.rb +0 -0
  200. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/tasks/config.rb +0 -0
  201. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/tasks/rspec.rake +0 -0
  202. data/lib/middleman/vendor/gems/gems/launchy-0.3.3/tasks/utils.rb +0 -0
  203. data/lib/middleman/vendor/gems/gems/rack-1.0.1/COPYING +0 -0
  204. data/lib/middleman/vendor/gems/gems/rack-1.0.1/KNOWN-ISSUES +0 -0
  205. data/lib/middleman/vendor/gems/gems/rack-1.0.1/RDOX +0 -0
  206. data/lib/middleman/vendor/gems/gems/rack-1.0.1/README +0 -0
  207. data/lib/middleman/vendor/gems/gems/rack-1.0.1/Rakefile +0 -0
  208. data/lib/middleman/vendor/gems/gems/rack-1.0.1/SPEC +0 -0
  209. data/lib/middleman/vendor/gems/gems/rack-1.0.1/example/lobster.ru +0 -0
  210. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack.rb +0 -0
  211. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/builder.rb +0 -0
  212. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/cascade.rb +0 -0
  213. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/chunked.rb +0 -0
  214. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/deflater.rb +0 -0
  215. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/file.rb +0 -0
  216. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/handler.rb +0 -0
  217. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/head.rb +0 -0
  218. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/lint.rb +0 -0
  219. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/lobster.rb +0 -0
  220. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/lock.rb +0 -0
  221. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/mime.rb +0 -0
  222. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/mock.rb +0 -0
  223. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/request.rb +0 -0
  224. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/static.rb +0 -0
  225. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/urlmap.rb +0 -0
  226. data/lib/middleman/vendor/gems/gems/rack-1.0.1/lib/rack/utils.rb +0 -0
  227. data/lib/middleman/vendor/gems/gems/rack-1.0.1/rack.gemspec +0 -0
  228. data/lib/middleman/vendor/gems/gems/rack-1.0.1/test/multipart/ie +0 -0
  229. data/lib/middleman/vendor/gems/gems/rack-1.0.1/test/multipart/none +0 -0
  230. data/lib/middleman/vendor/gems/gems/rack-1.0.1/test/multipart/text +0 -0
  231. data/lib/middleman/vendor/gems/gems/rack-1.0.1/test/testrequest.rb +0 -0
  232. data/lib/middleman/vendor/gems/gems/rake-0.8.7/CHANGES +0 -0
  233. data/lib/middleman/vendor/gems/gems/rake-0.8.7/MIT-LICENSE +0 -0
  234. data/lib/middleman/vendor/gems/gems/rake-0.8.7/README +0 -0
  235. data/lib/middleman/vendor/gems/gems/rake-0.8.7/Rakefile +0 -0
  236. data/lib/middleman/vendor/gems/gems/rake-0.8.7/TODO +0 -0
  237. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/example/a.c +0 -0
  238. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/example/b.c +0 -0
  239. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/example/main.c +0 -0
  240. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/glossary.rdoc +0 -0
  241. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/jamis.rb +0 -0
  242. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/proto_rake.rdoc +0 -0
  243. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/rake.1.gz +0 -0
  244. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/rakefile.rdoc +0 -0
  245. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/rational.rdoc +0 -0
  246. data/lib/middleman/vendor/gems/gems/rake-0.8.7/doc/release_notes/rake-0.7.3.rdoc +0 -0
  247. data/lib/middleman/vendor/gems/gems/rake-0.8.7/install.rb +0 -0
  248. data/lib/middleman/vendor/gems/gems/rake-0.8.7/lib/rake/clean.rb +0 -0
  249. data/lib/middleman/vendor/gems/gems/rake-0.8.7/lib/rake/ruby182_test_unit_fix.rb +0 -0
  250. data/lib/middleman/vendor/gems/gems/rake-0.8.7/lib/rake/runtest.rb +0 -0
  251. data/lib/middleman/vendor/gems/gems/rake-0.8.7/lib/rake/tasklib.rb +0 -0
  252. data/lib/middleman/vendor/gems/gems/rake-0.8.7/lib/rake/win32.rb +0 -0
  253. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/data/sample.mf +0 -0
  254. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/filecreation.rb +0 -0
  255. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/functional.rb +0 -0
  256. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/reqfile.rb +0 -0
  257. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/reqfile2.rb +0 -0
  258. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/test_clean.rb +0 -0
  259. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/test_ftp.rb +0 -0
  260. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/test_rake.rb +0 -0
  261. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/test_rules.rb +0 -0
  262. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/test_tasks.rb +0 -0
  263. data/lib/middleman/vendor/gems/gems/rake-0.8.7/test/test_win32.rb +0 -0
  264. data/lib/middleman/vendor/gems/gems/shotgun-0.4/COPYING +0 -0
  265. data/lib/middleman/vendor/gems/gems/shotgun-0.4/README +0 -0
  266. data/lib/middleman/vendor/gems/gems/shotgun-0.4/Rakefile +0 -0
  267. data/lib/middleman/vendor/gems/gems/shotgun-0.4/lib/shotgun.rb +0 -0
  268. data/lib/middleman/vendor/gems/gems/shotgun-0.4/shotgun.gemspec +0 -0
  269. data/lib/middleman/vendor/gems/gems/sinatra-0.9.4/AUTHORS +0 -0
  270. data/lib/middleman/vendor/gems/gems/sinatra-0.9.4/CHANGES +0 -0
  271. data/lib/middleman/vendor/gems/gems/sinatra-0.9.4/LICENSE +0 -0
  272. data/lib/middleman/vendor/gems/gems/sinatra-0.9.4/Rakefile +0 -0
  273. data/lib/middleman/vendor/gems/gems/sprockets-1.0.2/ext/nph-sprockets.cgi +0 -0
  274. data/lib/middleman/vendor/gems/gems/templater-1.0.0/script/console +0 -0
  275. data/lib/middleman/vendor/gems/gems/templater-1.0.0/script/destroy +0 -0
  276. data/lib/middleman/vendor/gems/gems/templater-1.0.0/script/generate +0 -0
  277. data/lib/middleman/vendor/gems/gems/yui-compressor-0.9.1/vendor/yuicompressor-2.4.2.jar +0 -0
  278. data/lib/middleman/vendor/gems/specifications/compass-colors-0.3.1.gemspec +33 -0
  279. data/lib/middleman/vendor/gems/specifications/extlib-0.9.14.gemspec +40 -0
  280. data/lib/middleman/vendor/gems/specifications/fancy-buttons-0.3.6.gemspec +38 -0
  281. data/lib/middleman/vendor/gems/specifications/rack-1.0.1.gemspec +0 -0
  282. data/lib/middleman/vendor/gems/specifications/rake-0.8.7.gemspec +0 -0
  283. data/lib/middleman/vendor/gems/specifications/shotgun-0.4.gemspec +0 -0
  284. data/middleman.gemspec +115 -70
  285. data/spec/builder_spec.rb +0 -0
  286. data/spec/fixtures/sample/init.rb +0 -0
  287. data/spec/fixtures/sample/views/cache-buster.html.haml +0 -0
  288. data/spec/fixtures/sample/views/layout.haml +0 -0
  289. data/spec/helpers_spec.rb +0 -0
  290. data/spec/spec_helper.rb +0 -0
  291. metadata +114 -68
  292. data/lib/middleman/vendor/gems/gems/extlib-0.9.13/History.txt +0 -77
  293. data/lib/middleman/vendor/gems/gems/extlib-0.9.13/README +0 -0
  294. data/lib/middleman/vendor/gems/gems/extlib-0.9.13/Rakefile +0 -180
  295. data/lib/middleman/vendor/gems/gems/extlib-0.9.13/lib/extlib/tasks/release.rb +0 -15
  296. data/lib/middleman/vendor/gems/gems/extlib-0.9.13/lib/extlib/version.rb +0 -3
  297. data/lib/middleman/vendor/gems/specifications/extlib-0.9.13.gemspec +0 -28
@@ -0,0 +1,38 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html>
4
+ <head>
5
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8">
6
+ <title>Color Example</title>
7
+ <link rel="stylesheet" href="stylesheets/screen.css" type="text/css" media="screen" charset="utf-8">
8
+ </head>
9
+ <body id="split-compliment">
10
+ <div class="base">
11
+ <div class="lighter">
12
+ &nbsp;
13
+ </div>
14
+ <div class="darker">
15
+ &nbsp;
16
+ </div>
17
+ &nbsp;
18
+ </div>
19
+ <div class="complement-support">
20
+ <div class="lighter">
21
+ &nbsp;
22
+ </div>
23
+ <div class="darker">
24
+ &nbsp;
25
+ </div>
26
+ &nbsp;
27
+ </div>
28
+ <div class="complement-accent">
29
+ <div class="lighter">
30
+ &nbsp;
31
+ </div>
32
+ <div class="darker">
33
+ &nbsp;
34
+ </div>
35
+ &nbsp;
36
+ </div>
37
+ </body>
38
+ </html>
@@ -0,0 +1,28 @@
1
+ // In theory the lightness and saturation values of corresponding colors should not change.
2
+ // In reality, these values should be adjusted to create a more pleasant color combination.
3
+ // There is not any mathematical formula for this, but you can use the lighten, darken,
4
+ // saturate and desaturate functions to adjust your main colors.
5
+ !base_color ||= red
6
+ !complement_support_color = adjust_hue(!base_color, 180 + 30)
7
+ !complement_accent_color = adjust_hue(!base_color, 180 - 30)
8
+
9
+ !base_dark_color = darken(!base_color, 25)
10
+ !base_darker_color = darken(!base_color, 50)
11
+ !base_darkest_color = darken(!base_color, 75)
12
+ !base_light_color = lighten(!base_color, 25)
13
+ !base_lighter_color = lighten(!base_color, 50)
14
+ !base_lightest_color = lighten(!base_color, 75)
15
+
16
+ !dark_complement_support_color = darken(!complement_support_color, 25)
17
+ !darker_complement_support_color = darken(!complement_support_color, 50)
18
+ !darkest_complement_support_color = darken(!complement_support_color, 75)
19
+ !light_complement_support_color = lighten(!complement_support_color, 25)
20
+ !lighter_complement_support_color = lighten(!complement_support_color, 50)
21
+ !lightest_complement_support_color = lighten(!complement_support_color, 75)
22
+
23
+ !dark_complement_accent_color = darken(!complement_accent_color, 25)
24
+ !darker_complement_accent_color = darken(!complement_accent_color, 50)
25
+ !darkest_complement_accent_color = darken(!complement_accent_color, 75)
26
+ !light_complement_accent_color = lighten(!complement_accent_color, 25)
27
+ !lighter_complement_accent_color = lighten(!complement_accent_color, 50)
28
+ !lightest_complement_accent_color = lighten(!complement_accent_color, 75)
@@ -0,0 +1,40 @@
1
+ @import compass/utilities.sass
2
+ // We can change the theme color here by pre-setting the !base_color
3
+ !base_color = #614DA3
4
+ @import split_compliment_theme.sass
5
+
6
+ html
7
+ :height 100%
8
+
9
+ body#split-compliment
10
+ :margin 0
11
+ :height 100%
12
+ .base
13
+ :background-color = !base_color
14
+ .darker
15
+ :background-color = !base_dark_color
16
+ .lighter
17
+ :background-color = !base_light_color
18
+ .complement-support
19
+ :background-color = !complement_support_color
20
+ .darker
21
+ :background-color = !dark_complement_support_color
22
+ .lighter
23
+ :background-color = !light_complement_support_color
24
+ .complement-accent
25
+ :background-color = !complement_accent_color
26
+ .darker
27
+ :background-color = !dark_complement_accent_color
28
+ .lighter
29
+ :background-color = !light_complement_accent_color
30
+ .base, .complement-support, .complement-accent
31
+ +clearfix
32
+ :height 33%
33
+ div
34
+ :height 100%
35
+ .darker
36
+ :float left
37
+ .lighter
38
+ :float right
39
+ .darker, .lighter
40
+ :width 33%
@@ -0,0 +1,9 @@
1
+ require 'compass'
2
+
3
+ module Compass
4
+ module Colors
5
+ end
6
+ end
7
+ require File.join(File.dirname(__FILE__), 'compass-colors', 'hsl')
8
+ require File.join(File.dirname(__FILE__), 'compass-colors', 'compass_extension')
9
+ require File.join(File.dirname(__FILE__), 'compass-colors', 'sass_extensions')
@@ -0,0 +1,7 @@
1
+ if defined?(Compass)
2
+ options = Hash.new
3
+ options[:stylesheets_directory] = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'sass'))
4
+ options[:templates_directory] = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'templates'))
5
+
6
+ Compass::Frameworks.register('colors', options)
7
+ end
@@ -0,0 +1,109 @@
1
+ module Compass
2
+ module Colors
3
+ class HSL
4
+
5
+ # Stored in degrees [0, 360)
6
+ attr_reader :h
7
+ # Stored as a number from [0,1]
8
+ attr_reader :s, :l
9
+
10
+ def self.from_color(color)
11
+ rgb = color.respond_to?(:rgb) ? color.rgb : color.value
12
+ from_rgb(*rgb)
13
+ end
14
+
15
+ def self.from_rgb(r, g, b)
16
+ rgb = [r,g,b]
17
+ rgb.map!{|c| c / 255.0}
18
+ min_rgb = rgb.min
19
+ max_rgb = rgb.max
20
+ delta = max_rgb - min_rgb
21
+
22
+ lightness = (max_rgb + min_rgb) / 2.0
23
+
24
+ if delta < 1e-5
25
+ hue = 0
26
+ saturation = 0
27
+ else
28
+ saturation = if ( lightness < 0.5 )
29
+ delta / ( max_rgb + min_rgb )
30
+ else
31
+ delta / ( 2 - max_rgb - min_rgb )
32
+ end
33
+
34
+ deltas = rgb.map{|c| (((max_rgb - c) / 6.0) + (delta / 2.0)) / delta}
35
+
36
+ hue = if (rgb[0] - max_rgb).abs < 1e-5
37
+ deltas[2] - deltas[1]
38
+ elsif (rgb[1] - max_rgb).abs < 1e-5
39
+ ( 1.0 / 3.0 ) + deltas[0] - deltas[2]
40
+ else
41
+ ( 2.0 / 3.0 ) + deltas[1] - deltas[0]
42
+ end
43
+ hue += 1 if hue < 0
44
+ hue -= 1 if hue > 1
45
+ end
46
+ from_fractions(hue, saturation, lightness)
47
+ end
48
+
49
+ def self.from_fractions(hue, saturation, lightness)
50
+ HSL.new(360 * hue, saturation, lightness)
51
+ end
52
+
53
+ def initialize(h, s, l)
54
+ self.h = h
55
+ self.s = s
56
+ self.l = l
57
+ end
58
+
59
+ def to_color
60
+ m2 = l <= 0.5 ? l * (s + 1) : l + s - l * s
61
+ m1 = l * 2 - m2
62
+ Sass::Script::Color.new([hue_to_rgb(m1, m2, hp + 1.0/3),
63
+ hue_to_rgb(m1, m2, hp),
64
+ hue_to_rgb(m1, m2, hp - 1.0/3)].map { |c| (c * 0xff).round })
65
+ end
66
+
67
+ def h=(hue)
68
+ @h = hue % 360
69
+ end
70
+
71
+ def s=(saturation)
72
+ @s = if saturation < 0
73
+ 0.0
74
+ elsif saturation > 1
75
+ 1.0
76
+ else
77
+ saturation
78
+ end
79
+ end
80
+
81
+ def l=(lightness)
82
+ @l = if lightness < 0
83
+ 0.0
84
+ elsif lightness > 1
85
+ 1.0
86
+ else
87
+ lightness
88
+ end
89
+ end
90
+
91
+ private
92
+ #hue as a percentage
93
+ def hp
94
+ h / 360.0
95
+ end
96
+ # helper for making rgb
97
+ def hue_to_rgb(m1, m2, h)
98
+ h += 1 if h < 0
99
+ h -= 1 if h > 1
100
+ return m1 + (m2 - m1) * h * 6 if h * 6 < 1
101
+ return m2 if h * 2 < 1
102
+ return m1 + (m2 - m1) * (2.0/3 - h) * 6 if h * 3 < 2
103
+ return m1
104
+ end
105
+
106
+ end
107
+ end
108
+ end
109
+
@@ -0,0 +1,112 @@
1
+ require 'sass'
2
+
3
+ module Sass::Script::Functions
4
+ module Colors
5
+ extend self
6
+ def rgb_value(color)
7
+ if color.respond_to?(:rgb)
8
+ color.rgb
9
+ else
10
+ color.value
11
+ end
12
+ end
13
+ end
14
+ # Takes a color object and amount by which to lighten it (0 to 100).
15
+ def lighten(color, amount)
16
+ hsl = Compass::Colors::HSL.from_color(color)
17
+ hsl.l += amount.value / 100.0
18
+ hsl.to_color
19
+ end
20
+
21
+ # Takes a color object and percent by which to lighten it (0 to 100).
22
+ def lighten_percent(color, amount)
23
+ hsl = Compass::Colors::HSL.from_color(color)
24
+ hsl.l += (1 - hsl.l) * (amount.value / 100.0)
25
+ hsl.to_color
26
+ end
27
+
28
+ # Takes a color object and amount by which to darken it (0 to 100).
29
+ def darken(color, amount)
30
+ hsl = Compass::Colors::HSL.from_color(color)
31
+ hsl.l -= amount.value / 100.0
32
+ hsl.to_color
33
+ end
34
+
35
+ # Takes a color object and percent by which to darken it (0 to 100).
36
+ def darken_percent(color, amount)
37
+ hsl = Compass::Colors::HSL.from_color(color)
38
+ hsl.l *= 1.0 - (amount.value / 100.0)
39
+ hsl.to_color
40
+ end
41
+
42
+ # Saturate (make a color "richer") a color by the given amount (0 to 100)
43
+ def saturate(color, amount)
44
+ hsl = Compass::Colors::HSL.from_color(color)
45
+ hsl.s += amount.value / 100.0
46
+ hsl.to_color
47
+ end
48
+
49
+ # Saturate (make a color "richer") a color by the given percent (0 to 100)
50
+ def saturate_percent(color, amount)
51
+ hsl = Compass::Colors::HSL.from_color(color)
52
+ hsl.s += (1 - hsl.s) * (amount.value / 100.0)
53
+ hsl.to_color
54
+ end
55
+
56
+ # Desaturate (make a color "grayer") a color by the given amount (0 to 100)
57
+ def desaturate(color, amount)
58
+ hsl = Compass::Colors::HSL.from_color(color)
59
+ hsl.s -= amount.value / 100.0
60
+ hsl.to_color
61
+ end
62
+
63
+ # Desaturate (make a color "grayer") a color by the given percent (0 to 100)
64
+ def desaturate_percent(color, amount)
65
+ hsl = Compass::Colors::HSL.from_color(color)
66
+ hsl.s *= (1.0 - (amount.value / 100.0))
67
+ hsl.to_color
68
+ end
69
+
70
+ # Return the hue of a color as a number between 0 and 360
71
+ def hue(color)
72
+ Sass::Script::Number.new(Compass::Colors::HSL.from_color(color).h.round)
73
+ end
74
+
75
+ # Return the saturation of a color as a number between 0 and 100
76
+ def saturation(color)
77
+ Sass::Script::Number.new((Compass::Colors::HSL.from_color(color).s * 100).round)
78
+ end
79
+
80
+ # Return the luminosity of a color as a number between 0 and 100
81
+ def luminosity(color)
82
+ Sass::Script::Number.new((Compass::Colors::HSL.from_color(color).l * 100).round)
83
+ end
84
+ alias lightness luminosity
85
+
86
+ # Mixes two colors by some amount (0 to 100). Defaults to 50.
87
+ def mix(color1, color2, amount = nil)
88
+ percent = amount ? amount.value.round / 100.0 : 0.5
89
+ new_colors = Colors.rgb_value(color1).zip(Colors.rgb_value(color2)).map{|c1, c2| (c1 * percent) + (c2 * (1 - percent))}
90
+ Sass::Script::Color.new(new_colors)
91
+ end
92
+
93
+ # Returns the grayscale equivalent color for the given color
94
+ def grayscale(color)
95
+ hsl = Compass::Colors::HSL.from_color(color)
96
+ g = (hsl.l * 255).round
97
+ Sass::Script::Color.new([g, g, g])
98
+ end
99
+
100
+ # adjust the hue of a color by the given number of degrees.
101
+ def adjust_hue(color, degrees)
102
+ hsl = Compass::Colors::HSL.from_color(color)
103
+ degrees = degrees.value.to_f.round if degrees.is_a?(Sass::Script::Literal)
104
+ hsl.h += degrees
105
+ hsl.to_color
106
+ end
107
+
108
+ def complement(color)
109
+ adjust_hue color, 180
110
+ end
111
+
112
+ end
@@ -0,0 +1,43 @@
1
+ module BeApproximatelyTheSameColorAsMatcher
2
+ class BeApproximatelyTheSameColorAs
3
+ def initialize(expected)
4
+ @expected = expected
5
+ end
6
+
7
+ def matches?(target)
8
+ @target = target
9
+ @target.rgb.zip(@expected.rgb).all?{|e,t| (e-t).abs <= 1}
10
+ end
11
+
12
+ def failure_message
13
+ "expected <#{to_string(@target)}> to " +
14
+ "be approximately the same as <#{to_string(@expected)}>"
15
+ end
16
+
17
+ def negative_failure_message
18
+ "expected <#{to_string(@target)}> not to " +
19
+ "be approximately the same as <#{to_string(@expected)}>"
20
+ end
21
+
22
+ # Returns string representation of an object.
23
+ def to_string(value)
24
+ # indicate a nil
25
+ if value.nil?
26
+ 'nil'
27
+ end
28
+
29
+ # join arrays
30
+ if value.class == Array
31
+ return value.join(", ")
32
+ end
33
+
34
+ # otherwise return to_s() instead of inspect()
35
+ return value.to_s
36
+ end
37
+ end
38
+
39
+ # Actual matcher that is exposed.
40
+ def be_approximately_the_same_color_as(expected)
41
+ BeApproximatelyTheSameColorAs.new(expected)
42
+ end
43
+ end
@@ -0,0 +1,54 @@
1
+ $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+
3
+ require File.join(File.dirname(__FILE__), 'approximate_color_matching')
4
+
5
+ Spec::Runner.configure do |config|
6
+ config.include(BeApproximatelyTheSameColorAsMatcher)
7
+ end
8
+
9
+ require 'compass-colors'
10
+
11
+ describe "sass extensions" do
12
+ it "should lighten red into pink" do
13
+ pink = invoke(:lighten, color(255,0,0), number(25))
14
+ pink.should be_approximately_the_same_color_as(color(255,127,127))
15
+ end
16
+
17
+ it "should lighten red into pink (percentage)" do
18
+ pink = invoke(:lighten_percent, color(255,0,0), number(50))
19
+ pink.should be_approximately_the_same_color_as(color(255,127,127))
20
+ end
21
+
22
+ it "should darken red into maroon" do
23
+ maroon = invoke(:darken, color(255,0,0), number(25))
24
+ maroon.should be_approximately_the_same_color_as(color(127,0,0))
25
+ end
26
+
27
+ it "should darken red into maroon (percentage)" do
28
+ maroon = invoke(:darken_percent, color(255,0,0), number(50))
29
+ maroon.should be_approximately_the_same_color_as(color(127,0,0))
30
+ end
31
+
32
+ it "should darken white into gray and back again" do
33
+ darker = invoke(:darken, color(0xff, 0xff, 0xff), number(50))
34
+ lighter_again = invoke(:lighten, darker, number(100))
35
+ color(0xff, 0xff, 0xff).should be_approximately_the_same_color_as(lighter_again)
36
+ end
37
+
38
+ it "shouldn't saturate fully saturated colors" do
39
+ saturated = invoke(:saturate, color(0, 127, 127), number(50))
40
+ saturated.should be_approximately_the_same_color_as(color(0, 127, 127))
41
+ end
42
+
43
+ def invoke(name, *args)
44
+ Sass::Script::Functions::EvaluationContext.new({}).send(name, *args)
45
+ end
46
+
47
+ def color(r,g,b)
48
+ Sass::Script::Color.new([r,g,b])
49
+ end
50
+
51
+ def number(num)
52
+ Sass::Script::Number.new(num)
53
+ end
54
+ end