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
data/lib/compass/exec/helpers.rb
CHANGED
@@ -1,21 +1,21 @@
|
|
1
|
-
module Compass::Exec
|
2
|
-
module Helpers
|
3
|
-
extend self
|
4
|
-
def report_error(e, options)
|
5
|
-
$stderr.puts "#{e.class} on line #{get_line e} of #{get_file e}: #{e.message}"
|
6
|
-
if options[:trace]
|
7
|
-
e.backtrace[1..-1].each { |t| $stderr.puts " #{t}" }
|
8
|
-
else
|
9
|
-
$stderr.puts "Run with --trace to see the full backtrace"
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
def get_file(exception)
|
14
|
-
exception.backtrace[0].split(/:/, 2)[0]
|
15
|
-
end
|
16
|
-
|
17
|
-
def get_line(exception)
|
18
|
-
exception.backtrace[0].scan(/:(\d+)/)[0]
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
1
|
+
module Compass::Exec
|
2
|
+
module Helpers
|
3
|
+
extend self
|
4
|
+
def report_error(e, options)
|
5
|
+
$stderr.puts "#{e.class} on line #{get_line e} of #{get_file e}: #{e.message}"
|
6
|
+
if options[:trace]
|
7
|
+
e.backtrace[1..-1].each { |t| $stderr.puts " #{t}" }
|
8
|
+
else
|
9
|
+
$stderr.puts "Run with --trace to see the full backtrace"
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
def get_file(exception)
|
14
|
+
exception.backtrace[0].split(/:/, 2)[0]
|
15
|
+
end
|
16
|
+
|
17
|
+
def get_line(exception)
|
18
|
+
exception.backtrace[0].scan(/:(\d+)/)[0]
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -1,66 +1,66 @@
|
|
1
|
-
module Compass::Exec::ProjectOptionsParser
|
2
|
-
def set_options(opts)
|
3
|
-
super
|
4
|
-
set_project_options(opts)
|
5
|
-
end
|
6
|
-
def set_dir_or_path(type, dir)
|
7
|
-
if Pathname.new(dir).absolute?
|
8
|
-
self.options[:"#{type}_path"] = dir.tr('\\','/')
|
9
|
-
else
|
10
|
-
self.options[:"#{type}_dir"] = dir.tr('\\','/')
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
def set_project_options(opts)
|
15
|
-
opts.on('-c', '--config CONFIG_FILE', 'Specify the location of the configuration file explicitly.') do |configuration_file|
|
16
|
-
self.options[:configuration_file] = configuration_file
|
17
|
-
end
|
18
|
-
|
19
|
-
opts.on('--app APP', 'Tell compass what kind of application it is integrating with. E.g. rails') do |project_type|
|
20
|
-
self.options[:project_type] = project_type.to_sym
|
21
|
-
end
|
22
|
-
|
23
|
-
opts.on('--app-dir PATH', 'The base directory for your application.') do |project_path|
|
24
|
-
self.options[:project_path] = project_path
|
25
|
-
end
|
26
|
-
|
27
|
-
opts.on('--sass-dir SRC_DIR', "The source directory where you keep your sass stylesheets.") do |sass_dir|
|
28
|
-
set_dir_or_path(:sass, sass_dir)
|
29
|
-
end
|
30
|
-
|
31
|
-
opts.on('--css-dir CSS_DIR', "The target directory where you keep your css stylesheets.") do |css_dir|
|
32
|
-
set_dir_or_path(:css, css_dir)
|
33
|
-
end
|
34
|
-
|
35
|
-
opts.on('--images-dir IMAGES_DIR', "The directory where you keep your images.") do |images_dir|
|
36
|
-
set_dir_or_path(:images, images_dir)
|
37
|
-
end
|
38
|
-
|
39
|
-
opts.on('--javascripts-dir JS_DIR', "The directory where you keep your javascripts.") do |javascripts_dir|
|
40
|
-
set_dir_or_path(:javascripts, javascripts_dir)
|
41
|
-
end
|
42
|
-
|
43
|
-
opts.on('--fonts-dir FONTS_DIR', "The directory where you keep your fonts.") do |fonts_dir|
|
44
|
-
set_dir_or_path(:fonts, fonts_dir)
|
45
|
-
end
|
46
|
-
|
47
|
-
opts.on('-e ENV', '--environment ENV', [:development, :production], 'Use sensible defaults for your current environment.',
|
48
|
-
' One of: development (default), production') do |env|
|
49
|
-
self.options[:environment] = env
|
50
|
-
end
|
51
|
-
|
52
|
-
opts.on('-s STYLE', '--output-style STYLE', [:nested, :expanded, :compact, :compressed], 'Select a CSS output mode.',
|
53
|
-
' One of: nested, expanded, compact, compressed') do |style|
|
54
|
-
self.options[:output_style] = style
|
55
|
-
end
|
56
|
-
|
57
|
-
opts.on('--relative-assets', :NONE, 'Make compass asset helpers generate relative urls to assets.') do
|
58
|
-
self.options[:relative_assets] = true
|
59
|
-
end
|
60
|
-
|
61
|
-
opts.on('--no-line-comments', :NONE, 'Disable line comments.') do
|
62
|
-
self.options[:line_comments] = false
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
end
|
1
|
+
module Compass::Exec::ProjectOptionsParser
|
2
|
+
def set_options(opts)
|
3
|
+
super
|
4
|
+
set_project_options(opts)
|
5
|
+
end
|
6
|
+
def set_dir_or_path(type, dir)
|
7
|
+
if Pathname.new(dir).absolute?
|
8
|
+
self.options[:"#{type}_path"] = dir.tr('\\','/')
|
9
|
+
else
|
10
|
+
self.options[:"#{type}_dir"] = dir.tr('\\','/')
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def set_project_options(opts)
|
15
|
+
opts.on('-c', '--config CONFIG_FILE', 'Specify the location of the configuration file explicitly.') do |configuration_file|
|
16
|
+
self.options[:configuration_file] = configuration_file
|
17
|
+
end
|
18
|
+
|
19
|
+
opts.on('--app APP', 'Tell compass what kind of application it is integrating with. E.g. rails') do |project_type|
|
20
|
+
self.options[:project_type] = project_type.to_sym
|
21
|
+
end
|
22
|
+
|
23
|
+
opts.on('--app-dir PATH', 'The base directory for your application.') do |project_path|
|
24
|
+
self.options[:project_path] = project_path
|
25
|
+
end
|
26
|
+
|
27
|
+
opts.on('--sass-dir SRC_DIR', "The source directory where you keep your sass stylesheets.") do |sass_dir|
|
28
|
+
set_dir_or_path(:sass, sass_dir)
|
29
|
+
end
|
30
|
+
|
31
|
+
opts.on('--css-dir CSS_DIR', "The target directory where you keep your css stylesheets.") do |css_dir|
|
32
|
+
set_dir_or_path(:css, css_dir)
|
33
|
+
end
|
34
|
+
|
35
|
+
opts.on('--images-dir IMAGES_DIR', "The directory where you keep your images.") do |images_dir|
|
36
|
+
set_dir_or_path(:images, images_dir)
|
37
|
+
end
|
38
|
+
|
39
|
+
opts.on('--javascripts-dir JS_DIR', "The directory where you keep your javascripts.") do |javascripts_dir|
|
40
|
+
set_dir_or_path(:javascripts, javascripts_dir)
|
41
|
+
end
|
42
|
+
|
43
|
+
opts.on('--fonts-dir FONTS_DIR', "The directory where you keep your fonts.") do |fonts_dir|
|
44
|
+
set_dir_or_path(:fonts, fonts_dir)
|
45
|
+
end
|
46
|
+
|
47
|
+
opts.on('-e ENV', '--environment ENV', [:development, :production], 'Use sensible defaults for your current environment.',
|
48
|
+
' One of: development (default), production') do |env|
|
49
|
+
self.options[:environment] = env
|
50
|
+
end
|
51
|
+
|
52
|
+
opts.on('-s STYLE', '--output-style STYLE', [:nested, :expanded, :compact, :compressed], 'Select a CSS output mode.',
|
53
|
+
' One of: nested, expanded, compact, compressed') do |style|
|
54
|
+
self.options[:output_style] = style
|
55
|
+
end
|
56
|
+
|
57
|
+
opts.on('--relative-assets', :NONE, 'Make compass asset helpers generate relative urls to assets.') do
|
58
|
+
self.options[:relative_assets] = true
|
59
|
+
end
|
60
|
+
|
61
|
+
opts.on('--no-line-comments', :NONE, 'Disable line comments.') do
|
62
|
+
self.options[:line_comments] = false
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
@@ -1,51 +1,51 @@
|
|
1
|
-
require 'compass/exec/global_options_parser'
|
2
|
-
require 'compass/exec/project_options_parser'
|
3
|
-
|
4
|
-
module Compass::Exec
|
5
|
-
class SubCommandUI
|
6
|
-
|
7
|
-
attr_accessor :args
|
8
|
-
|
9
|
-
def initialize(args)
|
10
|
-
self.args = args
|
11
|
-
end
|
12
|
-
|
13
|
-
def run!
|
14
|
-
begin
|
15
|
-
return perform!
|
16
|
-
rescue Exception => e
|
17
|
-
raise e if e.is_a? SystemExit
|
18
|
-
if e.is_a?(::Compass::Error) || e.is_a?(OptionParser::ParseError)
|
19
|
-
$stderr.puts e.message
|
20
|
-
else
|
21
|
-
::Compass::Exec::Helpers.report_error(e, @options || {})
|
22
|
-
end
|
23
|
-
return 1
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
protected
|
28
|
-
|
29
|
-
def perform!
|
30
|
-
$command = args.shift
|
31
|
-
command_class = Compass::Commands[$command]
|
32
|
-
unless command_class
|
33
|
-
args.unshift($command)
|
34
|
-
$command = "help"
|
35
|
-
command_class = Compass::Commands::Default
|
36
|
-
end
|
37
|
-
@options = if command_class.respond_to?("parse_#{$command}!")
|
38
|
-
command_class.send("parse_#{$command}!", args)
|
39
|
-
else
|
40
|
-
command_class.parse!(args)
|
41
|
-
end
|
42
|
-
cmd = command_class.new(Dir.getwd, @options)
|
43
|
-
cmd.execute
|
44
|
-
cmd.successful? ? 0 : 1
|
45
|
-
rescue OptionParser::ParseError => e
|
46
|
-
puts "Error: #{e.message}"
|
47
|
-
puts command_class.usage if command_class.respond_to?(:usage)
|
48
|
-
end
|
49
|
-
|
50
|
-
end
|
51
|
-
end
|
1
|
+
require 'compass/exec/global_options_parser'
|
2
|
+
require 'compass/exec/project_options_parser'
|
3
|
+
|
4
|
+
module Compass::Exec
|
5
|
+
class SubCommandUI
|
6
|
+
|
7
|
+
attr_accessor :args
|
8
|
+
|
9
|
+
def initialize(args)
|
10
|
+
self.args = args
|
11
|
+
end
|
12
|
+
|
13
|
+
def run!
|
14
|
+
begin
|
15
|
+
return perform!
|
16
|
+
rescue Exception => e
|
17
|
+
raise e if e.is_a? SystemExit
|
18
|
+
if e.is_a?(::Compass::Error) || e.is_a?(OptionParser::ParseError)
|
19
|
+
$stderr.puts e.message
|
20
|
+
else
|
21
|
+
::Compass::Exec::Helpers.report_error(e, @options || {})
|
22
|
+
end
|
23
|
+
return 1
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
protected
|
28
|
+
|
29
|
+
def perform!
|
30
|
+
$command = args.shift
|
31
|
+
command_class = Compass::Commands[$command]
|
32
|
+
unless command_class
|
33
|
+
args.unshift($command)
|
34
|
+
$command = "help"
|
35
|
+
command_class = Compass::Commands::Default
|
36
|
+
end
|
37
|
+
@options = if command_class.respond_to?("parse_#{$command}!")
|
38
|
+
command_class.send("parse_#{$command}!", args)
|
39
|
+
else
|
40
|
+
command_class.parse!(args)
|
41
|
+
end
|
42
|
+
cmd = command_class.new(Dir.getwd, @options)
|
43
|
+
cmd.execute
|
44
|
+
cmd.successful? ? 0 : 1
|
45
|
+
rescue OptionParser::ParseError => e
|
46
|
+
puts "Error: #{e.message}"
|
47
|
+
puts command_class.usage if command_class.respond_to?(:usage)
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
end
|
@@ -1,179 +1,179 @@
|
|
1
|
-
require 'compass/exec/global_options_parser'
|
2
|
-
require 'compass/exec/project_options_parser'
|
3
|
-
|
4
|
-
module Compass::Exec
|
5
|
-
class SwitchUI
|
6
|
-
include GlobalOptionsParser
|
7
|
-
include ProjectOptionsParser
|
8
|
-
attr_accessor :args, :options, :opts
|
9
|
-
|
10
|
-
def initialize(args)
|
11
|
-
self.args = args
|
12
|
-
self.options = {}
|
13
|
-
parse!
|
14
|
-
end
|
15
|
-
|
16
|
-
def run!
|
17
|
-
begin
|
18
|
-
perform!
|
19
|
-
rescue Exception => e
|
20
|
-
raise e if e.is_a? SystemExit
|
21
|
-
if e.is_a?(::Compass::Error) || e.is_a?(OptionParser::ParseError)
|
22
|
-
$stderr.puts e.message
|
23
|
-
else
|
24
|
-
::Compass::Exec::Helpers.report_error(e, @options)
|
25
|
-
end
|
26
|
-
return 1
|
27
|
-
end
|
28
|
-
return 0
|
29
|
-
end
|
30
|
-
|
31
|
-
protected
|
32
|
-
|
33
|
-
def perform!
|
34
|
-
if options[:command]
|
35
|
-
do_command(options[:command])
|
36
|
-
else
|
37
|
-
puts self.opts
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
def parse!
|
42
|
-
self.opts = OptionParser.new(&method(:set_opts))
|
43
|
-
self.opts.parse!(self.args)
|
44
|
-
if self.args.size > 0
|
45
|
-
self.options[:project_name] = trim_trailing_separator(self.args.shift)
|
46
|
-
end
|
47
|
-
self.options[:command] ||= self.options[:project_name] ? :create_project : :update_project
|
48
|
-
self.options[:framework] ||= :compass
|
49
|
-
end
|
50
|
-
|
51
|
-
def trim_trailing_separator(path)
|
52
|
-
path[-1..-1] == File::SEPARATOR ? path[0..-2] : path
|
53
|
-
end
|
54
|
-
|
55
|
-
def set_opts(opts)
|
56
|
-
opts.banner = <<END
|
57
|
-
Usage: compass [options] [project]
|
58
|
-
|
59
|
-
Description:
|
60
|
-
The compass command line tool will help you create and manage the stylesheets for your project.
|
61
|
-
|
62
|
-
To get started on a stand-alone project based on blueprint:
|
63
|
-
|
64
|
-
compass -f blueprint my_compass_project
|
65
|
-
|
66
|
-
When you change any sass files, you must recompile your project using --update or --watch.
|
67
|
-
END
|
68
|
-
opts.separator ''
|
69
|
-
opts.separator 'Mode Options(only specify one):'
|
70
|
-
|
71
|
-
opts.on('-i', '--install', :NONE, "Create a new compass project.",
|
72
|
-
" The default mode when a project is provided.") do
|
73
|
-
self.options[:command] = :create_project
|
74
|
-
end
|
75
|
-
|
76
|
-
opts.on('-u', '--update', :NONE, 'Update the current project.',
|
77
|
-
' This is the default when no project is provided.') do
|
78
|
-
self.options[:command] = :update_project
|
79
|
-
end
|
80
|
-
|
81
|
-
opts.on('-w', '--watch', :NONE, 'Monitor the current project for changes and update') do
|
82
|
-
self.options[:command] = :watch_project
|
83
|
-
self.options[:quiet] = true
|
84
|
-
end
|
85
|
-
|
86
|
-
opts.on('-p', '--pattern PATTERN', 'Stamp out a pattern into the current project.',
|
87
|
-
' Must be used with -f.') do |pattern|
|
88
|
-
self.options[:command] = :stamp_pattern
|
89
|
-
self.options[:pattern] = pattern
|
90
|
-
end
|
91
|
-
|
92
|
-
opts.on('-h', '--help') do
|
93
|
-
self.options[:command] = :help
|
94
|
-
self.options[:help_command] = :help
|
95
|
-
end
|
96
|
-
|
97
|
-
opts.on('--write-configuration', "Write the current configuration to the configuration file.") do
|
98
|
-
self.options[:command] = :write_configuration
|
99
|
-
end
|
100
|
-
|
101
|
-
opts.on('--list-frameworks', "List compass frameworks available to use.") do
|
102
|
-
self.options[:command] = :list_frameworks
|
103
|
-
end
|
104
|
-
|
105
|
-
opts.on('--validate', :NONE, 'Validate your project\'s compiled css. Requires Java.') do
|
106
|
-
self.options[:command] = :validate_project
|
107
|
-
end
|
108
|
-
|
109
|
-
opts.on('--grid-img [DIMENSIONS]', 'Generate a background image to test grid alignment.',
|
110
|
-
' Dimension is given as <column_width>+<gutter_width>x<height>.',
|
111
|
-
' Defaults to 30+10x20. Height is optional.') do |dimensions|
|
112
|
-
self.options[:grid_dimensions] = dimensions || "30+10"
|
113
|
-
self.options[:command] = :generate_grid_background
|
114
|
-
end
|
115
|
-
|
116
|
-
opts.separator ''
|
117
|
-
opts.separator 'Install/Pattern Options:'
|
118
|
-
|
119
|
-
opts.on('-f FRAMEWORK', '--framework FRAMEWORK', 'Use the specified framework. Only one may be specified.') do |framework|
|
120
|
-
self.options[:framework] = framework
|
121
|
-
end
|
122
|
-
|
123
|
-
opts.on('-n', '--pattern-name NAME', 'The name to use when stamping a pattern.',
|
124
|
-
' Must be used in combination with -p.') do |name|
|
125
|
-
self.options[:pattern_name] = name
|
126
|
-
end
|
127
|
-
|
128
|
-
opts.on("-x", "--syntax SYNTAX", [:sass, :scss], "Specify the syntax to use when generating stylesheets.", "One of sass or scss. Defaults to scss.") do |syntax|
|
129
|
-
self.options[:preferred_syntax] = syntax
|
130
|
-
end
|
131
|
-
|
132
|
-
opts.on('--rails', "Sets the app type to a rails project (same as --app rails).") do
|
133
|
-
self.options[:project_type] = :rails
|
134
|
-
end
|
135
|
-
|
136
|
-
opts.on('--app APP_TYPE', 'Specify the kind of application to integrate with.') do |project_type|
|
137
|
-
self.options[:project_type] = project_type.to_sym
|
138
|
-
end
|
139
|
-
|
140
|
-
opts.separator ''
|
141
|
-
opts.separator 'Configuration Options:'
|
142
|
-
|
143
|
-
set_project_options(opts)
|
144
|
-
|
145
|
-
opts.separator ''
|
146
|
-
opts.separator 'General Options:'
|
147
|
-
|
148
|
-
set_global_options(opts)
|
149
|
-
|
150
|
-
opts.on('--imports', :NONE, 'Emit an imports suitable for passing to the sass command-line.',
|
151
|
-
' Example: sass `compass --imports`',
|
152
|
-
' Note: Compass\'s Sass extensions will not be available.') do
|
153
|
-
print ::Compass::Frameworks::ALL.map{|f| "-I #{f.stylesheets_directory}"}.join(' ')
|
154
|
-
exit
|
155
|
-
end
|
156
|
-
|
157
|
-
opts.on('--install-dir', :NONE, 'Emit the location where compass is installed.') do
|
158
|
-
puts ::Compass.base_directory
|
159
|
-
exit
|
160
|
-
end
|
161
|
-
|
162
|
-
opts.on_tail("-v", "--version", "Print version") do
|
163
|
-
self.options[:command] = :print_version
|
164
|
-
end
|
165
|
-
|
166
|
-
opts.on('--boring', :NONE, 'Turn off colorized output.') do
|
167
|
-
self.options[:color_output] = false
|
168
|
-
end
|
169
|
-
|
170
|
-
end
|
171
|
-
|
172
|
-
def do_command(command)
|
173
|
-
command_class_name = command.to_s.split(/_/).map{|p| p.capitalize}.join('')
|
174
|
-
command_class = eval("::Compass::Commands::#{command_class_name}")
|
175
|
-
command_class.new(Dir.getwd, options).execute
|
176
|
-
end
|
177
|
-
|
178
|
-
end
|
179
|
-
end
|
1
|
+
require 'compass/exec/global_options_parser'
|
2
|
+
require 'compass/exec/project_options_parser'
|
3
|
+
|
4
|
+
module Compass::Exec
|
5
|
+
class SwitchUI
|
6
|
+
include GlobalOptionsParser
|
7
|
+
include ProjectOptionsParser
|
8
|
+
attr_accessor :args, :options, :opts
|
9
|
+
|
10
|
+
def initialize(args)
|
11
|
+
self.args = args
|
12
|
+
self.options = {}
|
13
|
+
parse!
|
14
|
+
end
|
15
|
+
|
16
|
+
def run!
|
17
|
+
begin
|
18
|
+
perform!
|
19
|
+
rescue Exception => e
|
20
|
+
raise e if e.is_a? SystemExit
|
21
|
+
if e.is_a?(::Compass::Error) || e.is_a?(OptionParser::ParseError)
|
22
|
+
$stderr.puts e.message
|
23
|
+
else
|
24
|
+
::Compass::Exec::Helpers.report_error(e, @options)
|
25
|
+
end
|
26
|
+
return 1
|
27
|
+
end
|
28
|
+
return 0
|
29
|
+
end
|
30
|
+
|
31
|
+
protected
|
32
|
+
|
33
|
+
def perform!
|
34
|
+
if options[:command]
|
35
|
+
do_command(options[:command])
|
36
|
+
else
|
37
|
+
puts self.opts
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def parse!
|
42
|
+
self.opts = OptionParser.new(&method(:set_opts))
|
43
|
+
self.opts.parse!(self.args)
|
44
|
+
if self.args.size > 0
|
45
|
+
self.options[:project_name] = trim_trailing_separator(self.args.shift)
|
46
|
+
end
|
47
|
+
self.options[:command] ||= self.options[:project_name] ? :create_project : :update_project
|
48
|
+
self.options[:framework] ||= :compass
|
49
|
+
end
|
50
|
+
|
51
|
+
def trim_trailing_separator(path)
|
52
|
+
path[-1..-1] == File::SEPARATOR ? path[0..-2] : path
|
53
|
+
end
|
54
|
+
|
55
|
+
def set_opts(opts)
|
56
|
+
opts.banner = <<END
|
57
|
+
Usage: compass [options] [project]
|
58
|
+
|
59
|
+
Description:
|
60
|
+
The compass command line tool will help you create and manage the stylesheets for your project.
|
61
|
+
|
62
|
+
To get started on a stand-alone project based on blueprint:
|
63
|
+
|
64
|
+
compass -f blueprint my_compass_project
|
65
|
+
|
66
|
+
When you change any sass files, you must recompile your project using --update or --watch.
|
67
|
+
END
|
68
|
+
opts.separator ''
|
69
|
+
opts.separator 'Mode Options(only specify one):'
|
70
|
+
|
71
|
+
opts.on('-i', '--install', :NONE, "Create a new compass project.",
|
72
|
+
" The default mode when a project is provided.") do
|
73
|
+
self.options[:command] = :create_project
|
74
|
+
end
|
75
|
+
|
76
|
+
opts.on('-u', '--update', :NONE, 'Update the current project.',
|
77
|
+
' This is the default when no project is provided.') do
|
78
|
+
self.options[:command] = :update_project
|
79
|
+
end
|
80
|
+
|
81
|
+
opts.on('-w', '--watch', :NONE, 'Monitor the current project for changes and update') do
|
82
|
+
self.options[:command] = :watch_project
|
83
|
+
self.options[:quiet] = true
|
84
|
+
end
|
85
|
+
|
86
|
+
opts.on('-p', '--pattern PATTERN', 'Stamp out a pattern into the current project.',
|
87
|
+
' Must be used with -f.') do |pattern|
|
88
|
+
self.options[:command] = :stamp_pattern
|
89
|
+
self.options[:pattern] = pattern
|
90
|
+
end
|
91
|
+
|
92
|
+
opts.on('-h', '--help') do
|
93
|
+
self.options[:command] = :help
|
94
|
+
self.options[:help_command] = :help
|
95
|
+
end
|
96
|
+
|
97
|
+
opts.on('--write-configuration', "Write the current configuration to the configuration file.") do
|
98
|
+
self.options[:command] = :write_configuration
|
99
|
+
end
|
100
|
+
|
101
|
+
opts.on('--list-frameworks', "List compass frameworks available to use.") do
|
102
|
+
self.options[:command] = :list_frameworks
|
103
|
+
end
|
104
|
+
|
105
|
+
opts.on('--validate', :NONE, 'Validate your project\'s compiled css. Requires Java.') do
|
106
|
+
self.options[:command] = :validate_project
|
107
|
+
end
|
108
|
+
|
109
|
+
opts.on('--grid-img [DIMENSIONS]', 'Generate a background image to test grid alignment.',
|
110
|
+
' Dimension is given as <column_width>+<gutter_width>x<height>.',
|
111
|
+
' Defaults to 30+10x20. Height is optional.') do |dimensions|
|
112
|
+
self.options[:grid_dimensions] = dimensions || "30+10"
|
113
|
+
self.options[:command] = :generate_grid_background
|
114
|
+
end
|
115
|
+
|
116
|
+
opts.separator ''
|
117
|
+
opts.separator 'Install/Pattern Options:'
|
118
|
+
|
119
|
+
opts.on('-f FRAMEWORK', '--framework FRAMEWORK', 'Use the specified framework. Only one may be specified.') do |framework|
|
120
|
+
self.options[:framework] = framework
|
121
|
+
end
|
122
|
+
|
123
|
+
opts.on('-n', '--pattern-name NAME', 'The name to use when stamping a pattern.',
|
124
|
+
' Must be used in combination with -p.') do |name|
|
125
|
+
self.options[:pattern_name] = name
|
126
|
+
end
|
127
|
+
|
128
|
+
opts.on("-x", "--syntax SYNTAX", [:sass, :scss], "Specify the syntax to use when generating stylesheets.", "One of sass or scss. Defaults to scss.") do |syntax|
|
129
|
+
self.options[:preferred_syntax] = syntax
|
130
|
+
end
|
131
|
+
|
132
|
+
opts.on('--rails', "Sets the app type to a rails project (same as --app rails).") do
|
133
|
+
self.options[:project_type] = :rails
|
134
|
+
end
|
135
|
+
|
136
|
+
opts.on('--app APP_TYPE', 'Specify the kind of application to integrate with.') do |project_type|
|
137
|
+
self.options[:project_type] = project_type.to_sym
|
138
|
+
end
|
139
|
+
|
140
|
+
opts.separator ''
|
141
|
+
opts.separator 'Configuration Options:'
|
142
|
+
|
143
|
+
set_project_options(opts)
|
144
|
+
|
145
|
+
opts.separator ''
|
146
|
+
opts.separator 'General Options:'
|
147
|
+
|
148
|
+
set_global_options(opts)
|
149
|
+
|
150
|
+
opts.on('--imports', :NONE, 'Emit an imports suitable for passing to the sass command-line.',
|
151
|
+
' Example: sass `compass --imports`',
|
152
|
+
' Note: Compass\'s Sass extensions will not be available.') do
|
153
|
+
print ::Compass::Frameworks::ALL.map{|f| "-I #{f.stylesheets_directory}"}.join(' ')
|
154
|
+
exit
|
155
|
+
end
|
156
|
+
|
157
|
+
opts.on('--install-dir', :NONE, 'Emit the location where compass is installed.') do
|
158
|
+
puts ::Compass.base_directory
|
159
|
+
exit
|
160
|
+
end
|
161
|
+
|
162
|
+
opts.on_tail("-v", "--version", "Print version") do
|
163
|
+
self.options[:command] = :print_version
|
164
|
+
end
|
165
|
+
|
166
|
+
opts.on('--boring', :NONE, 'Turn off colorized output.') do
|
167
|
+
self.options[:color_output] = false
|
168
|
+
end
|
169
|
+
|
170
|
+
end
|
171
|
+
|
172
|
+
def do_command(command)
|
173
|
+
command_class_name = command.to_s.split(/_/).map{|p| p.capitalize}.join('')
|
174
|
+
command_class = eval("::Compass::Commands::#{command_class_name}")
|
175
|
+
command_class.new(Dir.getwd, options).execute
|
176
|
+
end
|
177
|
+
|
178
|
+
end
|
179
|
+
end
|