compass-sourcemaps 0.12.3.sourcemaps.a4836f1 → 0.12.4.sourcemaps.a4836f1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (495) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.markdown +29 -29
  3. data/README.markdown +39 -39
  4. data/Rakefile +157 -157
  5. data/VERSION.yml +5 -5
  6. data/bin/compass +45 -45
  7. data/examples/README.markdown +3 -3
  8. data/examples/blueprint_default/config.rb +7 -7
  9. data/examples/blueprint_default/index.html.haml +85 -85
  10. data/examples/blueprint_default/parts/elements.html.haml +282 -282
  11. data/examples/blueprint_default/parts/forms.html.haml +200 -200
  12. data/examples/blueprint_default/parts/grid.html.haml +274 -274
  13. data/examples/blueprint_default/src/ie.scss +3 -3
  14. data/examples/blueprint_default/src/print.scss +3 -3
  15. data/examples/blueprint_default/src/screen.scss +9 -9
  16. data/examples/blueprint_plugins/config.rb +8 -8
  17. data/examples/blueprint_plugins/index.html.haml +96 -96
  18. data/examples/blueprint_plugins/plugins/buttons.html.haml +67 -67
  19. data/examples/blueprint_plugins/plugins/fancy_type.html.haml +100 -100
  20. data/examples/blueprint_plugins/plugins/link_icons.html.haml +61 -61
  21. data/examples/blueprint_plugins/plugins/rtl.html.haml +100 -100
  22. data/examples/blueprint_plugins/src/buttons.scss +47 -47
  23. data/examples/blueprint_plugins/src/ie.scss +3 -3
  24. data/examples/blueprint_plugins/src/link_icons.scss +13 -13
  25. data/examples/blueprint_plugins/src/print.scss +3 -3
  26. data/examples/blueprint_plugins/src/rtl_screen.scss +15 -15
  27. data/examples/blueprint_plugins/src/screen.scss +12 -12
  28. data/examples/blueprint_scoped/src/ie.scss +4 -4
  29. data/examples/blueprint_scoped/src/print.scss +4 -4
  30. data/examples/blueprint_scoped/src/screen.scss +5 -5
  31. data/examples/blueprint_scoped_form/src/ie.scss +3 -3
  32. data/examples/blueprint_scoped_form/src/print.scss +3 -3
  33. data/examples/blueprint_scoped_form/src/screen.scss +15 -15
  34. data/examples/blueprint_semantic/config.rb +7 -7
  35. data/examples/blueprint_semantic/index.html.haml +86 -86
  36. data/examples/blueprint_semantic/parts/fancy_type.html.haml +100 -100
  37. data/examples/blueprint_semantic/parts/liquid.html.haml +100 -100
  38. data/examples/blueprint_semantic/src/ie.scss +3 -3
  39. data/examples/blueprint_semantic/src/liquid.scss +69 -69
  40. data/examples/blueprint_semantic/src/print.scss +3 -3
  41. data/examples/blueprint_semantic/src/screen.scss +69 -69
  42. data/examples/compass/bootstrap.rb +3 -3
  43. data/examples/compass/clean.rb +1 -1
  44. data/examples/compass/compass.html.haml +39 -39
  45. data/examples/compass/config.rb +8 -8
  46. data/examples/compass/pie.html.haml +73 -73
  47. data/examples/compass/sprites.html.haml +37 -37
  48. data/examples/compass/src/bp_layout.scss +18 -18
  49. data/examples/compass/src/compass.scss +46 -46
  50. data/examples/compass/src/pie.scss +110 -110
  51. data/examples/compass/src/sprites.scss +24 -24
  52. data/examples/compass/src/sticky_footer.scss +11 -11
  53. data/examples/compass/src/utilities.scss +108 -108
  54. data/examples/compass/sticky_footer.html.haml +13 -13
  55. data/examples/compass/utilities.html.haml +189 -189
  56. data/examples/css3/bootstrap.rb +3 -3
  57. data/examples/css3/clean.rb +2 -2
  58. data/examples/css3/config.rb +6 -6
  59. data/examples/css3/extensions/fancy-fonts/templates/project/fancy-fonts.sass +10 -10
  60. data/examples/css3/extensions/fancy-fonts/templates/project/manifest.rb +6 -6
  61. data/examples/css3/gradients.html.haml +68 -68
  62. data/examples/css3/index.html.haml +57 -57
  63. data/examples/css3/src/_base.scss +13 -13
  64. data/examples/css3/src/fancy-fonts.scss +13 -13
  65. data/examples/css3/src/gradients.scss +85 -85
  66. data/examples/css3/src/main.scss +108 -108
  67. data/examples/downloader.rb +58 -58
  68. data/examples/ninesixty/bootstrap.rb +4 -4
  69. data/examples/ninesixty/clean.rb +1 -1
  70. data/examples/ninesixty/config.rb +9 -9
  71. data/examples/ninesixty/src/grid.scss +15 -15
  72. data/examples/ninesixty/src/text.scss +8 -8
  73. data/examples/susy/bootstrap.rb +3 -3
  74. data/examples/susy/clean.rb +1 -1
  75. data/examples/susy/config.rb +9 -9
  76. data/examples/susy/src/_base.scss +61 -61
  77. data/examples/susy/src/_defaults.scss +140 -140
  78. data/examples/susy/src/screen.scss +100 -100
  79. data/examples/yui/bootstrap.rb +2 -2
  80. data/examples/yui/clean.rb +1 -1
  81. data/examples/yui/divisions.html.haml +179 -179
  82. data/examples/yui/index.html.haml +19 -19
  83. data/examples/yui/src/screen.scss +13 -13
  84. data/examples/yui/sub_divisions.html.haml +169 -169
  85. data/examples/yui/templates.html.haml +54 -54
  86. data/examples/yui/typography.html.haml +132 -132
  87. data/features/command_line.feature +292 -292
  88. data/features/extensions.feature +27 -27
  89. data/features/step_definitions/command_line_steps.rb +268 -268
  90. data/features/step_definitions/extension_steps.rb +24 -24
  91. data/frameworks/blueprint/stylesheets/_blueprint.scss +37 -37
  92. data/frameworks/blueprint/stylesheets/blueprint/_buttons.scss +100 -100
  93. data/frameworks/blueprint/stylesheets/blueprint/_colors.scss +36 -36
  94. data/frameworks/blueprint/stylesheets/blueprint/_debug.scss +28 -28
  95. data/frameworks/blueprint/stylesheets/blueprint/_fancy-type.scss +88 -88
  96. data/frameworks/blueprint/stylesheets/blueprint/_form.scss +66 -66
  97. data/frameworks/blueprint/stylesheets/blueprint/_grid.scss +258 -258
  98. data/frameworks/blueprint/stylesheets/blueprint/_ie.scss +111 -111
  99. data/frameworks/blueprint/stylesheets/blueprint/_interaction.scss +66 -66
  100. data/frameworks/blueprint/stylesheets/blueprint/_link-icons.scss +37 -37
  101. data/frameworks/blueprint/stylesheets/blueprint/_liquid.scss +152 -152
  102. data/frameworks/blueprint/stylesheets/blueprint/_print.scss +86 -86
  103. data/frameworks/blueprint/stylesheets/blueprint/_reset.scss +2 -2
  104. data/frameworks/blueprint/stylesheets/blueprint/_rtl.scss +121 -121
  105. data/frameworks/blueprint/stylesheets/blueprint/_scaffolding.scss +52 -52
  106. data/frameworks/blueprint/stylesheets/blueprint/_typography.scss +90 -90
  107. data/frameworks/blueprint/stylesheets/blueprint/_utilities.scss +37 -37
  108. data/frameworks/blueprint/stylesheets/blueprint/reset/_utilities.scss +83 -83
  109. data/frameworks/blueprint/templates/basic/ie.sass +4 -4
  110. data/frameworks/blueprint/templates/basic/manifest.rb +30 -30
  111. data/frameworks/blueprint/templates/basic/partials/_base.sass +10 -10
  112. data/frameworks/blueprint/templates/basic/print.sass +4 -4
  113. data/frameworks/blueprint/templates/basic/screen.sass +12 -12
  114. data/frameworks/blueprint/templates/buttons/buttons.sass +49 -49
  115. data/frameworks/blueprint/templates/buttons/buttons/cross.png +0 -0
  116. data/frameworks/blueprint/templates/buttons/buttons/key.png +0 -0
  117. data/frameworks/blueprint/templates/buttons/buttons/tick.png +0 -0
  118. data/frameworks/blueprint/templates/buttons/manifest.rb +17 -17
  119. data/frameworks/blueprint/templates/link_icons/link_icons.sass +13 -13
  120. data/frameworks/blueprint/templates/link_icons/manifest.rb +23 -23
  121. data/frameworks/blueprint/templates/project/ie.sass +16 -16
  122. data/frameworks/blueprint/templates/project/manifest.rb +30 -30
  123. data/frameworks/blueprint/templates/project/partials/_base.sass +11 -11
  124. data/frameworks/blueprint/templates/project/print.sass +7 -7
  125. data/frameworks/blueprint/templates/project/screen.sass +46 -46
  126. data/frameworks/blueprint/templates/semantic/ie.sass +16 -16
  127. data/frameworks/blueprint/templates/semantic/manifest.rb +33 -33
  128. data/frameworks/blueprint/templates/semantic/partials/_base.sass +10 -10
  129. data/frameworks/blueprint/templates/semantic/partials/_form.sass +5 -5
  130. data/frameworks/blueprint/templates/semantic/partials/_page.sass +17 -17
  131. data/frameworks/blueprint/templates/semantic/partials/_two_col.sass +38 -38
  132. data/frameworks/blueprint/templates/semantic/print.sass +4 -4
  133. data/frameworks/blueprint/templates/semantic/screen.sass +14 -14
  134. data/frameworks/compass/stylesheets/_compass.scss +3 -3
  135. data/frameworks/compass/stylesheets/_lemonade.scss +37 -37
  136. data/frameworks/compass/stylesheets/compass/_css3.scss +20 -20
  137. data/frameworks/compass/stylesheets/compass/_layout.scss +3 -3
  138. data/frameworks/compass/stylesheets/compass/_reset-legacy.scss +3 -3
  139. data/frameworks/compass/stylesheets/compass/_reset.scss +3 -3
  140. data/frameworks/compass/stylesheets/compass/_support.scss +40 -40
  141. data/frameworks/compass/stylesheets/compass/_typography.scss +4 -4
  142. data/frameworks/compass/stylesheets/compass/_utilities.scss +9 -9
  143. data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +17 -17
  144. data/frameworks/compass/stylesheets/compass/css3/_background-clip.scss +43 -43
  145. data/frameworks/compass/stylesheets/compass/css3/_background-origin.scss +42 -42
  146. data/frameworks/compass/stylesheets/compass/css3/_background-size.scss +26 -26
  147. data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +130 -130
  148. data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +76 -76
  149. data/frameworks/compass/stylesheets/compass/css3/_box-sizing.scss +13 -13
  150. data/frameworks/compass/stylesheets/compass/css3/_box.scss +111 -111
  151. data/frameworks/compass/stylesheets/compass/css3/_columns.scss +156 -156
  152. data/frameworks/compass/stylesheets/compass/css3/_filter.scss +23 -23
  153. data/frameworks/compass/stylesheets/compass/css3/_font-face.scss +48 -48
  154. data/frameworks/compass/stylesheets/compass/css3/_hyphenation.scss +77 -77
  155. data/frameworks/compass/stylesheets/compass/css3/_images.scss +132 -132
  156. data/frameworks/compass/stylesheets/compass/css3/_inline-block.scss +22 -22
  157. data/frameworks/compass/stylesheets/compass/css3/_opacity.scss +19 -19
  158. data/frameworks/compass/stylesheets/compass/css3/_pie.scss +72 -72
  159. data/frameworks/compass/stylesheets/compass/css3/_regions.scss +21 -21
  160. data/frameworks/compass/stylesheets/compass/css3/_shared.scss +38 -38
  161. data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +87 -87
  162. data/frameworks/compass/stylesheets/compass/css3/_transform-legacy.scss +87 -87
  163. data/frameworks/compass/stylesheets/compass/css3/_transform.scss +598 -598
  164. data/frameworks/compass/stylesheets/compass/css3/_transition.scss +221 -221
  165. data/frameworks/compass/stylesheets/compass/css3/_user-interface.scss +17 -17
  166. data/frameworks/compass/stylesheets/compass/layout/_grid-background.scss +178 -178
  167. data/frameworks/compass/stylesheets/compass/layout/_sticky-footer.scss +23 -23
  168. data/frameworks/compass/stylesheets/compass/layout/_stretching.scss +23 -23
  169. data/frameworks/compass/stylesheets/compass/reset/_utilities-legacy.scss +135 -135
  170. data/frameworks/compass/stylesheets/compass/reset/_utilities.scss +142 -142
  171. data/frameworks/compass/stylesheets/compass/typography/_links.scss +3 -3
  172. data/frameworks/compass/stylesheets/compass/typography/_lists.scss +4 -4
  173. data/frameworks/compass/stylesheets/compass/typography/_text.scss +4 -4
  174. data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +221 -221
  175. data/frameworks/compass/stylesheets/compass/typography/links/_hover-link.scss +5 -5
  176. data/frameworks/compass/stylesheets/compass/typography/links/_link-colors.scss +28 -28
  177. data/frameworks/compass/stylesheets/compass/typography/links/_unstyled-link.scss +7 -7
  178. data/frameworks/compass/stylesheets/compass/typography/lists/_bullets.scss +34 -34
  179. data/frameworks/compass/stylesheets/compass/typography/lists/_horizontal-list.scss +61 -61
  180. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-block-list.scss +50 -50
  181. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-list.scss +44 -44
  182. data/frameworks/compass/stylesheets/compass/typography/text/_ellipsis.scss +25 -25
  183. data/frameworks/compass/stylesheets/compass/typography/text/_force-wrap.scss +12 -12
  184. data/frameworks/compass/stylesheets/compass/typography/text/_nowrap.scss +2 -2
  185. data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +68 -68
  186. data/frameworks/compass/stylesheets/compass/utilities/_general.scss +6 -6
  187. data/frameworks/compass/stylesheets/compass/utilities/_links.scss +5 -5
  188. data/frameworks/compass/stylesheets/compass/utilities/_lists.scss +6 -6
  189. data/frameworks/compass/stylesheets/compass/utilities/_print.scss +17 -17
  190. data/frameworks/compass/stylesheets/compass/utilities/_sprites.scss +2 -2
  191. data/frameworks/compass/stylesheets/compass/utilities/_tables.scss +3 -3
  192. data/frameworks/compass/stylesheets/compass/utilities/_text.scss +5 -5
  193. data/frameworks/compass/stylesheets/compass/utilities/color/_contrast.scss +27 -27
  194. data/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss +44 -44
  195. data/frameworks/compass/stylesheets/compass/utilities/general/_float.scss +29 -29
  196. data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +46 -46
  197. data/frameworks/compass/stylesheets/compass/utilities/general/_min.scss +16 -16
  198. data/frameworks/compass/stylesheets/compass/utilities/general/_reset.scss +1 -1
  199. data/frameworks/compass/stylesheets/compass/utilities/general/_tabs.scss +1 -1
  200. data/frameworks/compass/stylesheets/compass/utilities/general/_tag-cloud.scss +18 -18
  201. data/frameworks/compass/stylesheets/compass/utilities/links/_hover-link.scss +3 -3
  202. data/frameworks/compass/stylesheets/compass/utilities/links/_link-colors.scss +3 -3
  203. data/frameworks/compass/stylesheets/compass/utilities/links/_unstyled-link.scss +3 -3
  204. data/frameworks/compass/stylesheets/compass/utilities/lists/_bullets.scss +3 -3
  205. data/frameworks/compass/stylesheets/compass/utilities/lists/_horizontal-list.scss +3 -3
  206. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-block-list.scss +3 -3
  207. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-list.scss +3 -3
  208. data/frameworks/compass/stylesheets/compass/utilities/sprites/_base.scss +65 -65
  209. data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite-img.scss +78 -78
  210. data/frameworks/compass/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +22 -22
  211. data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.scss +33 -33
  212. data/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.scss +9 -9
  213. data/frameworks/compass/stylesheets/compass/utilities/text/_ellipsis.scss +3 -3
  214. data/frameworks/compass/stylesheets/compass/utilities/text/_nowrap.scss +3 -3
  215. data/frameworks/compass/stylesheets/compass/utilities/text/_replacement.scss +3 -3
  216. data/frameworks/compass/templates/ellipsis/ellipsis.sass +8 -8
  217. data/frameworks/compass/templates/ellipsis/manifest.rb +26 -26
  218. data/frameworks/compass/templates/ellipsis/xml/ellipsis.xml +13 -13
  219. data/frameworks/compass/templates/extension/manifest.rb +26 -26
  220. data/frameworks/compass/templates/extension/stylesheets/main.sass +1 -1
  221. data/frameworks/compass/templates/extension/templates/project/manifest.rb +2 -2
  222. data/frameworks/compass/templates/extension/templates/project/screen.sass +1 -1
  223. data/frameworks/compass/templates/pie/LICENSE +12 -12
  224. data/frameworks/compass/templates/pie/LICENSE-APACHE2.txt +13 -13
  225. data/frameworks/compass/templates/pie/LICENSE-GPL2.txt +277 -277
  226. data/frameworks/compass/templates/pie/PIE.htc +96 -96
  227. data/frameworks/compass/templates/pie/manifest.rb +39 -39
  228. data/frameworks/compass/templates/pie/pie.scss +73 -73
  229. data/frameworks/compass/templates/project/USAGE.markdown +32 -32
  230. data/frameworks/compass/templates/project/ie.sass +6 -6
  231. data/frameworks/compass/templates/project/manifest.rb +3 -3
  232. data/frameworks/compass/templates/project/print.sass +6 -6
  233. data/frameworks/compass/templates/project/screen.sass +7 -7
  234. data/lib/compass.rb +37 -37
  235. data/lib/compass/actions.rb +115 -115
  236. data/lib/compass/app_integration.rb +39 -39
  237. data/lib/compass/app_integration/rails.rb +18 -18
  238. data/lib/compass/app_integration/stand_alone.rb +22 -22
  239. data/lib/compass/app_integration/stand_alone/configuration_defaults.rb +32 -32
  240. data/lib/compass/app_integration/stand_alone/installer.rb +83 -83
  241. data/lib/compass/browser_support.rb +62 -62
  242. data/lib/compass/commands.rb +12 -12
  243. data/lib/compass/commands/base.rb +44 -44
  244. data/lib/compass/commands/clean_project.rb +79 -79
  245. data/lib/compass/commands/create_project.rb +131 -131
  246. data/lib/compass/commands/default.rb +50 -50
  247. data/lib/compass/commands/extension_command.rb +60 -60
  248. data/lib/compass/commands/generate_grid_background.rb +96 -96
  249. data/lib/compass/commands/help.rb +85 -85
  250. data/lib/compass/commands/imports.rb +35 -35
  251. data/lib/compass/commands/installer_command.rb +32 -32
  252. data/lib/compass/commands/interactive.rb +61 -61
  253. data/lib/compass/commands/list_frameworks.rb +38 -38
  254. data/lib/compass/commands/print_version.rb +99 -99
  255. data/lib/compass/commands/project_base.rb +103 -103
  256. data/lib/compass/commands/project_stats.rb +178 -178
  257. data/lib/compass/commands/project_structure.rb +93 -93
  258. data/lib/compass/commands/registry.rb +40 -40
  259. data/lib/compass/commands/sprite.rb +89 -89
  260. data/lib/compass/commands/stamp_pattern.rb +90 -90
  261. data/lib/compass/commands/unpack_extension.rb +120 -120
  262. data/lib/compass/commands/update_project.rb +139 -139
  263. data/lib/compass/commands/validate_project.rb +77 -77
  264. data/lib/compass/commands/watch_project.rb +170 -170
  265. data/lib/compass/commands/write_configuration.rb +125 -125
  266. data/lib/compass/compiler.rb +200 -200
  267. data/lib/compass/configuration.rb +91 -91
  268. data/lib/compass/configuration/adapters.rb +77 -77
  269. data/lib/compass/configuration/comments.rb +59 -59
  270. data/lib/compass/configuration/data.rb +193 -193
  271. data/lib/compass/configuration/defaults.rb +187 -187
  272. data/lib/compass/configuration/file_data.rb +21 -21
  273. data/lib/compass/configuration/helpers.rb +160 -160
  274. data/lib/compass/configuration/inheritance.rb +304 -304
  275. data/lib/compass/configuration/paths.rb +19 -19
  276. data/lib/compass/configuration/serialization.rb +88 -88
  277. data/lib/compass/dependencies.rb +12 -12
  278. data/lib/compass/errors.rb +11 -11
  279. data/lib/compass/exec.rb +23 -23
  280. data/lib/compass/exec/command_option_parser.rb +23 -23
  281. data/lib/compass/exec/global_options_parser.rb +63 -63
  282. data/lib/compass/exec/helpers.rb +21 -21
  283. data/lib/compass/exec/project_options_parser.rb +66 -66
  284. data/lib/compass/exec/sub_command_ui.rb +51 -51
  285. data/lib/compass/exec/switch_ui.rb +179 -179
  286. data/lib/compass/frameworks.rb +133 -133
  287. data/lib/compass/grid_builder.rb +102 -102
  288. data/lib/compass/installers.rb +3 -3
  289. data/lib/compass/installers/bare_installer.rb +58 -58
  290. data/lib/compass/installers/base.rb +187 -187
  291. data/lib/compass/installers/manifest.rb +161 -161
  292. data/lib/compass/installers/manifest_installer.rb +61 -61
  293. data/lib/compass/installers/template_context.rb +43 -43
  294. data/lib/compass/logger.rb +103 -103
  295. data/lib/compass/quick_cache.rb +15 -15
  296. data/lib/compass/rails.rb +2 -2
  297. data/lib/compass/sass_extensions.rb +10 -10
  298. data/lib/compass/sass_extensions/functions.rb +34 -34
  299. data/lib/compass/sass_extensions/functions/colors.rb +67 -67
  300. data/lib/compass/sass_extensions/functions/constants.rb +74 -74
  301. data/lib/compass/sass_extensions/functions/cross_browser_support.rb +70 -70
  302. data/lib/compass/sass_extensions/functions/display.rb +27 -27
  303. data/lib/compass/sass_extensions/functions/enumerate.rb +6 -6
  304. data/lib/compass/sass_extensions/functions/env.rb +5 -5
  305. data/lib/compass/sass_extensions/functions/font_files.rb +41 -41
  306. data/lib/compass/sass_extensions/functions/gradient_support.rb +540 -540
  307. data/lib/compass/sass_extensions/functions/image_size.rb +113 -113
  308. data/lib/compass/sass_extensions/functions/inline_image.rb +64 -64
  309. data/lib/compass/sass_extensions/functions/lists.rb +101 -101
  310. data/lib/compass/sass_extensions/functions/math.rb +63 -63
  311. data/lib/compass/sass_extensions/functions/selectors.rb +63 -63
  312. data/lib/compass/sass_extensions/functions/sprites.rb +218 -218
  313. data/lib/compass/sass_extensions/functions/urls.rb +266 -266
  314. data/lib/compass/sass_extensions/monkey_patches.rb +3 -3
  315. data/lib/compass/sass_extensions/monkey_patches/browser_support.rb +95 -95
  316. data/lib/compass/sass_extensions/monkey_patches/traversal.rb +23 -23
  317. data/lib/compass/sass_extensions/sprites.rb +19 -19
  318. data/lib/compass/sass_extensions/sprites/engines.rb +25 -25
  319. data/lib/compass/sass_extensions/sprites/engines/chunky_png_engine.rb +30 -30
  320. data/lib/compass/sass_extensions/sprites/image.rb +151 -151
  321. data/lib/compass/sass_extensions/sprites/image_methods.rb +31 -31
  322. data/lib/compass/sass_extensions/sprites/image_row.rb +46 -46
  323. data/lib/compass/sass_extensions/sprites/layout_methods.rb +158 -158
  324. data/lib/compass/sass_extensions/sprites/row_fitter.rb +91 -91
  325. data/lib/compass/sass_extensions/sprites/sprite_map.rb +86 -86
  326. data/lib/compass/sass_extensions/sprites/sprite_methods.rb +141 -141
  327. data/lib/compass/sprite_importer.rb +116 -116
  328. data/lib/compass/sprite_importer/binding.rb +10 -10
  329. data/lib/compass/sprite_importer/content.erb +80 -80
  330. data/lib/compass/stats.rb +99 -99
  331. data/lib/compass/test_case.rb +38 -38
  332. data/lib/compass/util.rb +29 -29
  333. data/lib/compass/validator.rb +16 -16
  334. data/lib/compass/version.rb +60 -60
  335. data/test/fixtures/extensions/only_stylesheets/compass_init.rb +1 -1
  336. data/test/fixtures/extensions/only_stylesheets/scss/only_stylesheets/foo.scss +3 -3
  337. data/test/fixtures/fonts/bgrove.base64.txt +1 -1
  338. data/test/fixtures/fonts/bgrove.ttf +0 -0
  339. data/test/fixtures/sprites/public/images/ko/starbg26x27.png +0 -0
  340. data/test/fixtures/stylesheets/blueprint/config.rb +14 -14
  341. data/test/fixtures/stylesheets/blueprint/css/ie.css +76 -76
  342. data/test/fixtures/stylesheets/blueprint/css/print.css +56 -56
  343. data/test/fixtures/stylesheets/blueprint/css/screen.css +815 -815
  344. data/test/fixtures/stylesheets/blueprint/css/single-imports/buttons.css +56 -56
  345. data/test/fixtures/stylesheets/blueprint/css/single-imports/colors.css +80 -80
  346. data/test/fixtures/stylesheets/blueprint/css/single-imports/debug.css +11 -11
  347. data/test/fixtures/stylesheets/blueprint/css/single-imports/fancy-type.css +30 -30
  348. data/test/fixtures/stylesheets/blueprint/css/single-imports/form.css +42 -42
  349. data/test/fixtures/stylesheets/blueprint/css/single-imports/grid.css +435 -435
  350. data/test/fixtures/stylesheets/blueprint/css/single-imports/ie.css +76 -76
  351. data/test/fixtures/stylesheets/blueprint/css/single-imports/interaction.css +46 -46
  352. data/test/fixtures/stylesheets/blueprint/css/single-imports/link-icons.css +40 -40
  353. data/test/fixtures/stylesheets/blueprint/css/single-imports/liquid.css +651 -651
  354. data/test/fixtures/stylesheets/blueprint/css/single-imports/print.css +60 -60
  355. data/test/fixtures/stylesheets/blueprint/css/single-imports/reset-utilities.css +75 -75
  356. data/test/fixtures/stylesheets/blueprint/css/single-imports/reset.css +42 -42
  357. data/test/fixtures/stylesheets/blueprint/css/single-imports/rtl.css +437 -437
  358. data/test/fixtures/stylesheets/blueprint/css/single-imports/scaffolding.css +45 -45
  359. data/test/fixtures/stylesheets/blueprint/css/single-imports/typography.css +146 -146
  360. data/test/fixtures/stylesheets/blueprint/css/single-imports/utilities.css +35 -35
  361. data/test/fixtures/stylesheets/blueprint/sass/ie.sass +3 -3
  362. data/test/fixtures/stylesheets/blueprint/sass/print.sass +3 -3
  363. data/test/fixtures/stylesheets/blueprint/sass/screen.sass +18 -18
  364. data/test/fixtures/stylesheets/blueprint/sass/single-imports/buttons.scss +3 -3
  365. data/test/fixtures/stylesheets/blueprint/sass/single-imports/colors.scss +34 -34
  366. data/test/fixtures/stylesheets/blueprint/sass/single-imports/debug.scss +3 -3
  367. data/test/fixtures/stylesheets/blueprint/sass/single-imports/fancy-type.scss +3 -3
  368. data/test/fixtures/stylesheets/blueprint/sass/single-imports/form.scss +4 -4
  369. data/test/fixtures/stylesheets/blueprint/sass/single-imports/grid.scss +2 -2
  370. data/test/fixtures/stylesheets/blueprint/sass/single-imports/ie.scss +2 -2
  371. data/test/fixtures/stylesheets/blueprint/sass/single-imports/interaction.scss +3 -3
  372. data/test/fixtures/stylesheets/blueprint/sass/single-imports/link-icons.scss +12 -12
  373. data/test/fixtures/stylesheets/blueprint/sass/single-imports/liquid.scss +2 -2
  374. data/test/fixtures/stylesheets/blueprint/sass/single-imports/print.scss +4 -4
  375. data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset-utilities.scss +4 -4
  376. data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset.scss +1 -1
  377. data/test/fixtures/stylesheets/blueprint/sass/single-imports/rtl.scss +2 -2
  378. data/test/fixtures/stylesheets/blueprint/sass/single-imports/scaffolding.scss +5 -5
  379. data/test/fixtures/stylesheets/blueprint/sass/single-imports/typography.scss +3 -3
  380. data/test/fixtures/stylesheets/blueprint/sass/single-imports/utilities.scss +3 -3
  381. data/test/fixtures/stylesheets/busted_image_urls/config.rb +29 -29
  382. data/test/fixtures/stylesheets/busted_image_urls/css/screen.css +9 -9
  383. data/test/fixtures/stylesheets/busted_image_urls/sass/screen.sass +13 -13
  384. data/test/fixtures/stylesheets/compass/config.rb +16 -16
  385. data/test/fixtures/stylesheets/compass/css/background-clip.css +10 -10
  386. data/test/fixtures/stylesheets/compass/css/border_radius.css +14 -14
  387. data/test/fixtures/stylesheets/compass/css/box-sizeing.css +9 -9
  388. data/test/fixtures/stylesheets/compass/css/box.css +103 -103
  389. data/test/fixtures/stylesheets/compass/css/box_shadow.css +14 -14
  390. data/test/fixtures/stylesheets/compass/css/columns.css +161 -161
  391. data/test/fixtures/stylesheets/compass/css/filters.css +29 -29
  392. data/test/fixtures/stylesheets/compass/css/fonts.css +4 -4
  393. data/test/fixtures/stylesheets/compass/css/force-wrap.css +9 -9
  394. data/test/fixtures/stylesheets/compass/css/gradients.css +202 -202
  395. data/test/fixtures/stylesheets/compass/css/grid_background.css +71 -71
  396. data/test/fixtures/stylesheets/compass/css/hyphenation.css +16 -16
  397. data/test/fixtures/stylesheets/compass/css/image_size.css +15 -15
  398. data/test/fixtures/stylesheets/compass/css/images.css +8 -8
  399. data/test/fixtures/stylesheets/compass/css/layout.css +16 -16
  400. data/test/fixtures/stylesheets/compass/css/legacy_clearfix.css +26 -26
  401. data/test/fixtures/stylesheets/compass/css/lists.css +151 -151
  402. data/test/fixtures/stylesheets/compass/css/opacity.css +3 -3
  403. data/test/fixtures/stylesheets/compass/css/pie.css +26 -26
  404. data/test/fixtures/stylesheets/compass/css/print.css +11 -11
  405. data/test/fixtures/stylesheets/compass/css/regions.css +7 -7
  406. data/test/fixtures/stylesheets/compass/css/replacement.css +59 -59
  407. data/test/fixtures/stylesheets/compass/css/reset.css +59 -59
  408. data/test/fixtures/stylesheets/compass/css/sprites.css +1262 -1262
  409. data/test/fixtures/stylesheets/compass/css/stretching.css +66 -66
  410. data/test/fixtures/stylesheets/compass/css/text_shadow.css +29 -29
  411. data/test/fixtures/stylesheets/compass/css/transform.css +441 -441
  412. data/test/fixtures/stylesheets/compass/css/transition.css +128 -128
  413. data/test/fixtures/stylesheets/compass/css/user-interface.css +4 -4
  414. data/test/fixtures/stylesheets/compass/css/utilities.css +56 -56
  415. data/test/fixtures/stylesheets/compass/css/vertical_rhythm.css +45 -45
  416. data/test/fixtures/stylesheets/compass/sass/background-clip.scss +7 -7
  417. data/test/fixtures/stylesheets/compass/sass/border_radius.scss +5 -5
  418. data/test/fixtures/stylesheets/compass/sass/box-sizeing.scss +7 -7
  419. data/test/fixtures/stylesheets/compass/sass/box.sass +49 -49
  420. data/test/fixtures/stylesheets/compass/sass/box_shadow.scss +5 -5
  421. data/test/fixtures/stylesheets/compass/sass/columns.scss +28 -28
  422. data/test/fixtures/stylesheets/compass/sass/filters.scss +24 -24
  423. data/test/fixtures/stylesheets/compass/sass/fonts.sass +2 -2
  424. data/test/fixtures/stylesheets/compass/sass/force-wrap.scss +3 -3
  425. data/test/fixtures/stylesheets/compass/sass/gradients.sass +96 -96
  426. data/test/fixtures/stylesheets/compass/sass/grid_background.scss +33 -33
  427. data/test/fixtures/stylesheets/compass/sass/hyphenation.scss +10 -10
  428. data/test/fixtures/stylesheets/compass/sass/image_size.sass +15 -15
  429. data/test/fixtures/stylesheets/compass/sass/images.scss +8 -8
  430. data/test/fixtures/stylesheets/compass/sass/layout.sass +3 -3
  431. data/test/fixtures/stylesheets/compass/sass/legacy_clearfix.scss +14 -14
  432. data/test/fixtures/stylesheets/compass/sass/lists.scss +11 -11
  433. data/test/fixtures/stylesheets/compass/sass/opacity.scss +5 -5
  434. data/test/fixtures/stylesheets/compass/sass/pie.scss +47 -47
  435. data/test/fixtures/stylesheets/compass/sass/print.sass +5 -5
  436. data/test/fixtures/stylesheets/compass/sass/regions.scss +3 -3
  437. data/test/fixtures/stylesheets/compass/sass/replacement.scss +22 -22
  438. data/test/fixtures/stylesheets/compass/sass/reset.sass +12 -12
  439. data/test/fixtures/stylesheets/compass/sass/sprites.scss +13 -13
  440. data/test/fixtures/stylesheets/compass/sass/stretching.sass +33 -33
  441. data/test/fixtures/stylesheets/compass/sass/text_shadow.scss +11 -11
  442. data/test/fixtures/stylesheets/compass/sass/transform.scss +87 -87
  443. data/test/fixtures/stylesheets/compass/sass/transition.scss +24 -24
  444. data/test/fixtures/stylesheets/compass/sass/user-interface.scss +4 -4
  445. data/test/fixtures/stylesheets/compass/sass/utilities.scss +20 -20
  446. data/test/fixtures/stylesheets/compass/sass/vertical_rhythm.scss +15 -15
  447. data/test/fixtures/stylesheets/envtest/config.rb +9 -9
  448. data/test/fixtures/stylesheets/envtest/css/env.css +2 -2
  449. data/test/fixtures/stylesheets/envtest/sass/env.scss +3 -3
  450. data/test/fixtures/stylesheets/error/config.rb +10 -10
  451. data/test/fixtures/stylesheets/error/sass/screen.sass +2 -2
  452. data/test/fixtures/stylesheets/image_urls/config.rb +19 -19
  453. data/test/fixtures/stylesheets/image_urls/css/screen.css +5 -5
  454. data/test/fixtures/stylesheets/image_urls/sass/screen.sass +8 -8
  455. data/test/fixtures/stylesheets/relative/config.rb +10 -10
  456. data/test/fixtures/stylesheets/relative/css/ie.css +1 -1
  457. data/test/fixtures/stylesheets/relative/css/print.css +1 -1
  458. data/test/fixtures/stylesheets/relative/css/screen.css +1 -1
  459. data/test/fixtures/stylesheets/relative/sass/ie.sass +5 -5
  460. data/test/fixtures/stylesheets/relative/sass/print.sass +3 -3
  461. data/test/fixtures/stylesheets/relative/sass/screen.sass +2 -2
  462. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/config.rb +25 -25
  463. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/ie.scss +5 -5
  464. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/print.scss +3 -3
  465. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/screen.scss +6 -6
  466. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/ie.css +5 -5
  467. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/print.css +3 -3
  468. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/screen.css +68 -68
  469. data/test/fixtures/stylesheets/valid/config.rb +9 -9
  470. data/test/fixtures/stylesheets/valid/sass/simple.sass +1 -1
  471. data/test/helpers/command_line.rb +114 -114
  472. data/test/helpers/diff.rb +48 -48
  473. data/test/helpers/io.rb +36 -36
  474. data/test/helpers/rails.rb +55 -55
  475. data/test/helpers/test_case.rb +62 -62
  476. data/test/integrations/compass_test.rb +224 -224
  477. data/test/integrations/sprites_test.rb +843 -843
  478. data/test/test_helper.rb +73 -73
  479. data/test/units/actions_test.rb +23 -23
  480. data/test/units/command_line_test.rb +60 -60
  481. data/test/units/compass_module_test.rb +36 -36
  482. data/test/units/compass_png_test.rb +45 -45
  483. data/test/units/compiler_test.rb +10 -10
  484. data/test/units/configuration_test.rb +440 -440
  485. data/test/units/regressions_test.rb +35 -35
  486. data/test/units/sass_extensions_test.rb +198 -198
  487. data/test/units/sprites/engine_test.rb +47 -47
  488. data/test/units/sprites/image_row_test.rb +57 -57
  489. data/test/units/sprites/image_test.rb +99 -99
  490. data/test/units/sprites/importer_test.rb +90 -90
  491. data/test/units/sprites/layout_test.rb +154 -154
  492. data/test/units/sprites/row_fitter_test.rb +65 -65
  493. data/test/units/sprites/sprite_command_test.rb +54 -54
  494. data/test/units/sprites/sprite_map_test.rb +130 -130
  495. metadata +1304 -1310
@@ -1,116 +1,116 @@
1
- require 'erb'
2
- require 'compass/sprite_importer/binding'
3
- module Compass
4
- class SpriteImporter < Sass::Importers::Base
5
- VAILD_FILE_NAME = /\A#{Sass::SCSS::RX::IDENT}\Z/
6
- SPRITE_IMPORTER_REGEX = %r{((.+/)?([^\*.]+))/(.+?)\.png}
7
- VALID_EXTENSIONS = ['.png']
8
-
9
- TEMPLATE_FOLDER = File.join(File.expand_path('../', __FILE__), 'sprite_importer')
10
- CONTENT_TEMPLATE_FILE = File.join(TEMPLATE_FOLDER, 'content.erb')
11
- CONTENT_TEMPLATE = ERB.new(File.read(CONTENT_TEMPLATE_FILE))
12
-
13
-
14
-
15
- # finds all sprite files
16
- def self.find_all_sprite_map_files(path)
17
- hex = "[0-9a-f]"
18
- glob = "*-s#{hex*10}{#{VALID_EXTENSIONS.join(",")}}"
19
- Dir.glob(File.join(path, "**", glob))
20
- end
21
-
22
- def find(uri, options)
23
- if uri =~ SPRITE_IMPORTER_REGEX
24
- return self.class.sass_engine(uri, self.class.sprite_name(uri), self, options)
25
- end
26
- nil
27
- end
28
-
29
- def find_relative(uri, base, options)
30
- nil
31
- end
32
-
33
- def to_s
34
- self.class.name
35
- end
36
-
37
- def hash
38
- self.class.name.hash
39
- end
40
-
41
- def eql?(other)
42
- other.class == self.class
43
- end
44
-
45
- def mtime(uri, options)
46
- self.class.files(uri).sort.inject(Time.at(0)) do |max_time, file|
47
- (t = File.mtime(file)) > max_time ? t : max_time
48
- end
49
- end
50
-
51
- def key(uri, options={})
52
- [self.class.name + ":sprite:" + File.dirname(File.expand_path(uri)), File.basename(uri)]
53
- end
54
-
55
- def self.path_and_name(uri)
56
- if uri =~ SPRITE_IMPORTER_REGEX
57
- [$1, $3]
58
- else
59
- raise Compass::Error, "invalid sprite path"
60
- end
61
- end
62
-
63
- # Name of this spite
64
- def self.sprite_name(uri)
65
- _, name = path_and_name(uri)
66
- name
67
- end
68
-
69
- # The on-disk location of this sprite
70
- def self.path(uri)
71
- path, _ = path_and_name(uri)
72
- path
73
- end
74
-
75
- # Returns the Glob of image files for the uri
76
- def self.files(uri)
77
- Compass.configuration.sprite_load_path.compact.each do |folder|
78
- files = Dir[File.join(folder, uri)].sort
79
- next if files.empty?
80
- return files
81
- end
82
-
83
- path = Compass.configuration.sprite_load_path.to_a.join(', ')
84
- raise Compass::SpriteException, %Q{No files were found in the load path matching "#{uri}". Your current load paths are: #{path}}
85
- end
86
-
87
- # Returns an Array of image names without the file extension
88
- def self.sprite_names(uri)
89
- files(uri).collect do |file|
90
- filename = File.basename(file, '.png')
91
- unless VAILD_FILE_NAME =~ filename
92
- raise Compass::Error, "Sprite file names must be legal css identifiers. Please rename #{File.basename(file)}"
93
- end
94
- filename
95
- end
96
- end
97
-
98
- # Returns the sass_options for this sprite
99
- def self.sass_options(uri, importer, options)
100
- options.merge!(:filename => uri.gsub(%r{\*/},"*\\/"), :syntax => :scss, :importer => importer)
101
- end
102
-
103
- # Returns a Sass::Engine for this sprite object
104
- def self.sass_engine(uri, name, importer, options)
105
- content = content_for_images(uri, name, options[:skip_overrides])
106
- Sass::Engine.new(content, sass_options(uri, importer, options))
107
- end
108
-
109
- # Generates the Sass for this sprite file
110
- def self.content_for_images(uri, name, skip_overrides = false)
111
- binder = Compass::Sprites::Binding.new(:name => name, :uri => uri, :skip_overrides => skip_overrides, :sprite_names => sprite_names(uri), :files => files(uri))
112
- CONTENT_TEMPLATE.result(binder.get_binding)
113
- end
114
- end
115
- end
116
-
1
+ require 'erb'
2
+ require 'compass/sprite_importer/binding'
3
+ module Compass
4
+ class SpriteImporter < Sass::Importers::Base
5
+ VAILD_FILE_NAME = /\A#{Sass::SCSS::RX::IDENT}\Z/
6
+ SPRITE_IMPORTER_REGEX = %r{((.+/)?([^\*.]+))/(.+?)\.png}
7
+ VALID_EXTENSIONS = ['.png']
8
+
9
+ TEMPLATE_FOLDER = File.join(File.expand_path('../', __FILE__), 'sprite_importer')
10
+ CONTENT_TEMPLATE_FILE = File.join(TEMPLATE_FOLDER, 'content.erb')
11
+ CONTENT_TEMPLATE = ERB.new(File.read(CONTENT_TEMPLATE_FILE))
12
+
13
+
14
+
15
+ # finds all sprite files
16
+ def self.find_all_sprite_map_files(path)
17
+ hex = "[0-9a-f]"
18
+ glob = "*-s#{hex*10}{#{VALID_EXTENSIONS.join(",")}}"
19
+ Dir.glob(File.join(path, "**", glob))
20
+ end
21
+
22
+ def find(uri, options)
23
+ if uri =~ SPRITE_IMPORTER_REGEX
24
+ return self.class.sass_engine(uri, self.class.sprite_name(uri), self, options)
25
+ end
26
+ nil
27
+ end
28
+
29
+ def find_relative(uri, base, options)
30
+ nil
31
+ end
32
+
33
+ def to_s
34
+ self.class.name
35
+ end
36
+
37
+ def hash
38
+ self.class.name.hash
39
+ end
40
+
41
+ def eql?(other)
42
+ other.class == self.class
43
+ end
44
+
45
+ def mtime(uri, options)
46
+ self.class.files(uri).sort.inject(Time.at(0)) do |max_time, file|
47
+ (t = File.mtime(file)) > max_time ? t : max_time
48
+ end
49
+ end
50
+
51
+ def key(uri, options={})
52
+ [self.class.name + ":sprite:" + File.dirname(File.expand_path(uri)), File.basename(uri)]
53
+ end
54
+
55
+ def self.path_and_name(uri)
56
+ if uri =~ SPRITE_IMPORTER_REGEX
57
+ [$1, $3]
58
+ else
59
+ raise Compass::Error, "invalid sprite path"
60
+ end
61
+ end
62
+
63
+ # Name of this spite
64
+ def self.sprite_name(uri)
65
+ _, name = path_and_name(uri)
66
+ name
67
+ end
68
+
69
+ # The on-disk location of this sprite
70
+ def self.path(uri)
71
+ path, _ = path_and_name(uri)
72
+ path
73
+ end
74
+
75
+ # Returns the Glob of image files for the uri
76
+ def self.files(uri)
77
+ Compass.configuration.sprite_load_path.compact.each do |folder|
78
+ files = Dir[File.join(folder, uri)].sort
79
+ next if files.empty?
80
+ return files
81
+ end
82
+
83
+ path = Compass.configuration.sprite_load_path.to_a.join(', ')
84
+ raise Compass::SpriteException, %Q{No files were found in the load path matching "#{uri}". Your current load paths are: #{path}}
85
+ end
86
+
87
+ # Returns an Array of image names without the file extension
88
+ def self.sprite_names(uri)
89
+ files(uri).collect do |file|
90
+ filename = File.basename(file, '.png')
91
+ unless VAILD_FILE_NAME =~ filename
92
+ raise Compass::Error, "Sprite file names must be legal css identifiers. Please rename #{File.basename(file)}"
93
+ end
94
+ filename
95
+ end
96
+ end
97
+
98
+ # Returns the sass_options for this sprite
99
+ def self.sass_options(uri, importer, options)
100
+ options.merge!(:filename => uri.gsub(%r{\*/},"*\\/"), :syntax => :scss, :importer => importer)
101
+ end
102
+
103
+ # Returns a Sass::Engine for this sprite object
104
+ def self.sass_engine(uri, name, importer, options)
105
+ content = content_for_images(uri, name, options[:skip_overrides])
106
+ Sass::Engine.new(content, sass_options(uri, importer, options))
107
+ end
108
+
109
+ # Generates the Sass for this sprite file
110
+ def self.content_for_images(uri, name, skip_overrides = false)
111
+ binder = Compass::Sprites::Binding.new(:name => name, :uri => uri, :skip_overrides => skip_overrides, :sprite_names => sprite_names(uri), :files => files(uri))
112
+ CONTENT_TEMPLATE.result(binder.get_binding)
113
+ end
114
+ end
115
+ end
116
+
@@ -1,11 +1,11 @@
1
- require 'ostruct'
2
- module Compass
3
- module Sprites
4
- class Binding < OpenStruct
5
-
6
- def get_binding
7
- binding
8
- end
9
- end
10
- end
1
+ require 'ostruct'
2
+ module Compass
3
+ module Sprites
4
+ class Binding < OpenStruct
5
+
6
+ def get_binding
7
+ binding
8
+ end
9
+ end
10
+ end
11
11
  end
@@ -1,81 +1,81 @@
1
- @import "compass/utilities/sprites/base";
2
-
3
- // General Sprite Defaults
4
- // You can override them before you import this file.
5
- $<%= name %>-sprite-base-class: ".<%= name %>-sprite" !default;
6
- $<%= name %>-sprite-dimensions: false !default;
7
- $<%= name %>-position: 0% !default;
8
- $<%= name %>-spacing: 0 !default;
9
- $<%= name %>-repeat: no-repeat !default;
10
- $<%= name %>-prefix: '' !default;
11
- $<%= name %>-clean-up: true !default;
12
- $<%= name %>-layout:vertical !default;
13
- $<%= name %>-inline: false !default;
14
-
15
- <% if skip_overrides %>
16
- $<%= name %>-sprites: sprite-map("<%= uri %>", $layout: $<%= name %>-layout, $cleanup: $<%= name %>-clean-up);
17
- <% else %>
18
- // These variables control the generated sprite output
19
- // You can override them selectively before you import this file.
20
- <% sprite_names.each do |sprite_name| %>
21
- $<%= name %>-<%= sprite_name %>-position: $<%= name %>-position !default;
22
- $<%= name %>-<%= sprite_name %>-spacing: $<%= name %>-spacing !default;
23
- $<%= name %>-<%= sprite_name %>-repeat: $<%= name %>-repeat !default;
24
- <% end %>
25
-
26
- $<%= name %>-sprites: sprite-map("<%= uri %>",
27
- <% sprite_names.each do |sprite_name| %>
28
- $<%= name %>-<%= sprite_name %>-position: $<%= name %>-<%= sprite_name %>-position,
29
- $<%= name %>-<%= sprite_name %>-spacing: $<%= name %>-<%= sprite_name %>-spacing,
30
- $<%= name %>-<%= sprite_name %>-repeat: $<%= name %>-<%= sprite_name %>-repeat,
31
- <% end %>
32
- $layout: $<%= name %>-layout,
33
- $cleanup: $<%= name %>-clean-up
34
- );
35
- <% end %>
36
-
37
- // All sprites should extend this class
38
- // The <%= name %>-sprite mixin will do so for you.
39
- @if $<%= name %>-inline {
40
- #{$<%= name %>-sprite-base-class} {
41
- background-image: inline-sprite($<%= name %>-sprites);
42
- }
43
- } @else {
44
- #{$<%= name %>-sprite-base-class} {
45
- background: $<%= name %>-sprites no-repeat;
46
- }
47
- }
48
- //sass functions to return the dimensions of a sprite image as units
49
- <% [:width, :height].each do |dimension| %>
50
- @function <%= name %>-sprite-<%= dimension %>($name) {
51
- $file: sprite_file($<%= name %>-sprites, $name);
52
- @return image-<%= dimension %>($file);
53
- }
54
- <% end %>
55
-
56
- // Use this to set the dimensions of an element
57
- // based on the size of the original image.
58
- @mixin <%= name %>-sprite-dimensions($name) {
59
- @include sprite-dimensions($<%= name %>-sprites, $name)
60
- }
61
-
62
- // Move the background position to display the sprite.
63
- @mixin <%= name %>-sprite-position($name, $offset-x: 0, $offset-y: 0) {
64
- @include sprite-background-position($<%= name %>-sprites, $name, $offset-x, $offset-y)
65
- }
66
-
67
- // Extends the sprite base class and set the background position for the desired sprite.
68
- // It will also apply the image dimensions if $dimensions is true.
69
- @mixin <%= name %>-sprite($name, $dimensions: $<%= name %>-sprite-dimensions, $offset-x: 0, $offset-y: 0) {
70
- @extend #{$<%= name %>-sprite-base-class};
71
- @include sprite($<%= name %>-sprites, $name, $dimensions, $offset-x, $offset-y)
72
- }
73
-
74
- @mixin <%= name %>-sprites($sprite-names, $dimensions: $<%= name %>-sprite-dimensions, $prefix: sprite-map-name($<%= name %>-sprites), $offset-x: 0, $offset-y: 0) {
75
- @include sprites($<%= name %>-sprites, $sprite-names, $<%= name %>-sprite-base-class, $dimensions, $prefix, $offset-x, $offset-y)
76
- }
77
-
78
- // Generates a class for each sprited image.
79
- @mixin all-<%= name %>-sprites($dimensions: $<%= name %>-sprite-dimensions, $prefix: sprite-map-name($<%= name %>-sprites), $offset-x: 0, $offset-y: 0) {
80
- @include <%= name %>-sprites(<%= sprite_names.join(" ") %>, $dimensions, $prefix, $offset-x, $offset-y);
1
+ @import "compass/utilities/sprites/base";
2
+
3
+ // General Sprite Defaults
4
+ // You can override them before you import this file.
5
+ $<%= name %>-sprite-base-class: ".<%= name %>-sprite" !default;
6
+ $<%= name %>-sprite-dimensions: false !default;
7
+ $<%= name %>-position: 0% !default;
8
+ $<%= name %>-spacing: 0 !default;
9
+ $<%= name %>-repeat: no-repeat !default;
10
+ $<%= name %>-prefix: '' !default;
11
+ $<%= name %>-clean-up: true !default;
12
+ $<%= name %>-layout:vertical !default;
13
+ $<%= name %>-inline: false !default;
14
+
15
+ <% if skip_overrides %>
16
+ $<%= name %>-sprites: sprite-map("<%= uri %>", $layout: $<%= name %>-layout, $cleanup: $<%= name %>-clean-up);
17
+ <% else %>
18
+ // These variables control the generated sprite output
19
+ // You can override them selectively before you import this file.
20
+ <% sprite_names.each do |sprite_name| %>
21
+ $<%= name %>-<%= sprite_name %>-position: $<%= name %>-position !default;
22
+ $<%= name %>-<%= sprite_name %>-spacing: $<%= name %>-spacing !default;
23
+ $<%= name %>-<%= sprite_name %>-repeat: $<%= name %>-repeat !default;
24
+ <% end %>
25
+
26
+ $<%= name %>-sprites: sprite-map("<%= uri %>",
27
+ <% sprite_names.each do |sprite_name| %>
28
+ $<%= name %>-<%= sprite_name %>-position: $<%= name %>-<%= sprite_name %>-position,
29
+ $<%= name %>-<%= sprite_name %>-spacing: $<%= name %>-<%= sprite_name %>-spacing,
30
+ $<%= name %>-<%= sprite_name %>-repeat: $<%= name %>-<%= sprite_name %>-repeat,
31
+ <% end %>
32
+ $layout: $<%= name %>-layout,
33
+ $cleanup: $<%= name %>-clean-up
34
+ );
35
+ <% end %>
36
+
37
+ // All sprites should extend this class
38
+ // The <%= name %>-sprite mixin will do so for you.
39
+ @if $<%= name %>-inline {
40
+ #{$<%= name %>-sprite-base-class} {
41
+ background-image: inline-sprite($<%= name %>-sprites);
42
+ }
43
+ } @else {
44
+ #{$<%= name %>-sprite-base-class} {
45
+ background: $<%= name %>-sprites no-repeat;
46
+ }
47
+ }
48
+ //sass functions to return the dimensions of a sprite image as units
49
+ <% [:width, :height].each do |dimension| %>
50
+ @function <%= name %>-sprite-<%= dimension %>($name) {
51
+ $file: sprite_file($<%= name %>-sprites, $name);
52
+ @return image-<%= dimension %>($file);
53
+ }
54
+ <% end %>
55
+
56
+ // Use this to set the dimensions of an element
57
+ // based on the size of the original image.
58
+ @mixin <%= name %>-sprite-dimensions($name) {
59
+ @include sprite-dimensions($<%= name %>-sprites, $name)
60
+ }
61
+
62
+ // Move the background position to display the sprite.
63
+ @mixin <%= name %>-sprite-position($name, $offset-x: 0, $offset-y: 0) {
64
+ @include sprite-background-position($<%= name %>-sprites, $name, $offset-x, $offset-y)
65
+ }
66
+
67
+ // Extends the sprite base class and set the background position for the desired sprite.
68
+ // It will also apply the image dimensions if $dimensions is true.
69
+ @mixin <%= name %>-sprite($name, $dimensions: $<%= name %>-sprite-dimensions, $offset-x: 0, $offset-y: 0) {
70
+ @extend #{$<%= name %>-sprite-base-class};
71
+ @include sprite($<%= name %>-sprites, $name, $dimensions, $offset-x, $offset-y)
72
+ }
73
+
74
+ @mixin <%= name %>-sprites($sprite-names, $dimensions: $<%= name %>-sprite-dimensions, $prefix: sprite-map-name($<%= name %>-sprites), $offset-x: 0, $offset-y: 0) {
75
+ @include sprites($<%= name %>-sprites, $sprite-names, $<%= name %>-sprite-base-class, $dimensions, $prefix, $offset-x, $offset-y)
76
+ }
77
+
78
+ // Generates a class for each sprited image.
79
+ @mixin all-<%= name %>-sprites($dimensions: $<%= name %>-sprite-dimensions, $prefix: sprite-map-name($<%= name %>-sprites), $offset-x: 0, $offset-y: 0) {
80
+ @include <%= name %>-sprites(<%= sprite_names.join(" ") %>, $dimensions, $prefix, $offset-x, $offset-y);
81
81
  }
@@ -1,99 +1,99 @@
1
- module Compass
2
- module Stats
3
- class StatsVisitor
4
- attr_accessor :rule_count, :prop_count, :mixin_def_count, :mixin_count
5
- def initialize
6
- self.rule_count = 0
7
- self.prop_count = 0
8
- self.mixin_def_count = 0
9
- self.mixin_count = 0
10
- end
11
- def visit(node)
12
- self.prop_count += 1 if node.is_a?(Sass::Tree::PropNode) && !node.children.any?
13
- if node.is_a?(Sass::Tree::RuleNode)
14
- self.rule_count += node.rule.reject{|r| r.is_a?(Sass::Script::Node)}.map{|r| r.split(/,/)}.flatten.compact.size
15
- end
16
- self.mixin_def_count += 1 if node.is_a?(Sass::Tree::MixinDefNode)
17
- self.mixin_count += 1 if node.is_a?(Sass::Tree::MixinNode)
18
- end
19
- def up(node)
20
- end
21
- def down(node)
22
- end
23
- def import?(node)
24
- return false
25
- full_filename = node.send(:import)
26
- full_filename != Compass.deprojectize(full_filename)
27
- end
28
- end
29
- class CssFile
30
- attr_accessor :path, :css
31
- attr_accessor :selector_count, :prop_count
32
- attr_accessor :file_size
33
- def initialize(path)
34
- require 'css_parser'
35
- self.path = path
36
- self.css = CssParser::Parser.new
37
- self.css.add_block!(contents)
38
- self.selector_count = 0
39
- self.prop_count = 0
40
- end
41
- def contents
42
- @contents ||= File.read(path)
43
- end
44
- def lines
45
- contents.inject(0){|m,c| m + 1 }
46
- end
47
- def analyze!
48
- self.file_size = File.size(path)
49
- css.each_selector do |selector, declarations, specificity|
50
- sels = selector.split(/,/).size
51
- props = declarations.split(/;/).size
52
- self.selector_count += sels
53
- self.prop_count += props
54
- end
55
- end
56
- end
57
- class SassFile
58
- attr_accessor :path
59
- attr_reader :visitor
60
- attr_accessor :file_size
61
-
62
- def initialize(path)
63
- self.path = path
64
- end
65
- def contents
66
- @contents ||= File.read(path)
67
- end
68
- def tree
69
- opts = Compass.configuration.to_sass_engine_options
70
- opts[:syntax] = path[-4..-1].to_sym
71
- @tree = Sass::Engine.new(contents, opts).to_tree
72
- end
73
- def visit_tree!
74
- @visitor = StatsVisitor.new
75
- tree.visit_depth_first(@visitor)
76
- @visitor
77
- end
78
- def analyze!
79
- self.file_size = File.size(path)
80
- visit_tree!
81
- end
82
- def lines
83
- contents.inject(0){|m,c| m + 1 }
84
- end
85
- def rule_count
86
- visitor.rule_count
87
- end
88
- def prop_count
89
- visitor.prop_count
90
- end
91
- def mixin_def_count
92
- visitor.mixin_def_count
93
- end
94
- def mixin_count
95
- visitor.mixin_count
96
- end
97
- end
98
- end
99
- end
1
+ module Compass
2
+ module Stats
3
+ class StatsVisitor
4
+ attr_accessor :rule_count, :prop_count, :mixin_def_count, :mixin_count
5
+ def initialize
6
+ self.rule_count = 0
7
+ self.prop_count = 0
8
+ self.mixin_def_count = 0
9
+ self.mixin_count = 0
10
+ end
11
+ def visit(node)
12
+ self.prop_count += 1 if node.is_a?(Sass::Tree::PropNode) && !node.children.any?
13
+ if node.is_a?(Sass::Tree::RuleNode)
14
+ self.rule_count += node.rule.reject{|r| r.is_a?(Sass::Script::Node)}.map{|r| r.split(/,/)}.flatten.compact.size
15
+ end
16
+ self.mixin_def_count += 1 if node.is_a?(Sass::Tree::MixinDefNode)
17
+ self.mixin_count += 1 if node.is_a?(Sass::Tree::MixinNode)
18
+ end
19
+ def up(node)
20
+ end
21
+ def down(node)
22
+ end
23
+ def import?(node)
24
+ return false
25
+ full_filename = node.send(:import)
26
+ full_filename != Compass.deprojectize(full_filename)
27
+ end
28
+ end
29
+ class CssFile
30
+ attr_accessor :path, :css
31
+ attr_accessor :selector_count, :prop_count
32
+ attr_accessor :file_size
33
+ def initialize(path)
34
+ require 'css_parser'
35
+ self.path = path
36
+ self.css = CssParser::Parser.new
37
+ self.css.add_block!(contents)
38
+ self.selector_count = 0
39
+ self.prop_count = 0
40
+ end
41
+ def contents
42
+ @contents ||= File.read(path)
43
+ end
44
+ def lines
45
+ contents.inject(0){|m,c| m + 1 }
46
+ end
47
+ def analyze!
48
+ self.file_size = File.size(path)
49
+ css.each_selector do |selector, declarations, specificity|
50
+ sels = selector.split(/,/).size
51
+ props = declarations.split(/;/).size
52
+ self.selector_count += sels
53
+ self.prop_count += props
54
+ end
55
+ end
56
+ end
57
+ class SassFile
58
+ attr_accessor :path
59
+ attr_reader :visitor
60
+ attr_accessor :file_size
61
+
62
+ def initialize(path)
63
+ self.path = path
64
+ end
65
+ def contents
66
+ @contents ||= File.read(path)
67
+ end
68
+ def tree
69
+ opts = Compass.configuration.to_sass_engine_options
70
+ opts[:syntax] = path[-4..-1].to_sym
71
+ @tree = Sass::Engine.new(contents, opts).to_tree
72
+ end
73
+ def visit_tree!
74
+ @visitor = StatsVisitor.new
75
+ tree.visit_depth_first(@visitor)
76
+ @visitor
77
+ end
78
+ def analyze!
79
+ self.file_size = File.size(path)
80
+ visit_tree!
81
+ end
82
+ def lines
83
+ contents.inject(0){|m,c| m + 1 }
84
+ end
85
+ def rule_count
86
+ visitor.rule_count
87
+ end
88
+ def prop_count
89
+ visitor.prop_count
90
+ end
91
+ def mixin_def_count
92
+ visitor.mixin_def_count
93
+ end
94
+ def mixin_count
95
+ visitor.mixin_count
96
+ end
97
+ end
98
+ end
99
+ end