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.
- checksums.yaml +4 -4
- data/LICENSE.markdown +29 -29
- data/README.markdown +39 -39
- data/Rakefile +157 -157
- data/VERSION.yml +5 -5
- data/bin/compass +45 -45
- data/examples/README.markdown +3 -3
- data/examples/blueprint_default/config.rb +7 -7
- data/examples/blueprint_default/index.html.haml +85 -85
- data/examples/blueprint_default/parts/elements.html.haml +282 -282
- data/examples/blueprint_default/parts/forms.html.haml +200 -200
- data/examples/blueprint_default/parts/grid.html.haml +274 -274
- data/examples/blueprint_default/src/ie.scss +3 -3
- data/examples/blueprint_default/src/print.scss +3 -3
- data/examples/blueprint_default/src/screen.scss +9 -9
- data/examples/blueprint_plugins/config.rb +8 -8
- data/examples/blueprint_plugins/index.html.haml +96 -96
- data/examples/blueprint_plugins/plugins/buttons.html.haml +67 -67
- data/examples/blueprint_plugins/plugins/fancy_type.html.haml +100 -100
- data/examples/blueprint_plugins/plugins/link_icons.html.haml +61 -61
- data/examples/blueprint_plugins/plugins/rtl.html.haml +100 -100
- data/examples/blueprint_plugins/src/buttons.scss +47 -47
- data/examples/blueprint_plugins/src/ie.scss +3 -3
- data/examples/blueprint_plugins/src/link_icons.scss +13 -13
- data/examples/blueprint_plugins/src/print.scss +3 -3
- data/examples/blueprint_plugins/src/rtl_screen.scss +15 -15
- data/examples/blueprint_plugins/src/screen.scss +12 -12
- data/examples/blueprint_scoped/src/ie.scss +4 -4
- data/examples/blueprint_scoped/src/print.scss +4 -4
- data/examples/blueprint_scoped/src/screen.scss +5 -5
- data/examples/blueprint_scoped_form/src/ie.scss +3 -3
- data/examples/blueprint_scoped_form/src/print.scss +3 -3
- data/examples/blueprint_scoped_form/src/screen.scss +15 -15
- data/examples/blueprint_semantic/config.rb +7 -7
- data/examples/blueprint_semantic/index.html.haml +86 -86
- data/examples/blueprint_semantic/parts/fancy_type.html.haml +100 -100
- data/examples/blueprint_semantic/parts/liquid.html.haml +100 -100
- data/examples/blueprint_semantic/src/ie.scss +3 -3
- data/examples/blueprint_semantic/src/liquid.scss +69 -69
- data/examples/blueprint_semantic/src/print.scss +3 -3
- data/examples/blueprint_semantic/src/screen.scss +69 -69
- data/examples/compass/bootstrap.rb +3 -3
- data/examples/compass/clean.rb +1 -1
- data/examples/compass/compass.html.haml +39 -39
- data/examples/compass/config.rb +8 -8
- data/examples/compass/pie.html.haml +73 -73
- data/examples/compass/sprites.html.haml +37 -37
- data/examples/compass/src/bp_layout.scss +18 -18
- data/examples/compass/src/compass.scss +46 -46
- data/examples/compass/src/pie.scss +110 -110
- data/examples/compass/src/sprites.scss +24 -24
- data/examples/compass/src/sticky_footer.scss +11 -11
- data/examples/compass/src/utilities.scss +108 -108
- data/examples/compass/sticky_footer.html.haml +13 -13
- data/examples/compass/utilities.html.haml +189 -189
- data/examples/css3/bootstrap.rb +3 -3
- data/examples/css3/clean.rb +2 -2
- data/examples/css3/config.rb +6 -6
- data/examples/css3/extensions/fancy-fonts/templates/project/fancy-fonts.sass +10 -10
- data/examples/css3/extensions/fancy-fonts/templates/project/manifest.rb +6 -6
- data/examples/css3/gradients.html.haml +68 -68
- data/examples/css3/index.html.haml +57 -57
- data/examples/css3/src/_base.scss +13 -13
- data/examples/css3/src/fancy-fonts.scss +13 -13
- data/examples/css3/src/gradients.scss +85 -85
- data/examples/css3/src/main.scss +108 -108
- data/examples/downloader.rb +58 -58
- data/examples/ninesixty/bootstrap.rb +4 -4
- data/examples/ninesixty/clean.rb +1 -1
- data/examples/ninesixty/config.rb +9 -9
- data/examples/ninesixty/src/grid.scss +15 -15
- data/examples/ninesixty/src/text.scss +8 -8
- data/examples/susy/bootstrap.rb +3 -3
- data/examples/susy/clean.rb +1 -1
- data/examples/susy/config.rb +9 -9
- data/examples/susy/src/_base.scss +61 -61
- data/examples/susy/src/_defaults.scss +140 -140
- data/examples/susy/src/screen.scss +100 -100
- data/examples/yui/bootstrap.rb +2 -2
- data/examples/yui/clean.rb +1 -1
- data/examples/yui/divisions.html.haml +179 -179
- data/examples/yui/index.html.haml +19 -19
- data/examples/yui/src/screen.scss +13 -13
- data/examples/yui/sub_divisions.html.haml +169 -169
- data/examples/yui/templates.html.haml +54 -54
- data/examples/yui/typography.html.haml +132 -132
- data/features/command_line.feature +292 -292
- data/features/extensions.feature +27 -27
- data/features/step_definitions/command_line_steps.rb +268 -268
- data/features/step_definitions/extension_steps.rb +24 -24
- data/frameworks/blueprint/stylesheets/_blueprint.scss +37 -37
- data/frameworks/blueprint/stylesheets/blueprint/_buttons.scss +100 -100
- data/frameworks/blueprint/stylesheets/blueprint/_colors.scss +36 -36
- data/frameworks/blueprint/stylesheets/blueprint/_debug.scss +28 -28
- data/frameworks/blueprint/stylesheets/blueprint/_fancy-type.scss +88 -88
- data/frameworks/blueprint/stylesheets/blueprint/_form.scss +66 -66
- data/frameworks/blueprint/stylesheets/blueprint/_grid.scss +258 -258
- data/frameworks/blueprint/stylesheets/blueprint/_ie.scss +111 -111
- data/frameworks/blueprint/stylesheets/blueprint/_interaction.scss +66 -66
- data/frameworks/blueprint/stylesheets/blueprint/_link-icons.scss +37 -37
- data/frameworks/blueprint/stylesheets/blueprint/_liquid.scss +152 -152
- data/frameworks/blueprint/stylesheets/blueprint/_print.scss +86 -86
- data/frameworks/blueprint/stylesheets/blueprint/_reset.scss +2 -2
- data/frameworks/blueprint/stylesheets/blueprint/_rtl.scss +121 -121
- data/frameworks/blueprint/stylesheets/blueprint/_scaffolding.scss +52 -52
- data/frameworks/blueprint/stylesheets/blueprint/_typography.scss +90 -90
- data/frameworks/blueprint/stylesheets/blueprint/_utilities.scss +37 -37
- data/frameworks/blueprint/stylesheets/blueprint/reset/_utilities.scss +83 -83
- data/frameworks/blueprint/templates/basic/ie.sass +4 -4
- data/frameworks/blueprint/templates/basic/manifest.rb +30 -30
- data/frameworks/blueprint/templates/basic/partials/_base.sass +10 -10
- data/frameworks/blueprint/templates/basic/print.sass +4 -4
- data/frameworks/blueprint/templates/basic/screen.sass +12 -12
- data/frameworks/blueprint/templates/buttons/buttons.sass +49 -49
- data/frameworks/blueprint/templates/buttons/buttons/cross.png +0 -0
- data/frameworks/blueprint/templates/buttons/buttons/key.png +0 -0
- data/frameworks/blueprint/templates/buttons/buttons/tick.png +0 -0
- data/frameworks/blueprint/templates/buttons/manifest.rb +17 -17
- data/frameworks/blueprint/templates/link_icons/link_icons.sass +13 -13
- data/frameworks/blueprint/templates/link_icons/manifest.rb +23 -23
- data/frameworks/blueprint/templates/project/ie.sass +16 -16
- data/frameworks/blueprint/templates/project/manifest.rb +30 -30
- data/frameworks/blueprint/templates/project/partials/_base.sass +11 -11
- data/frameworks/blueprint/templates/project/print.sass +7 -7
- data/frameworks/blueprint/templates/project/screen.sass +46 -46
- data/frameworks/blueprint/templates/semantic/ie.sass +16 -16
- data/frameworks/blueprint/templates/semantic/manifest.rb +33 -33
- data/frameworks/blueprint/templates/semantic/partials/_base.sass +10 -10
- data/frameworks/blueprint/templates/semantic/partials/_form.sass +5 -5
- data/frameworks/blueprint/templates/semantic/partials/_page.sass +17 -17
- data/frameworks/blueprint/templates/semantic/partials/_two_col.sass +38 -38
- data/frameworks/blueprint/templates/semantic/print.sass +4 -4
- data/frameworks/blueprint/templates/semantic/screen.sass +14 -14
- data/frameworks/compass/stylesheets/_compass.scss +3 -3
- data/frameworks/compass/stylesheets/_lemonade.scss +37 -37
- data/frameworks/compass/stylesheets/compass/_css3.scss +20 -20
- data/frameworks/compass/stylesheets/compass/_layout.scss +3 -3
- data/frameworks/compass/stylesheets/compass/_reset-legacy.scss +3 -3
- data/frameworks/compass/stylesheets/compass/_reset.scss +3 -3
- data/frameworks/compass/stylesheets/compass/_support.scss +40 -40
- data/frameworks/compass/stylesheets/compass/_typography.scss +4 -4
- data/frameworks/compass/stylesheets/compass/_utilities.scss +9 -9
- data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +17 -17
- data/frameworks/compass/stylesheets/compass/css3/_background-clip.scss +43 -43
- data/frameworks/compass/stylesheets/compass/css3/_background-origin.scss +42 -42
- data/frameworks/compass/stylesheets/compass/css3/_background-size.scss +26 -26
- data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +130 -130
- data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +76 -76
- data/frameworks/compass/stylesheets/compass/css3/_box-sizing.scss +13 -13
- data/frameworks/compass/stylesheets/compass/css3/_box.scss +111 -111
- data/frameworks/compass/stylesheets/compass/css3/_columns.scss +156 -156
- data/frameworks/compass/stylesheets/compass/css3/_filter.scss +23 -23
- data/frameworks/compass/stylesheets/compass/css3/_font-face.scss +48 -48
- data/frameworks/compass/stylesheets/compass/css3/_hyphenation.scss +77 -77
- data/frameworks/compass/stylesheets/compass/css3/_images.scss +132 -132
- data/frameworks/compass/stylesheets/compass/css3/_inline-block.scss +22 -22
- data/frameworks/compass/stylesheets/compass/css3/_opacity.scss +19 -19
- data/frameworks/compass/stylesheets/compass/css3/_pie.scss +72 -72
- data/frameworks/compass/stylesheets/compass/css3/_regions.scss +21 -21
- data/frameworks/compass/stylesheets/compass/css3/_shared.scss +38 -38
- data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +87 -87
- data/frameworks/compass/stylesheets/compass/css3/_transform-legacy.scss +87 -87
- data/frameworks/compass/stylesheets/compass/css3/_transform.scss +598 -598
- data/frameworks/compass/stylesheets/compass/css3/_transition.scss +221 -221
- data/frameworks/compass/stylesheets/compass/css3/_user-interface.scss +17 -17
- data/frameworks/compass/stylesheets/compass/layout/_grid-background.scss +178 -178
- data/frameworks/compass/stylesheets/compass/layout/_sticky-footer.scss +23 -23
- data/frameworks/compass/stylesheets/compass/layout/_stretching.scss +23 -23
- data/frameworks/compass/stylesheets/compass/reset/_utilities-legacy.scss +135 -135
- data/frameworks/compass/stylesheets/compass/reset/_utilities.scss +142 -142
- data/frameworks/compass/stylesheets/compass/typography/_links.scss +3 -3
- data/frameworks/compass/stylesheets/compass/typography/_lists.scss +4 -4
- data/frameworks/compass/stylesheets/compass/typography/_text.scss +4 -4
- data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +221 -221
- data/frameworks/compass/stylesheets/compass/typography/links/_hover-link.scss +5 -5
- data/frameworks/compass/stylesheets/compass/typography/links/_link-colors.scss +28 -28
- data/frameworks/compass/stylesheets/compass/typography/links/_unstyled-link.scss +7 -7
- data/frameworks/compass/stylesheets/compass/typography/lists/_bullets.scss +34 -34
- data/frameworks/compass/stylesheets/compass/typography/lists/_horizontal-list.scss +61 -61
- data/frameworks/compass/stylesheets/compass/typography/lists/_inline-block-list.scss +50 -50
- data/frameworks/compass/stylesheets/compass/typography/lists/_inline-list.scss +44 -44
- data/frameworks/compass/stylesheets/compass/typography/text/_ellipsis.scss +25 -25
- data/frameworks/compass/stylesheets/compass/typography/text/_force-wrap.scss +12 -12
- data/frameworks/compass/stylesheets/compass/typography/text/_nowrap.scss +2 -2
- data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +68 -68
- data/frameworks/compass/stylesheets/compass/utilities/_general.scss +6 -6
- data/frameworks/compass/stylesheets/compass/utilities/_links.scss +5 -5
- data/frameworks/compass/stylesheets/compass/utilities/_lists.scss +6 -6
- data/frameworks/compass/stylesheets/compass/utilities/_print.scss +17 -17
- data/frameworks/compass/stylesheets/compass/utilities/_sprites.scss +2 -2
- data/frameworks/compass/stylesheets/compass/utilities/_tables.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/_text.scss +5 -5
- data/frameworks/compass/stylesheets/compass/utilities/color/_contrast.scss +27 -27
- data/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss +44 -44
- data/frameworks/compass/stylesheets/compass/utilities/general/_float.scss +29 -29
- data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +46 -46
- data/frameworks/compass/stylesheets/compass/utilities/general/_min.scss +16 -16
- data/frameworks/compass/stylesheets/compass/utilities/general/_reset.scss +1 -1
- data/frameworks/compass/stylesheets/compass/utilities/general/_tabs.scss +1 -1
- data/frameworks/compass/stylesheets/compass/utilities/general/_tag-cloud.scss +18 -18
- data/frameworks/compass/stylesheets/compass/utilities/links/_hover-link.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/links/_link-colors.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/links/_unstyled-link.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_bullets.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_horizontal-list.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-block-list.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-list.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/sprites/_base.scss +65 -65
- data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite-img.scss +78 -78
- data/frameworks/compass/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +22 -22
- data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.scss +33 -33
- data/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.scss +9 -9
- data/frameworks/compass/stylesheets/compass/utilities/text/_ellipsis.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/text/_nowrap.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/text/_replacement.scss +3 -3
- data/frameworks/compass/templates/ellipsis/ellipsis.sass +8 -8
- data/frameworks/compass/templates/ellipsis/manifest.rb +26 -26
- data/frameworks/compass/templates/ellipsis/xml/ellipsis.xml +13 -13
- data/frameworks/compass/templates/extension/manifest.rb +26 -26
- data/frameworks/compass/templates/extension/stylesheets/main.sass +1 -1
- data/frameworks/compass/templates/extension/templates/project/manifest.rb +2 -2
- data/frameworks/compass/templates/extension/templates/project/screen.sass +1 -1
- data/frameworks/compass/templates/pie/LICENSE +12 -12
- data/frameworks/compass/templates/pie/LICENSE-APACHE2.txt +13 -13
- data/frameworks/compass/templates/pie/LICENSE-GPL2.txt +277 -277
- data/frameworks/compass/templates/pie/PIE.htc +96 -96
- data/frameworks/compass/templates/pie/manifest.rb +39 -39
- data/frameworks/compass/templates/pie/pie.scss +73 -73
- data/frameworks/compass/templates/project/USAGE.markdown +32 -32
- data/frameworks/compass/templates/project/ie.sass +6 -6
- data/frameworks/compass/templates/project/manifest.rb +3 -3
- data/frameworks/compass/templates/project/print.sass +6 -6
- data/frameworks/compass/templates/project/screen.sass +7 -7
- data/lib/compass.rb +37 -37
- data/lib/compass/actions.rb +115 -115
- data/lib/compass/app_integration.rb +39 -39
- data/lib/compass/app_integration/rails.rb +18 -18
- data/lib/compass/app_integration/stand_alone.rb +22 -22
- data/lib/compass/app_integration/stand_alone/configuration_defaults.rb +32 -32
- data/lib/compass/app_integration/stand_alone/installer.rb +83 -83
- data/lib/compass/browser_support.rb +62 -62
- data/lib/compass/commands.rb +12 -12
- data/lib/compass/commands/base.rb +44 -44
- data/lib/compass/commands/clean_project.rb +79 -79
- data/lib/compass/commands/create_project.rb +131 -131
- data/lib/compass/commands/default.rb +50 -50
- data/lib/compass/commands/extension_command.rb +60 -60
- data/lib/compass/commands/generate_grid_background.rb +96 -96
- data/lib/compass/commands/help.rb +85 -85
- data/lib/compass/commands/imports.rb +35 -35
- data/lib/compass/commands/installer_command.rb +32 -32
- data/lib/compass/commands/interactive.rb +61 -61
- data/lib/compass/commands/list_frameworks.rb +38 -38
- data/lib/compass/commands/print_version.rb +99 -99
- data/lib/compass/commands/project_base.rb +103 -103
- data/lib/compass/commands/project_stats.rb +178 -178
- data/lib/compass/commands/project_structure.rb +93 -93
- data/lib/compass/commands/registry.rb +40 -40
- data/lib/compass/commands/sprite.rb +89 -89
- data/lib/compass/commands/stamp_pattern.rb +90 -90
- data/lib/compass/commands/unpack_extension.rb +120 -120
- data/lib/compass/commands/update_project.rb +139 -139
- data/lib/compass/commands/validate_project.rb +77 -77
- data/lib/compass/commands/watch_project.rb +170 -170
- data/lib/compass/commands/write_configuration.rb +125 -125
- data/lib/compass/compiler.rb +200 -200
- data/lib/compass/configuration.rb +91 -91
- data/lib/compass/configuration/adapters.rb +77 -77
- data/lib/compass/configuration/comments.rb +59 -59
- data/lib/compass/configuration/data.rb +193 -193
- data/lib/compass/configuration/defaults.rb +187 -187
- data/lib/compass/configuration/file_data.rb +21 -21
- data/lib/compass/configuration/helpers.rb +160 -160
- data/lib/compass/configuration/inheritance.rb +304 -304
- data/lib/compass/configuration/paths.rb +19 -19
- data/lib/compass/configuration/serialization.rb +88 -88
- data/lib/compass/dependencies.rb +12 -12
- data/lib/compass/errors.rb +11 -11
- data/lib/compass/exec.rb +23 -23
- data/lib/compass/exec/command_option_parser.rb +23 -23
- data/lib/compass/exec/global_options_parser.rb +63 -63
- data/lib/compass/exec/helpers.rb +21 -21
- data/lib/compass/exec/project_options_parser.rb +66 -66
- data/lib/compass/exec/sub_command_ui.rb +51 -51
- data/lib/compass/exec/switch_ui.rb +179 -179
- data/lib/compass/frameworks.rb +133 -133
- data/lib/compass/grid_builder.rb +102 -102
- data/lib/compass/installers.rb +3 -3
- data/lib/compass/installers/bare_installer.rb +58 -58
- data/lib/compass/installers/base.rb +187 -187
- data/lib/compass/installers/manifest.rb +161 -161
- data/lib/compass/installers/manifest_installer.rb +61 -61
- data/lib/compass/installers/template_context.rb +43 -43
- data/lib/compass/logger.rb +103 -103
- data/lib/compass/quick_cache.rb +15 -15
- data/lib/compass/rails.rb +2 -2
- data/lib/compass/sass_extensions.rb +10 -10
- data/lib/compass/sass_extensions/functions.rb +34 -34
- data/lib/compass/sass_extensions/functions/colors.rb +67 -67
- data/lib/compass/sass_extensions/functions/constants.rb +74 -74
- data/lib/compass/sass_extensions/functions/cross_browser_support.rb +70 -70
- data/lib/compass/sass_extensions/functions/display.rb +27 -27
- data/lib/compass/sass_extensions/functions/enumerate.rb +6 -6
- data/lib/compass/sass_extensions/functions/env.rb +5 -5
- data/lib/compass/sass_extensions/functions/font_files.rb +41 -41
- data/lib/compass/sass_extensions/functions/gradient_support.rb +540 -540
- data/lib/compass/sass_extensions/functions/image_size.rb +113 -113
- data/lib/compass/sass_extensions/functions/inline_image.rb +64 -64
- data/lib/compass/sass_extensions/functions/lists.rb +101 -101
- data/lib/compass/sass_extensions/functions/math.rb +63 -63
- data/lib/compass/sass_extensions/functions/selectors.rb +63 -63
- data/lib/compass/sass_extensions/functions/sprites.rb +218 -218
- data/lib/compass/sass_extensions/functions/urls.rb +266 -266
- data/lib/compass/sass_extensions/monkey_patches.rb +3 -3
- data/lib/compass/sass_extensions/monkey_patches/browser_support.rb +95 -95
- data/lib/compass/sass_extensions/monkey_patches/traversal.rb +23 -23
- data/lib/compass/sass_extensions/sprites.rb +19 -19
- data/lib/compass/sass_extensions/sprites/engines.rb +25 -25
- data/lib/compass/sass_extensions/sprites/engines/chunky_png_engine.rb +30 -30
- data/lib/compass/sass_extensions/sprites/image.rb +151 -151
- data/lib/compass/sass_extensions/sprites/image_methods.rb +31 -31
- data/lib/compass/sass_extensions/sprites/image_row.rb +46 -46
- data/lib/compass/sass_extensions/sprites/layout_methods.rb +158 -158
- data/lib/compass/sass_extensions/sprites/row_fitter.rb +91 -91
- data/lib/compass/sass_extensions/sprites/sprite_map.rb +86 -86
- data/lib/compass/sass_extensions/sprites/sprite_methods.rb +141 -141
- data/lib/compass/sprite_importer.rb +116 -116
- data/lib/compass/sprite_importer/binding.rb +10 -10
- data/lib/compass/sprite_importer/content.erb +80 -80
- data/lib/compass/stats.rb +99 -99
- data/lib/compass/test_case.rb +38 -38
- data/lib/compass/util.rb +29 -29
- data/lib/compass/validator.rb +16 -16
- data/lib/compass/version.rb +60 -60
- data/test/fixtures/extensions/only_stylesheets/compass_init.rb +1 -1
- data/test/fixtures/extensions/only_stylesheets/scss/only_stylesheets/foo.scss +3 -3
- data/test/fixtures/fonts/bgrove.base64.txt +1 -1
- data/test/fixtures/fonts/bgrove.ttf +0 -0
- data/test/fixtures/sprites/public/images/ko/starbg26x27.png +0 -0
- data/test/fixtures/stylesheets/blueprint/config.rb +14 -14
- data/test/fixtures/stylesheets/blueprint/css/ie.css +76 -76
- data/test/fixtures/stylesheets/blueprint/css/print.css +56 -56
- data/test/fixtures/stylesheets/blueprint/css/screen.css +815 -815
- data/test/fixtures/stylesheets/blueprint/css/single-imports/buttons.css +56 -56
- data/test/fixtures/stylesheets/blueprint/css/single-imports/colors.css +80 -80
- data/test/fixtures/stylesheets/blueprint/css/single-imports/debug.css +11 -11
- data/test/fixtures/stylesheets/blueprint/css/single-imports/fancy-type.css +30 -30
- data/test/fixtures/stylesheets/blueprint/css/single-imports/form.css +42 -42
- data/test/fixtures/stylesheets/blueprint/css/single-imports/grid.css +435 -435
- data/test/fixtures/stylesheets/blueprint/css/single-imports/ie.css +76 -76
- data/test/fixtures/stylesheets/blueprint/css/single-imports/interaction.css +46 -46
- data/test/fixtures/stylesheets/blueprint/css/single-imports/link-icons.css +40 -40
- data/test/fixtures/stylesheets/blueprint/css/single-imports/liquid.css +651 -651
- data/test/fixtures/stylesheets/blueprint/css/single-imports/print.css +60 -60
- data/test/fixtures/stylesheets/blueprint/css/single-imports/reset-utilities.css +75 -75
- data/test/fixtures/stylesheets/blueprint/css/single-imports/reset.css +42 -42
- data/test/fixtures/stylesheets/blueprint/css/single-imports/rtl.css +437 -437
- data/test/fixtures/stylesheets/blueprint/css/single-imports/scaffolding.css +45 -45
- data/test/fixtures/stylesheets/blueprint/css/single-imports/typography.css +146 -146
- data/test/fixtures/stylesheets/blueprint/css/single-imports/utilities.css +35 -35
- data/test/fixtures/stylesheets/blueprint/sass/ie.sass +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/print.sass +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/screen.sass +18 -18
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/buttons.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/colors.scss +34 -34
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/debug.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/fancy-type.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/form.scss +4 -4
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/grid.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/ie.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/interaction.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/link-icons.scss +12 -12
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/liquid.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/print.scss +4 -4
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset-utilities.scss +4 -4
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset.scss +1 -1
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/rtl.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/scaffolding.scss +5 -5
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/typography.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/utilities.scss +3 -3
- data/test/fixtures/stylesheets/busted_image_urls/config.rb +29 -29
- data/test/fixtures/stylesheets/busted_image_urls/css/screen.css +9 -9
- data/test/fixtures/stylesheets/busted_image_urls/sass/screen.sass +13 -13
- data/test/fixtures/stylesheets/compass/config.rb +16 -16
- data/test/fixtures/stylesheets/compass/css/background-clip.css +10 -10
- data/test/fixtures/stylesheets/compass/css/border_radius.css +14 -14
- data/test/fixtures/stylesheets/compass/css/box-sizeing.css +9 -9
- data/test/fixtures/stylesheets/compass/css/box.css +103 -103
- data/test/fixtures/stylesheets/compass/css/box_shadow.css +14 -14
- data/test/fixtures/stylesheets/compass/css/columns.css +161 -161
- data/test/fixtures/stylesheets/compass/css/filters.css +29 -29
- data/test/fixtures/stylesheets/compass/css/fonts.css +4 -4
- data/test/fixtures/stylesheets/compass/css/force-wrap.css +9 -9
- data/test/fixtures/stylesheets/compass/css/gradients.css +202 -202
- data/test/fixtures/stylesheets/compass/css/grid_background.css +71 -71
- data/test/fixtures/stylesheets/compass/css/hyphenation.css +16 -16
- data/test/fixtures/stylesheets/compass/css/image_size.css +15 -15
- data/test/fixtures/stylesheets/compass/css/images.css +8 -8
- data/test/fixtures/stylesheets/compass/css/layout.css +16 -16
- data/test/fixtures/stylesheets/compass/css/legacy_clearfix.css +26 -26
- data/test/fixtures/stylesheets/compass/css/lists.css +151 -151
- data/test/fixtures/stylesheets/compass/css/opacity.css +3 -3
- data/test/fixtures/stylesheets/compass/css/pie.css +26 -26
- data/test/fixtures/stylesheets/compass/css/print.css +11 -11
- data/test/fixtures/stylesheets/compass/css/regions.css +7 -7
- data/test/fixtures/stylesheets/compass/css/replacement.css +59 -59
- data/test/fixtures/stylesheets/compass/css/reset.css +59 -59
- data/test/fixtures/stylesheets/compass/css/sprites.css +1262 -1262
- data/test/fixtures/stylesheets/compass/css/stretching.css +66 -66
- data/test/fixtures/stylesheets/compass/css/text_shadow.css +29 -29
- data/test/fixtures/stylesheets/compass/css/transform.css +441 -441
- data/test/fixtures/stylesheets/compass/css/transition.css +128 -128
- data/test/fixtures/stylesheets/compass/css/user-interface.css +4 -4
- data/test/fixtures/stylesheets/compass/css/utilities.css +56 -56
- data/test/fixtures/stylesheets/compass/css/vertical_rhythm.css +45 -45
- data/test/fixtures/stylesheets/compass/sass/background-clip.scss +7 -7
- data/test/fixtures/stylesheets/compass/sass/border_radius.scss +5 -5
- data/test/fixtures/stylesheets/compass/sass/box-sizeing.scss +7 -7
- data/test/fixtures/stylesheets/compass/sass/box.sass +49 -49
- data/test/fixtures/stylesheets/compass/sass/box_shadow.scss +5 -5
- data/test/fixtures/stylesheets/compass/sass/columns.scss +28 -28
- data/test/fixtures/stylesheets/compass/sass/filters.scss +24 -24
- data/test/fixtures/stylesheets/compass/sass/fonts.sass +2 -2
- data/test/fixtures/stylesheets/compass/sass/force-wrap.scss +3 -3
- data/test/fixtures/stylesheets/compass/sass/gradients.sass +96 -96
- data/test/fixtures/stylesheets/compass/sass/grid_background.scss +33 -33
- data/test/fixtures/stylesheets/compass/sass/hyphenation.scss +10 -10
- data/test/fixtures/stylesheets/compass/sass/image_size.sass +15 -15
- data/test/fixtures/stylesheets/compass/sass/images.scss +8 -8
- data/test/fixtures/stylesheets/compass/sass/layout.sass +3 -3
- data/test/fixtures/stylesheets/compass/sass/legacy_clearfix.scss +14 -14
- data/test/fixtures/stylesheets/compass/sass/lists.scss +11 -11
- data/test/fixtures/stylesheets/compass/sass/opacity.scss +5 -5
- data/test/fixtures/stylesheets/compass/sass/pie.scss +47 -47
- data/test/fixtures/stylesheets/compass/sass/print.sass +5 -5
- data/test/fixtures/stylesheets/compass/sass/regions.scss +3 -3
- data/test/fixtures/stylesheets/compass/sass/replacement.scss +22 -22
- data/test/fixtures/stylesheets/compass/sass/reset.sass +12 -12
- data/test/fixtures/stylesheets/compass/sass/sprites.scss +13 -13
- data/test/fixtures/stylesheets/compass/sass/stretching.sass +33 -33
- data/test/fixtures/stylesheets/compass/sass/text_shadow.scss +11 -11
- data/test/fixtures/stylesheets/compass/sass/transform.scss +87 -87
- data/test/fixtures/stylesheets/compass/sass/transition.scss +24 -24
- data/test/fixtures/stylesheets/compass/sass/user-interface.scss +4 -4
- data/test/fixtures/stylesheets/compass/sass/utilities.scss +20 -20
- data/test/fixtures/stylesheets/compass/sass/vertical_rhythm.scss +15 -15
- data/test/fixtures/stylesheets/envtest/config.rb +9 -9
- data/test/fixtures/stylesheets/envtest/css/env.css +2 -2
- data/test/fixtures/stylesheets/envtest/sass/env.scss +3 -3
- data/test/fixtures/stylesheets/error/config.rb +10 -10
- data/test/fixtures/stylesheets/error/sass/screen.sass +2 -2
- data/test/fixtures/stylesheets/image_urls/config.rb +19 -19
- data/test/fixtures/stylesheets/image_urls/css/screen.css +5 -5
- data/test/fixtures/stylesheets/image_urls/sass/screen.sass +8 -8
- data/test/fixtures/stylesheets/relative/config.rb +10 -10
- data/test/fixtures/stylesheets/relative/css/ie.css +1 -1
- data/test/fixtures/stylesheets/relative/css/print.css +1 -1
- data/test/fixtures/stylesheets/relative/css/screen.css +1 -1
- data/test/fixtures/stylesheets/relative/sass/ie.sass +5 -5
- data/test/fixtures/stylesheets/relative/sass/print.sass +3 -3
- data/test/fixtures/stylesheets/relative/sass/screen.sass +2 -2
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/config.rb +25 -25
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/ie.scss +5 -5
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/print.scss +3 -3
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/screen.scss +6 -6
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/ie.css +5 -5
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/print.css +3 -3
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/screen.css +68 -68
- data/test/fixtures/stylesheets/valid/config.rb +9 -9
- data/test/fixtures/stylesheets/valid/sass/simple.sass +1 -1
- data/test/helpers/command_line.rb +114 -114
- data/test/helpers/diff.rb +48 -48
- data/test/helpers/io.rb +36 -36
- data/test/helpers/rails.rb +55 -55
- data/test/helpers/test_case.rb +62 -62
- data/test/integrations/compass_test.rb +224 -224
- data/test/integrations/sprites_test.rb +843 -843
- data/test/test_helper.rb +73 -73
- data/test/units/actions_test.rb +23 -23
- data/test/units/command_line_test.rb +60 -60
- data/test/units/compass_module_test.rb +36 -36
- data/test/units/compass_png_test.rb +45 -45
- data/test/units/compiler_test.rb +10 -10
- data/test/units/configuration_test.rb +440 -440
- data/test/units/regressions_test.rb +35 -35
- data/test/units/sass_extensions_test.rb +198 -198
- data/test/units/sprites/engine_test.rb +47 -47
- data/test/units/sprites/image_row_test.rb +57 -57
- data/test/units/sprites/image_test.rb +99 -99
- data/test/units/sprites/importer_test.rb +90 -90
- data/test/units/sprites/layout_test.rb +154 -154
- data/test/units/sprites/row_fitter_test.rb +65 -65
- data/test/units/sprites/sprite_command_test.rb +54 -54
- data/test/units/sprites/sprite_map_test.rb +130 -130
- metadata +1304 -1310
@@ -1,193 +1,193 @@
|
|
1
|
-
module Compass
|
2
|
-
module Configuration
|
3
|
-
# The Compass configuration data storage class manages configuration data that comes from a variety of
|
4
|
-
# different sources and aggregates them together into a consistent API
|
5
|
-
# Some of the possible sources of configuration data:
|
6
|
-
# * Compass default project structure for stand alone projects
|
7
|
-
# * App framework specific project structures for rails, etc.
|
8
|
-
# * User supplied explicit configuration
|
9
|
-
# * Configuration data provided via the command line interface
|
10
|
-
#
|
11
|
-
# There are two kinds of configuration data that doesn't come from the user:
|
12
|
-
#
|
13
|
-
# 1. Configuration data that is defaulted as if the user had provided it themselves.
|
14
|
-
# This is useful for providing defaults that the user is likely to want to edit
|
15
|
-
# but shouldn't have to provide explicitly when getting started
|
16
|
-
# 2. Configuration data that is defaulted behind the scenes because _some_ value is
|
17
|
-
# required.
|
18
|
-
class Data
|
19
|
-
|
20
|
-
attr_reader :name
|
21
|
-
extend Sass::Callbacks
|
22
|
-
|
23
|
-
|
24
|
-
include Compass::Configuration::Inheritance
|
25
|
-
include Compass::Configuration::Serialization
|
26
|
-
include Compass::Configuration::Adapters
|
27
|
-
extend Compass::Configuration::Paths
|
28
|
-
|
29
|
-
# on_sprite_saved
|
30
|
-
# yields the filename
|
31
|
-
# usage: on_sprite_saved {|filename| do_something(filename) }
|
32
|
-
define_callback :sprite_saved
|
33
|
-
chained_method :run_sprite_saved
|
34
|
-
|
35
|
-
# on_sprite_generated
|
36
|
-
# yields 'ChunkyPNG::Image'
|
37
|
-
# usage: on_sprite_generated {|sprite_data| do_something(sprite_data) }
|
38
|
-
define_callback :sprite_generated
|
39
|
-
chained_method :run_sprite_generated
|
40
|
-
|
41
|
-
# on_sprite_removed
|
42
|
-
# yields the filename
|
43
|
-
# usage: on_sprite_removed {|filename| do_something(filename) }
|
44
|
-
define_callback :sprite_removed
|
45
|
-
chained_method :run_sprite_removed
|
46
|
-
|
47
|
-
# on_stylesheet_saved
|
48
|
-
# yields the filename
|
49
|
-
# usage: on_stylesheet_saved {|filename| do_something(filename) }
|
50
|
-
define_callback :stylesheet_saved
|
51
|
-
chained_method :run_stylesheet_saved
|
52
|
-
|
53
|
-
# on_stylesheet_error
|
54
|
-
# yields the filename & message
|
55
|
-
# usage: on_stylesheet_error {|filename, message| do_something(filename, message) }
|
56
|
-
define_callback :stylesheet_error
|
57
|
-
chained_method :run_stylesheet_error
|
58
|
-
|
59
|
-
inherited_accessor *ATTRIBUTES
|
60
|
-
|
61
|
-
strip_trailing_separator *ATTRIBUTES.select{|a| a.to_s =~ /dir|path/}
|
62
|
-
|
63
|
-
inherited_array *ARRAY_ATTRIBUTES
|
64
|
-
|
65
|
-
def initialize(name, attr_hash = nil)
|
66
|
-
raise "I need a name!" unless name
|
67
|
-
@name = name
|
68
|
-
set_all(attr_hash) if attr_hash
|
69
|
-
self.top_level = self
|
70
|
-
end
|
71
|
-
|
72
|
-
def set_all(attr_hash)
|
73
|
-
# assert_valid_keys!(attr_hash)
|
74
|
-
attr_hash.each do |a, v|
|
75
|
-
if self.respond_to?("#{a}=")
|
76
|
-
self.send("#{a}=", v)
|
77
|
-
end
|
78
|
-
end
|
79
|
-
end
|
80
|
-
|
81
|
-
def add_import_path(*paths)
|
82
|
-
paths.map!{|p| defined?(Pathname) && Pathname === p ? p.to_s : p}
|
83
|
-
# The @added_import_paths variable works around an issue where
|
84
|
-
# the additional_import_paths gets overwritten during parse
|
85
|
-
@added_import_paths ||= []
|
86
|
-
@added_import_paths += paths
|
87
|
-
self.additional_import_paths ||= []
|
88
|
-
self.additional_import_paths += paths
|
89
|
-
end
|
90
|
-
|
91
|
-
# When called with a block, defines the asset host url to be used.
|
92
|
-
# The block must return a string that starts with a protocol (E.g. http).
|
93
|
-
# The block will be passed the root-relative url of the asset.
|
94
|
-
# When called without a block, returns the block that was previously set.
|
95
|
-
def asset_host(&block)
|
96
|
-
@set_attributes ||= {}
|
97
|
-
if block_given?
|
98
|
-
@set_attributes[:asset_host] = true
|
99
|
-
@asset_host = block
|
100
|
-
else
|
101
|
-
if @asset_host
|
102
|
-
@asset_host
|
103
|
-
elsif inherited_data.respond_to?(:asset_host)
|
104
|
-
inherited_data.asset_host
|
105
|
-
end
|
106
|
-
end
|
107
|
-
end
|
108
|
-
|
109
|
-
# When called with a block, defines the cache buster strategy to be used.
|
110
|
-
# If the block returns nil or a string, then it is appended to the url as a query parameter.
|
111
|
-
# In this case, the returned string must not include the starting '?'.
|
112
|
-
# The block may also return a hash with :path and/or :query values and it
|
113
|
-
# will replace the original path and query string with the busted values returned.
|
114
|
-
# The block will be passed the root-relative url of the asset.
|
115
|
-
# If the block accepts two arguments, it will also be passed a File object
|
116
|
-
# that points to the asset on disk -- which may or may not exist.
|
117
|
-
# When called without a block, returns the block that was previously set.
|
118
|
-
#
|
119
|
-
# To disable the asset cache buster:
|
120
|
-
#
|
121
|
-
# asset_cache_buster :none
|
122
|
-
def asset_cache_buster(simple = nil, &block)
|
123
|
-
@set_attributes ||= {}
|
124
|
-
if block_given?
|
125
|
-
@set_attributes[:asset_cache_buster] = true
|
126
|
-
@asset_cache_buster = block
|
127
|
-
elsif !simple.nil?
|
128
|
-
if simple == :none
|
129
|
-
@set_attributes[:asset_cache_buster] = true
|
130
|
-
@asset_cache_buster = Proc.new {|_,_| nil}
|
131
|
-
else
|
132
|
-
raise ArgumentError, "Unexpected argument: #{simple.inspect}"
|
133
|
-
end
|
134
|
-
else
|
135
|
-
if set?(:asset_cache_buster)
|
136
|
-
@asset_cache_buster
|
137
|
-
elsif inherited_data.respond_to?(:asset_cache_buster)
|
138
|
-
inherited_data.asset_cache_buster
|
139
|
-
end
|
140
|
-
end
|
141
|
-
end
|
142
|
-
|
143
|
-
def watch(glob, &block)
|
144
|
-
@watches ||= []
|
145
|
-
@watches << [glob, block]
|
146
|
-
end
|
147
|
-
|
148
|
-
def watches
|
149
|
-
if defined?(@watches)
|
150
|
-
@watches
|
151
|
-
elsif inherited_data.respond_to?(:watches)
|
152
|
-
inherited_data.watches
|
153
|
-
else
|
154
|
-
[]
|
155
|
-
end
|
156
|
-
end
|
157
|
-
|
158
|
-
# Require a compass plugin and capture that it occured so that the configuration serialization works next time.
|
159
|
-
def require(lib)
|
160
|
-
(self.required_libraries ||= []) << lib
|
161
|
-
super
|
162
|
-
end
|
163
|
-
|
164
|
-
def load(framework_dir)
|
165
|
-
(self.loaded_frameworks ||= []) << framework_dir
|
166
|
-
Compass::Frameworks.register_directory framework_dir
|
167
|
-
end
|
168
|
-
|
169
|
-
# Finds all extensions within a directory and registers them.
|
170
|
-
def discover(frameworks_dir)
|
171
|
-
(self.framework_path ||= []) << frameworks_dir
|
172
|
-
Compass::Frameworks.discover frameworks_dir
|
173
|
-
end
|
174
|
-
|
175
|
-
def relative_assets?
|
176
|
-
# the http_images_path is deprecated, but here for backwards compatibility.
|
177
|
-
relative_assets || http_images_path == :relative
|
178
|
-
end
|
179
|
-
|
180
|
-
private
|
181
|
-
|
182
|
-
def assert_valid_keys!(attr_hash)
|
183
|
-
illegal_attrs = attr_hash.keys - ATTRIBUTES - ARRAY_ATTRIBUTES
|
184
|
-
if illegal_attrs.size == 1
|
185
|
-
raise Error, "#{illegal_attrs.first.inspect} is not a valid configuration attribute."
|
186
|
-
elsif illegal_attrs.size > 0
|
187
|
-
raise Error, "Illegal configuration attributes: #{illegal_attrs.map{|a| a.inspect}.join(", ")}"
|
188
|
-
end
|
189
|
-
end
|
190
|
-
|
191
|
-
end
|
192
|
-
end
|
193
|
-
end
|
1
|
+
module Compass
|
2
|
+
module Configuration
|
3
|
+
# The Compass configuration data storage class manages configuration data that comes from a variety of
|
4
|
+
# different sources and aggregates them together into a consistent API
|
5
|
+
# Some of the possible sources of configuration data:
|
6
|
+
# * Compass default project structure for stand alone projects
|
7
|
+
# * App framework specific project structures for rails, etc.
|
8
|
+
# * User supplied explicit configuration
|
9
|
+
# * Configuration data provided via the command line interface
|
10
|
+
#
|
11
|
+
# There are two kinds of configuration data that doesn't come from the user:
|
12
|
+
#
|
13
|
+
# 1. Configuration data that is defaulted as if the user had provided it themselves.
|
14
|
+
# This is useful for providing defaults that the user is likely to want to edit
|
15
|
+
# but shouldn't have to provide explicitly when getting started
|
16
|
+
# 2. Configuration data that is defaulted behind the scenes because _some_ value is
|
17
|
+
# required.
|
18
|
+
class Data
|
19
|
+
|
20
|
+
attr_reader :name
|
21
|
+
extend Sass::Callbacks
|
22
|
+
|
23
|
+
|
24
|
+
include Compass::Configuration::Inheritance
|
25
|
+
include Compass::Configuration::Serialization
|
26
|
+
include Compass::Configuration::Adapters
|
27
|
+
extend Compass::Configuration::Paths
|
28
|
+
|
29
|
+
# on_sprite_saved
|
30
|
+
# yields the filename
|
31
|
+
# usage: on_sprite_saved {|filename| do_something(filename) }
|
32
|
+
define_callback :sprite_saved
|
33
|
+
chained_method :run_sprite_saved
|
34
|
+
|
35
|
+
# on_sprite_generated
|
36
|
+
# yields 'ChunkyPNG::Image'
|
37
|
+
# usage: on_sprite_generated {|sprite_data| do_something(sprite_data) }
|
38
|
+
define_callback :sprite_generated
|
39
|
+
chained_method :run_sprite_generated
|
40
|
+
|
41
|
+
# on_sprite_removed
|
42
|
+
# yields the filename
|
43
|
+
# usage: on_sprite_removed {|filename| do_something(filename) }
|
44
|
+
define_callback :sprite_removed
|
45
|
+
chained_method :run_sprite_removed
|
46
|
+
|
47
|
+
# on_stylesheet_saved
|
48
|
+
# yields the filename
|
49
|
+
# usage: on_stylesheet_saved {|filename| do_something(filename) }
|
50
|
+
define_callback :stylesheet_saved
|
51
|
+
chained_method :run_stylesheet_saved
|
52
|
+
|
53
|
+
# on_stylesheet_error
|
54
|
+
# yields the filename & message
|
55
|
+
# usage: on_stylesheet_error {|filename, message| do_something(filename, message) }
|
56
|
+
define_callback :stylesheet_error
|
57
|
+
chained_method :run_stylesheet_error
|
58
|
+
|
59
|
+
inherited_accessor *ATTRIBUTES
|
60
|
+
|
61
|
+
strip_trailing_separator *ATTRIBUTES.select{|a| a.to_s =~ /dir|path/}
|
62
|
+
|
63
|
+
inherited_array *ARRAY_ATTRIBUTES
|
64
|
+
|
65
|
+
def initialize(name, attr_hash = nil)
|
66
|
+
raise "I need a name!" unless name
|
67
|
+
@name = name
|
68
|
+
set_all(attr_hash) if attr_hash
|
69
|
+
self.top_level = self
|
70
|
+
end
|
71
|
+
|
72
|
+
def set_all(attr_hash)
|
73
|
+
# assert_valid_keys!(attr_hash)
|
74
|
+
attr_hash.each do |a, v|
|
75
|
+
if self.respond_to?("#{a}=")
|
76
|
+
self.send("#{a}=", v)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
def add_import_path(*paths)
|
82
|
+
paths.map!{|p| defined?(Pathname) && Pathname === p ? p.to_s : p}
|
83
|
+
# The @added_import_paths variable works around an issue where
|
84
|
+
# the additional_import_paths gets overwritten during parse
|
85
|
+
@added_import_paths ||= []
|
86
|
+
@added_import_paths += paths
|
87
|
+
self.additional_import_paths ||= []
|
88
|
+
self.additional_import_paths += paths
|
89
|
+
end
|
90
|
+
|
91
|
+
# When called with a block, defines the asset host url to be used.
|
92
|
+
# The block must return a string that starts with a protocol (E.g. http).
|
93
|
+
# The block will be passed the root-relative url of the asset.
|
94
|
+
# When called without a block, returns the block that was previously set.
|
95
|
+
def asset_host(&block)
|
96
|
+
@set_attributes ||= {}
|
97
|
+
if block_given?
|
98
|
+
@set_attributes[:asset_host] = true
|
99
|
+
@asset_host = block
|
100
|
+
else
|
101
|
+
if @asset_host
|
102
|
+
@asset_host
|
103
|
+
elsif inherited_data.respond_to?(:asset_host)
|
104
|
+
inherited_data.asset_host
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
109
|
+
# When called with a block, defines the cache buster strategy to be used.
|
110
|
+
# If the block returns nil or a string, then it is appended to the url as a query parameter.
|
111
|
+
# In this case, the returned string must not include the starting '?'.
|
112
|
+
# The block may also return a hash with :path and/or :query values and it
|
113
|
+
# will replace the original path and query string with the busted values returned.
|
114
|
+
# The block will be passed the root-relative url of the asset.
|
115
|
+
# If the block accepts two arguments, it will also be passed a File object
|
116
|
+
# that points to the asset on disk -- which may or may not exist.
|
117
|
+
# When called without a block, returns the block that was previously set.
|
118
|
+
#
|
119
|
+
# To disable the asset cache buster:
|
120
|
+
#
|
121
|
+
# asset_cache_buster :none
|
122
|
+
def asset_cache_buster(simple = nil, &block)
|
123
|
+
@set_attributes ||= {}
|
124
|
+
if block_given?
|
125
|
+
@set_attributes[:asset_cache_buster] = true
|
126
|
+
@asset_cache_buster = block
|
127
|
+
elsif !simple.nil?
|
128
|
+
if simple == :none
|
129
|
+
@set_attributes[:asset_cache_buster] = true
|
130
|
+
@asset_cache_buster = Proc.new {|_,_| nil}
|
131
|
+
else
|
132
|
+
raise ArgumentError, "Unexpected argument: #{simple.inspect}"
|
133
|
+
end
|
134
|
+
else
|
135
|
+
if set?(:asset_cache_buster)
|
136
|
+
@asset_cache_buster
|
137
|
+
elsif inherited_data.respond_to?(:asset_cache_buster)
|
138
|
+
inherited_data.asset_cache_buster
|
139
|
+
end
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
def watch(glob, &block)
|
144
|
+
@watches ||= []
|
145
|
+
@watches << [glob, block]
|
146
|
+
end
|
147
|
+
|
148
|
+
def watches
|
149
|
+
if defined?(@watches)
|
150
|
+
@watches
|
151
|
+
elsif inherited_data.respond_to?(:watches)
|
152
|
+
inherited_data.watches
|
153
|
+
else
|
154
|
+
[]
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
# Require a compass plugin and capture that it occured so that the configuration serialization works next time.
|
159
|
+
def require(lib)
|
160
|
+
(self.required_libraries ||= []) << lib
|
161
|
+
super
|
162
|
+
end
|
163
|
+
|
164
|
+
def load(framework_dir)
|
165
|
+
(self.loaded_frameworks ||= []) << framework_dir
|
166
|
+
Compass::Frameworks.register_directory framework_dir
|
167
|
+
end
|
168
|
+
|
169
|
+
# Finds all extensions within a directory and registers them.
|
170
|
+
def discover(frameworks_dir)
|
171
|
+
(self.framework_path ||= []) << frameworks_dir
|
172
|
+
Compass::Frameworks.discover frameworks_dir
|
173
|
+
end
|
174
|
+
|
175
|
+
def relative_assets?
|
176
|
+
# the http_images_path is deprecated, but here for backwards compatibility.
|
177
|
+
relative_assets || http_images_path == :relative
|
178
|
+
end
|
179
|
+
|
180
|
+
private
|
181
|
+
|
182
|
+
def assert_valid_keys!(attr_hash)
|
183
|
+
illegal_attrs = attr_hash.keys - ATTRIBUTES - ARRAY_ATTRIBUTES
|
184
|
+
if illegal_attrs.size == 1
|
185
|
+
raise Error, "#{illegal_attrs.first.inspect} is not a valid configuration attribute."
|
186
|
+
elsif illegal_attrs.size > 0
|
187
|
+
raise Error, "Illegal configuration attributes: #{illegal_attrs.map{|a| a.inspect}.join(", ")}"
|
188
|
+
end
|
189
|
+
end
|
190
|
+
|
191
|
+
end
|
192
|
+
end
|
193
|
+
end
|
@@ -1,187 +1,187 @@
|
|
1
|
-
module Compass
|
2
|
-
module Configuration
|
3
|
-
module Defaults
|
4
|
-
|
5
|
-
def default_project_path
|
6
|
-
"."
|
7
|
-
end
|
8
|
-
|
9
|
-
def default_project_type
|
10
|
-
:stand_alone
|
11
|
-
end
|
12
|
-
|
13
|
-
def default_http_path
|
14
|
-
"/"
|
15
|
-
end
|
16
|
-
|
17
|
-
def default_extensions_dir
|
18
|
-
"extensions"
|
19
|
-
end
|
20
|
-
|
21
|
-
def default_fonts_dir
|
22
|
-
File.join(top_level.css_dir, "fonts")
|
23
|
-
end
|
24
|
-
|
25
|
-
def default_environment
|
26
|
-
:development
|
27
|
-
end
|
28
|
-
|
29
|
-
def default_output_style
|
30
|
-
if top_level.environment == :development
|
31
|
-
:expanded
|
32
|
-
else
|
33
|
-
:compressed
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
def default_line_comments
|
38
|
-
top_level.environment == :development
|
39
|
-
end
|
40
|
-
|
41
|
-
def default_color_output
|
42
|
-
true
|
43
|
-
end
|
44
|
-
|
45
|
-
def default_sass_path
|
46
|
-
if (pp = top_level.project_path) && (dir = top_level.sass_dir)
|
47
|
-
Compass.projectize(dir, pp)
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
def default_css_path
|
52
|
-
if (pp = top_level.project_path) && (dir = top_level.css_dir)
|
53
|
-
Compass.projectize(dir, pp)
|
54
|
-
end
|
55
|
-
end
|
56
|
-
|
57
|
-
def default_images_path
|
58
|
-
if (pp = top_level.project_path) && (dir = top_level.images_dir)
|
59
|
-
Compass.projectize(dir, pp)
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
def default_generated_images_path
|
64
|
-
if (pp = top_level.project_path) && (dir = top_level.generated_images_dir)
|
65
|
-
Compass.projectize(dir, pp)
|
66
|
-
else
|
67
|
-
top_level.images_path
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
def default_javascripts_path
|
72
|
-
if (pp = top_level.project_path) && (dir = top_level.javascripts_dir)
|
73
|
-
Compass.projectize(dir, pp)
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
def default_extensions_path
|
78
|
-
if (pp = top_level.project_path) && (dir = top_level.extensions_dir)
|
79
|
-
Compass.projectize(dir, pp)
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
def default_fonts_path
|
84
|
-
if (pp = top_level.project_path) && (dir = top_level.fonts_dir)
|
85
|
-
Compass.projectize(dir, pp)
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
|
-
def default_cache_path
|
90
|
-
if (pp = top_level.project_path) && (dir = top_level.cache_dir)
|
91
|
-
Compass.projectize(dir, pp)
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
|
-
def default_generated_images_dir
|
96
|
-
top_level.images_dir
|
97
|
-
end
|
98
|
-
|
99
|
-
def default_http_generated_images_dir
|
100
|
-
top_level.http_images_dir
|
101
|
-
end
|
102
|
-
|
103
|
-
def default_http_images_dir
|
104
|
-
top_level.images_dir
|
105
|
-
end
|
106
|
-
|
107
|
-
def default_sprite_load_path
|
108
|
-
[top_level.images_path]
|
109
|
-
end
|
110
|
-
|
111
|
-
def default_http_images_path
|
112
|
-
http_root_relative top_level.http_images_dir
|
113
|
-
end
|
114
|
-
|
115
|
-
def default_http_stylesheets_dir
|
116
|
-
top_level.css_dir
|
117
|
-
end
|
118
|
-
|
119
|
-
def default_http_stylesheets_path
|
120
|
-
http_root_relative top_level.http_stylesheets_dir
|
121
|
-
end
|
122
|
-
|
123
|
-
def default_http_generated_images_path
|
124
|
-
http_root_relative top_level.http_generated_images_dir
|
125
|
-
end
|
126
|
-
|
127
|
-
def default_http_fonts_dir
|
128
|
-
if fd = top_level.fonts_dir_without_default
|
129
|
-
fd
|
130
|
-
else
|
131
|
-
"#{top_level.http_stylesheets_dir}/fonts"
|
132
|
-
end
|
133
|
-
end
|
134
|
-
|
135
|
-
def default_http_fonts_path
|
136
|
-
http_root_relative top_level.http_fonts_dir
|
137
|
-
end
|
138
|
-
|
139
|
-
def default_http_javascripts_dir
|
140
|
-
top_level.javascripts_dir
|
141
|
-
end
|
142
|
-
|
143
|
-
def default_http_javascripts_path
|
144
|
-
http_root_relative top_level.http_javascripts_dir
|
145
|
-
end
|
146
|
-
|
147
|
-
def default_cache
|
148
|
-
true
|
149
|
-
end
|
150
|
-
|
151
|
-
def default_preferred_syntax
|
152
|
-
:scss
|
153
|
-
end
|
154
|
-
|
155
|
-
def default_sprite_engine
|
156
|
-
:chunky_png
|
157
|
-
end
|
158
|
-
|
159
|
-
def default_chunky_png_options
|
160
|
-
{:compression => Zlib::BEST_COMPRESSION}
|
161
|
-
end
|
162
|
-
|
163
|
-
# helper functions
|
164
|
-
|
165
|
-
def http_join(*segments)
|
166
|
-
segments.map do |segment|
|
167
|
-
next unless segment
|
168
|
-
segment = http_pathify(segment)
|
169
|
-
segment[-1..-1] == "/" ? segment[0..-2] : segment
|
170
|
-
end.join("/")
|
171
|
-
end
|
172
|
-
|
173
|
-
def http_pathify(path)
|
174
|
-
if File::SEPARATOR == "/"
|
175
|
-
path
|
176
|
-
else
|
177
|
-
path.gsub(File::SEPARATOR, "/")
|
178
|
-
end
|
179
|
-
end
|
180
|
-
|
181
|
-
def http_root_relative(path)
|
182
|
-
http_join top_level.http_path, path
|
183
|
-
end
|
184
|
-
|
185
|
-
end
|
186
|
-
end
|
187
|
-
end
|
1
|
+
module Compass
|
2
|
+
module Configuration
|
3
|
+
module Defaults
|
4
|
+
|
5
|
+
def default_project_path
|
6
|
+
"."
|
7
|
+
end
|
8
|
+
|
9
|
+
def default_project_type
|
10
|
+
:stand_alone
|
11
|
+
end
|
12
|
+
|
13
|
+
def default_http_path
|
14
|
+
"/"
|
15
|
+
end
|
16
|
+
|
17
|
+
def default_extensions_dir
|
18
|
+
"extensions"
|
19
|
+
end
|
20
|
+
|
21
|
+
def default_fonts_dir
|
22
|
+
File.join(top_level.css_dir, "fonts")
|
23
|
+
end
|
24
|
+
|
25
|
+
def default_environment
|
26
|
+
:development
|
27
|
+
end
|
28
|
+
|
29
|
+
def default_output_style
|
30
|
+
if top_level.environment == :development
|
31
|
+
:expanded
|
32
|
+
else
|
33
|
+
:compressed
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def default_line_comments
|
38
|
+
top_level.environment == :development
|
39
|
+
end
|
40
|
+
|
41
|
+
def default_color_output
|
42
|
+
true
|
43
|
+
end
|
44
|
+
|
45
|
+
def default_sass_path
|
46
|
+
if (pp = top_level.project_path) && (dir = top_level.sass_dir)
|
47
|
+
Compass.projectize(dir, pp)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
def default_css_path
|
52
|
+
if (pp = top_level.project_path) && (dir = top_level.css_dir)
|
53
|
+
Compass.projectize(dir, pp)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def default_images_path
|
58
|
+
if (pp = top_level.project_path) && (dir = top_level.images_dir)
|
59
|
+
Compass.projectize(dir, pp)
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
def default_generated_images_path
|
64
|
+
if (pp = top_level.project_path) && (dir = top_level.generated_images_dir)
|
65
|
+
Compass.projectize(dir, pp)
|
66
|
+
else
|
67
|
+
top_level.images_path
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
def default_javascripts_path
|
72
|
+
if (pp = top_level.project_path) && (dir = top_level.javascripts_dir)
|
73
|
+
Compass.projectize(dir, pp)
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
def default_extensions_path
|
78
|
+
if (pp = top_level.project_path) && (dir = top_level.extensions_dir)
|
79
|
+
Compass.projectize(dir, pp)
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
def default_fonts_path
|
84
|
+
if (pp = top_level.project_path) && (dir = top_level.fonts_dir)
|
85
|
+
Compass.projectize(dir, pp)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
def default_cache_path
|
90
|
+
if (pp = top_level.project_path) && (dir = top_level.cache_dir)
|
91
|
+
Compass.projectize(dir, pp)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
def default_generated_images_dir
|
96
|
+
top_level.images_dir
|
97
|
+
end
|
98
|
+
|
99
|
+
def default_http_generated_images_dir
|
100
|
+
top_level.http_images_dir
|
101
|
+
end
|
102
|
+
|
103
|
+
def default_http_images_dir
|
104
|
+
top_level.images_dir
|
105
|
+
end
|
106
|
+
|
107
|
+
def default_sprite_load_path
|
108
|
+
[top_level.images_path]
|
109
|
+
end
|
110
|
+
|
111
|
+
def default_http_images_path
|
112
|
+
http_root_relative top_level.http_images_dir
|
113
|
+
end
|
114
|
+
|
115
|
+
def default_http_stylesheets_dir
|
116
|
+
top_level.css_dir
|
117
|
+
end
|
118
|
+
|
119
|
+
def default_http_stylesheets_path
|
120
|
+
http_root_relative top_level.http_stylesheets_dir
|
121
|
+
end
|
122
|
+
|
123
|
+
def default_http_generated_images_path
|
124
|
+
http_root_relative top_level.http_generated_images_dir
|
125
|
+
end
|
126
|
+
|
127
|
+
def default_http_fonts_dir
|
128
|
+
if fd = top_level.fonts_dir_without_default
|
129
|
+
fd
|
130
|
+
else
|
131
|
+
"#{top_level.http_stylesheets_dir}/fonts"
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
def default_http_fonts_path
|
136
|
+
http_root_relative top_level.http_fonts_dir
|
137
|
+
end
|
138
|
+
|
139
|
+
def default_http_javascripts_dir
|
140
|
+
top_level.javascripts_dir
|
141
|
+
end
|
142
|
+
|
143
|
+
def default_http_javascripts_path
|
144
|
+
http_root_relative top_level.http_javascripts_dir
|
145
|
+
end
|
146
|
+
|
147
|
+
def default_cache
|
148
|
+
true
|
149
|
+
end
|
150
|
+
|
151
|
+
def default_preferred_syntax
|
152
|
+
:scss
|
153
|
+
end
|
154
|
+
|
155
|
+
def default_sprite_engine
|
156
|
+
:chunky_png
|
157
|
+
end
|
158
|
+
|
159
|
+
def default_chunky_png_options
|
160
|
+
{:compression => Zlib::BEST_COMPRESSION}
|
161
|
+
end
|
162
|
+
|
163
|
+
# helper functions
|
164
|
+
|
165
|
+
def http_join(*segments)
|
166
|
+
segments.map do |segment|
|
167
|
+
next unless segment
|
168
|
+
segment = http_pathify(segment)
|
169
|
+
segment[-1..-1] == "/" ? segment[0..-2] : segment
|
170
|
+
end.join("/")
|
171
|
+
end
|
172
|
+
|
173
|
+
def http_pathify(path)
|
174
|
+
if File::SEPARATOR == "/"
|
175
|
+
path
|
176
|
+
else
|
177
|
+
path.gsub(File::SEPARATOR, "/")
|
178
|
+
end
|
179
|
+
end
|
180
|
+
|
181
|
+
def http_root_relative(path)
|
182
|
+
http_join top_level.http_path, path
|
183
|
+
end
|
184
|
+
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|