compass 0.8.17 → 0.10.0.pre1
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.
- data/CHANGELOG.markdown +165 -0
- data/README.markdown +15 -3
- data/Rakefile +46 -7
- data/VERSION.yml +3 -2
- data/bin/compass +22 -4
- data/examples/blueprint_default/index.html.haml +3 -3
- data/examples/blueprint_default/parts/forms.html.haml +2 -0
- data/examples/blueprint_default/src/screen.sass +1 -1
- data/examples/blueprint_plugins/index.html.haml +6 -6
- data/examples/blueprint_plugins/src/buttons.sass +2 -2
- data/examples/blueprint_plugins/src/link_icons.sass +1 -1
- data/examples/blueprint_plugins/src/rtl_screen.sass +3 -3
- data/examples/blueprint_plugins/src/screen.sass +2 -2
- data/examples/blueprint_scoped/src/ie.sass +2 -1
- data/examples/blueprint_scoped/src/print.sass +2 -1
- data/examples/blueprint_scoped/src/screen.sass +2 -1
- data/examples/blueprint_semantic/parts/fancy_type.html.haml +1 -1
- data/examples/blueprint_semantic/src/liquid.sass +5 -6
- data/examples/blueprint_semantic/src/screen.sass +4 -5
- data/examples/compass/bootstrap.rb +3 -0
- data/{frameworks → examples/compass/extensions}/yui/stylesheets/_yui.sass +0 -0
- data/examples/compass/extensions/yui/stylesheets/yui/modules/_base.sass +70 -0
- data/{frameworks → examples/compass/extensions}/yui/stylesheets/yui/modules/_fonts.sass +8 -1
- data/{frameworks → examples/compass/extensions}/yui/stylesheets/yui/modules/_grids.sass +174 -130
- data/{frameworks → examples/compass/extensions}/yui/stylesheets/yui/modules/_reset.sass +0 -0
- data/{frameworks → examples/compass/extensions}/yui/templates/project/manifest.rb +0 -0
- data/{frameworks → examples/compass/extensions}/yui/templates/project/screen.sass +0 -0
- data/examples/compass/src/utilities.sass +2 -2
- data/examples/css3/config.rb +6 -0
- data/examples/css3/extensions/fancy-fonts/templates/project/Vtks Revolt.ttf +0 -0
- data/examples/css3/extensions/fancy-fonts/templates/project/angelina.ttf +0 -0
- data/examples/css3/extensions/fancy-fonts/templates/project/fancy-fonts.sass +7 -0
- data/examples/css3/extensions/fancy-fonts/templates/project/manifest.rb +5 -0
- data/examples/css3/images/fresh-peas.jpg +0 -0
- data/examples/css3/index.html.haml +55 -0
- data/examples/css3/src/_base.sass +14 -0
- data/examples/css3/src/fancy-fonts.sass +7 -0
- data/examples/css3/src/gradient.sass +10 -0
- data/examples/css3/src/main.sass +80 -0
- data/examples/css3/stylesheets/fonts/Vtks Revolt.ttf +0 -0
- data/examples/css3/stylesheets/fonts/angelina.ttf +0 -0
- data/examples/downloader.rb +57 -0
- data/examples/ninesixty/bootstrap.rb +4 -0
- data/examples/ninesixty/config.rb +9 -0
- data/examples/ninesixty/extensions/ninesixty/README.mkdn +56 -0
- data/examples/ninesixty/extensions/ninesixty/compass-960-plugin.gemspec +36 -0
- data/examples/ninesixty/extensions/ninesixty/lib/ninesixty.rb +1 -0
- data/examples/ninesixty/extensions/ninesixty/lib/ninesixty/compass_plugin.rb +5 -0
- data/examples/ninesixty/extensions/ninesixty/sass/960/_grid.sass +64 -0
- data/examples/ninesixty/extensions/ninesixty/sass/960/_text.sass +59 -0
- data/examples/ninesixty/extensions/ninesixty/templates/project/grid.sass +34 -0
- data/examples/ninesixty/extensions/ninesixty/templates/project/manifest.rb +2 -0
- data/examples/ninesixty/extensions/ninesixty/templates/project/text.sass +10 -0
- data/examples/ninesixty/src/grid.sass +16 -0
- data/examples/ninesixty/src/text.sass +10 -0
- data/examples/susy/bootstrap.rb +3 -0
- data/examples/susy/config.rb +9 -0
- data/examples/susy/extensions/susy/LICENSE.txt +28 -0
- data/examples/susy/extensions/susy/README.mkdn +235 -0
- data/examples/susy/extensions/susy/compass-susy-plugin.gemspec +35 -0
- data/examples/susy/extensions/susy/docs/tutorial/build.sh +141 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/01_target/src/_defaults.sass +100 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/01_target/src/screen.sass +98 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/02_container/src/_defaults.sass +147 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/02_container/src/screen.sass +19 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/03_structure/src/_defaults.sass +147 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/03_structure/src/screen.sass +48 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/_common/config.rb +14 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/_common/images/grid.png +0 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/_common/images/susy_logo.png +0 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/_common/src/_base.sass +63 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/_tools/Markdown.pl +1450 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/site/src/_defaults.sass +100 -0
- data/examples/susy/extensions/susy/docs/tutorial/code/site/src/screen.sass +91 -0
- data/examples/susy/extensions/susy/docs/tutorial/figures/susy_element.png +0 -0
- data/examples/susy/extensions/susy/docs/tutorial/figures/susy_grid.png +0 -0
- data/examples/susy/extensions/susy/docs/tutorial/index.mkdn +301 -0
- data/examples/susy/extensions/susy/lib/susy.rb +2 -0
- data/examples/susy/extensions/susy/lib/susy/compass_plugin.rb +5 -0
- data/examples/susy/extensions/susy/lib/susy/sass_extensions.rb +79 -0
- data/examples/susy/extensions/susy/sass/susy/_grid.sass +128 -0
- data/examples/susy/extensions/susy/sass/susy/_reset.sass +7 -0
- data/examples/susy/extensions/susy/sass/susy/_susy.sass +23 -0
- data/examples/susy/extensions/susy/sass/susy/_text.sass +15 -0
- data/examples/susy/extensions/susy/sass/susy/_utils.sass +81 -0
- data/examples/susy/extensions/susy/templates/project/_base.sass +62 -0
- data/examples/susy/extensions/susy/templates/project/_defaults.sass +147 -0
- data/examples/susy/extensions/susy/templates/project/ie.sass +9 -0
- data/examples/susy/extensions/susy/templates/project/manifest.rb +5 -0
- data/examples/susy/extensions/susy/templates/project/print.sass +7 -0
- data/examples/susy/extensions/susy/templates/project/screen.sass +44 -0
- data/examples/susy/src/_base.sass +62 -0
- data/examples/susy/src/_defaults.sass +148 -0
- data/examples/susy/src/screen.sass +114 -0
- data/examples/yui/bootstrap.rb +3 -0
- data/examples/yui/extensions/yui/stylesheets/_yui.sass +7 -0
- data/examples/yui/extensions/yui/stylesheets/yui/modules/_base.sass +70 -0
- data/examples/yui/extensions/yui/stylesheets/yui/modules/_fonts.sass +45 -0
- data/examples/yui/extensions/yui/stylesheets/yui/modules/_grids.sass +385 -0
- data/examples/yui/extensions/yui/stylesheets/yui/modules/_reset.sass +61 -0
- data/examples/yui/extensions/yui/templates/project/manifest.rb +1 -0
- data/examples/yui/extensions/yui/templates/project/screen.sass +4 -0
- data/features/command_line.feature +226 -0
- data/features/extensions.feature +20 -0
- data/features/step_definitions/command_line_steps.rb +223 -0
- data/features/step_definitions/extension_steps.rb +13 -0
- data/lib/compass.rb +6 -7
- data/lib/compass/actions.rb +7 -1
- data/lib/compass/app_integration.rb +23 -4
- data/lib/compass/app_integration/merb.rb +1 -43
- data/lib/compass/app_integration/merb/runtime.rb +63 -0
- data/lib/compass/app_integration/rails.rb +24 -10
- data/lib/compass/app_integration/rails/configuration_defaults.rb +45 -0
- data/lib/compass/app_integration/rails/installer.rb +127 -0
- data/lib/compass/app_integration/rails/runtime.rb +14 -0
- data/lib/compass/app_integration/stand_alone.rb +22 -0
- data/lib/compass/app_integration/stand_alone/configuration_defaults.rb +28 -0
- data/lib/compass/app_integration/stand_alone/installer.rb +83 -0
- data/lib/compass/commands.rb +11 -0
- data/lib/compass/commands/base.rb +4 -1
- data/lib/compass/commands/create_project.rb +108 -5
- data/lib/compass/commands/generate_grid_background.rb +73 -6
- data/lib/compass/commands/help.rb +89 -0
- data/lib/compass/commands/installer_command.rb +20 -13
- data/lib/compass/commands/interactive.rb +61 -0
- data/lib/compass/commands/list_frameworks.rb +2 -2
- data/lib/compass/commands/print_version.rb +72 -4
- data/lib/compass/commands/project_base.rb +14 -34
- data/lib/compass/commands/project_stats.rb +162 -0
- data/lib/compass/commands/registry.rb +22 -0
- data/lib/compass/commands/stamp_pattern.rb +56 -3
- data/lib/compass/commands/update_project.rb +60 -6
- data/lib/compass/commands/validate_project.rb +62 -6
- data/lib/compass/commands/watch_project.rb +12 -5
- data/lib/compass/commands/write_configuration.rb +89 -4
- data/lib/compass/compiler.rb +13 -4
- data/lib/compass/configuration.rb +29 -310
- data/lib/compass/configuration/adapters.rb +59 -0
- data/lib/compass/configuration/comments.rb +22 -0
- data/lib/compass/configuration/data.rb +106 -0
- data/lib/compass/configuration/defaults.rb +138 -0
- data/lib/compass/configuration/helpers.rb +120 -0
- data/lib/compass/configuration/inheritance.rb +170 -0
- data/lib/compass/configuration/serialization.rb +86 -0
- data/lib/compass/dependencies.rb +4 -8
- data/lib/compass/errors.rb +4 -1
- data/lib/compass/exec.rb +11 -246
- data/lib/compass/exec/command_option_parser.rb +23 -0
- data/lib/compass/exec/global_options_parser.rb +37 -0
- data/lib/compass/exec/helpers.rb +28 -0
- data/lib/compass/exec/project_options_parser.rb +46 -0
- data/lib/compass/exec/sub_command_ui.rb +45 -0
- data/lib/compass/exec/switch_ui.rb +166 -0
- data/lib/compass/frameworks.rb +70 -7
- data/lib/compass/frameworks/blueprint/stylesheets/_blueprint.sass +31 -0
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_buttons.sass +27 -27
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_colors.sass +0 -0
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_debug.sass +2 -2
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_fancy_type.sass +19 -19
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/_form.sass +56 -0
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_grid.sass +34 -33
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/_ie.sass +99 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/_interaction.sass +58 -0
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_link_icons.sass +9 -9
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_liquid.sass +29 -29
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/_print.sass +87 -0
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_reset.sass +20 -18
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/_rtl.sass +123 -0
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_scaffolding.sass +6 -4
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/_screen.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/_typography.sass +162 -0
- data/{frameworks/blueprint/stylesheets/blueprint/modules → lib/compass/frameworks/blueprint/stylesheets/blueprint}/_utilities.sass +15 -15
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_buttons.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_colors.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_debug.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_fancy_type.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_form.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_grid.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_interaction.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_link_icons.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_liquid.sass +3 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_reset.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_rtl.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_scaffolding.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_typography.sass +2 -0
- data/lib/compass/frameworks/blueprint/stylesheets/blueprint/modules/_utilities.sass +2 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/buttons/buttons.sass +4 -4
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/buttons/buttons/cross.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/buttons/buttons/key.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/buttons/buttons/tick.png +0 -0
- data/lib/compass/frameworks/blueprint/templates/buttons/manifest.rb +17 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons.sass +1 -1
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/doc.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/email.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/external.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/feed.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/im.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/pdf.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/visited.png +0 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/link_icons/link_icons/xls.png +0 -0
- data/lib/compass/frameworks/blueprint/templates/link_icons/manifest.rb +23 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/project/grid.png +0 -0
- data/lib/compass/frameworks/blueprint/templates/project/ie.sass +16 -0
- data/lib/compass/frameworks/blueprint/templates/project/manifest.rb +32 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/project/partials/_base.sass +0 -0
- data/lib/compass/frameworks/blueprint/templates/project/print.sass +8 -0
- data/{frameworks → lib/compass/frameworks}/blueprint/templates/project/screen.sass +3 -2
- data/lib/compass/frameworks/blueprint/templates/project/welcome.html.haml +21 -0
- data/lib/compass/frameworks/compass/stylesheets/_compass.sass +2 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/_css3.sass +14 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/_layout.sass +0 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/_misc.sass +12 -12
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/_reset.sass +0 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/_utilities.sass +0 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_background_clip.sass +16 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_background_origin.sass +18 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_background_size.sass +14 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_border_radius.sass +47 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_box_shadow.sass +20 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_box_sizing.sass +13 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_columns.sass +37 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_font_face.sass +31 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_gradient.sass +40 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_inline_block.sass +7 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_opacity.sass +18 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_text_shadow.sass +15 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_transform.sass +62 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/css3/_transition.sass +57 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/layout/_sticky_footer.sass +9 -7
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/_general.sass +0 -1
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/_links.sass +1 -1
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/_lists.sass +0 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/_print.sass +18 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/_sprites.sass +1 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/_tables.sass +0 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/_text.sass +0 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/general/_clearfix.sass +7 -7
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/general/_float.sass +2 -2
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/general/_hacks.sass +2 -2
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/general/_reset.sass +28 -28
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/general/_tabs.sass +0 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/general/_tag_cloud.sass +19 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/links/_hover_link.sass +2 -2
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/links/_link_colors.sass +6 -6
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/links/_unstyled_link.sass +7 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/lists/_bullets.sass +6 -6
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/lists/_horizontal_list.sass +6 -6
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/lists/_inline_list.sass +9 -9
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite_img.sass +52 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/tables/_alternating_rows_and_columns.sass +20 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/tables/_borders.sass +27 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.sass +9 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/text/_ellipsis.sass +0 -0
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/text/_nowrap.sass +1 -1
- data/{frameworks → lib/compass/frameworks}/compass/stylesheets/compass/utilities/text/_replacement.sass +6 -6
- data/{frameworks → lib/compass/frameworks}/compass/templates/ellipsis/ellipsis.sass +0 -0
- data/lib/compass/frameworks/compass/templates/ellipsis/manifest.rb +27 -0
- data/{frameworks → lib/compass/frameworks}/compass/templates/ellipsis/xml/ellipsis.xml +0 -0
- data/lib/compass/frameworks/compass/templates/extension/manifest.rb +20 -0
- data/lib/compass/frameworks/compass/templates/extension/stylesheets/main.sass +1 -0
- data/lib/compass/frameworks/compass/templates/extension/templates/project/manifest.rb +2 -0
- data/lib/compass/frameworks/compass/templates/extension/templates/project/screen.sass +2 -0
- data/lib/compass/frameworks/compass/templates/project/USAGE.markdown +32 -0
- data/{frameworks → lib/compass/frameworks}/compass/templates/project/ie.sass +0 -0
- data/{frameworks → lib/compass/frameworks}/compass/templates/project/manifest.rb +1 -0
- data/{frameworks → lib/compass/frameworks}/compass/templates/project/print.sass +0 -0
- data/{frameworks → lib/compass/frameworks}/compass/templates/project/screen.sass +0 -0
- data/lib/compass/grid_builder.rb +15 -11
- data/lib/compass/installers.rb +3 -5
- data/lib/compass/installers/bare_installer.rb +58 -0
- data/lib/compass/installers/base.rb +40 -51
- data/lib/compass/installers/manifest.rb +55 -2
- data/lib/compass/installers/manifest_installer.rb +59 -0
- data/lib/compass/installers/template_context.rb +44 -0
- data/lib/compass/logger.rb +28 -2
- data/lib/compass/sass_extensions.rb +2 -2
- data/lib/compass/sass_extensions/functions.rb +4 -2
- data/lib/compass/sass_extensions/functions/color_stop.rb +10 -0
- data/lib/compass/sass_extensions/functions/font_files.rb +11 -0
- data/lib/compass/sass_extensions/functions/inline_image.rb +22 -1
- data/lib/compass/sass_extensions/functions/selectors.rb +4 -1
- data/lib/compass/sass_extensions/functions/urls.rb +22 -2
- data/lib/compass/sass_extensions/monkey_patches.rb +3 -3
- data/lib/compass/sass_extensions/monkey_patches/traversal.rb +23 -0
- data/lib/compass/stats.rb +92 -0
- data/lib/compass/validator.rb +2 -3
- data/lib/vendor/fssm/state.rb +1 -1
- data/test/command_line_helper.rb +19 -16
- data/test/command_line_test.rb +5 -4
- data/test/compass_test.rb +16 -15
- data/test/configuration_test.rb +24 -19
- data/test/fixtures/stylesheets/blueprint/css/typography.css +5 -3
- data/test/fixtures/stylesheets/blueprint/sass/screen.sass +1 -1
- data/test/fixtures/stylesheets/blueprint/sass/typography.sass +2 -2
- data/test/fixtures/stylesheets/compass/css/layout.css +2 -0
- data/test/fixtures/stylesheets/compass/css/print.css +2 -8
- data/test/fixtures/stylesheets/compass/css/reset.css +3 -3
- data/test/fixtures/stylesheets/image_urls/css/screen.css +2 -0
- data/test/fixtures/stylesheets/relative/assets/images/testing.png +0 -0
- data/test/fixtures/stylesheets/relative/config.rb +9 -0
- data/test/fixtures/stylesheets/relative/css/ie.css +1 -0
- data/test/fixtures/stylesheets/relative/css/print.css +1 -0
- data/test/fixtures/stylesheets/relative/css/screen.css +1 -0
- data/test/fixtures/stylesheets/relative/sass/ie.sass +6 -0
- data/test/fixtures/stylesheets/relative/sass/print.sass +6 -0
- data/test/fixtures/stylesheets/relative/sass/screen.sass +3 -0
- data/test/io_helper.rb +36 -0
- data/test/rails_helper.rb +40 -0
- data/test/rails_integration_test.rb +7 -44
- data/test/sass_extensions_test.rb +2 -2
- data/test/test_helper.rb +9 -2
- metadata +257 -110
- data/frameworks/blueprint.rb +0 -2
- data/frameworks/blueprint/stylesheets/_blueprint.sass +0 -3
- data/frameworks/blueprint/stylesheets/blueprint/_ie.sass +0 -93
- data/frameworks/blueprint/stylesheets/blueprint/_print.sass +0 -83
- data/frameworks/blueprint/stylesheets/blueprint/_reset.sass +0 -3
- data/frameworks/blueprint/stylesheets/blueprint/_screen.sass +0 -15
- data/frameworks/blueprint/stylesheets/blueprint/modules/_form.sass +0 -55
- data/frameworks/blueprint/stylesheets/blueprint/modules/_interaction.sass +0 -58
- data/frameworks/blueprint/stylesheets/blueprint/modules/_rtl.sass +0 -104
- data/frameworks/blueprint/stylesheets/blueprint/modules/_typography.sass +0 -155
- data/frameworks/blueprint/templates/buttons/manifest.rb +0 -5
- data/frameworks/blueprint/templates/link_icons/manifest.rb +0 -10
- data/frameworks/blueprint/templates/project/ie.sass +0 -15
- data/frameworks/blueprint/templates/project/manifest.rb +0 -6
- data/frameworks/blueprint/templates/project/print.sass +0 -3
- data/frameworks/compass.rb +0 -2
- data/frameworks/compass/stylesheets/_compass.sass +0 -1
- data/frameworks/compass/stylesheets/compass/utilities/_print.sass +0 -24
- data/frameworks/compass/stylesheets/compass/utilities/_sprites.sass +0 -1
- data/frameworks/compass/stylesheets/compass/utilities/general/_inline_block.sass +0 -6
- data/frameworks/compass/stylesheets/compass/utilities/general/_tag_cloud.sass +0 -19
- data/frameworks/compass/stylesheets/compass/utilities/links/_unstyled_link.sass +0 -5
- data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite_img.sass +0 -12
- data/frameworks/compass/stylesheets/compass/utilities/tables/_alternating_rows_and_columns.sass +0 -20
- data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.sass +0 -27
- data/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.sass +0 -9
- data/frameworks/compass/templates/ellipsis/manifest.rb +0 -2
- data/frameworks/yui.rb +0 -2
- data/frameworks/yui/stylesheets/yui/modules/_base.sass +0 -60
- data/lib/compass/installers/rails.rb +0 -135
- data/lib/compass/installers/stand_alone.rb +0 -60
- data/test/fixtures/stylesheets/yui/config.rb +0 -9
- data/test/fixtures/stylesheets/yui/css/mixins.css +0 -13
- data/test/fixtures/stylesheets/yui/sass/base.sass +0 -3
- data/test/fixtures/stylesheets/yui/sass/fonts.sass +0 -3
- data/test/fixtures/stylesheets/yui/sass/grids.sass +0 -3
- data/test/fixtures/stylesheets/yui/sass/mixins.sass +0 -16
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
module Compass
|
|
2
|
+
module AppIntegration
|
|
3
|
+
module StandAlone
|
|
4
|
+
module ConfigurationDefaults
|
|
5
|
+
def default_project_type
|
|
6
|
+
:stand_alone
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def sass_dir_without_default
|
|
10
|
+
"src"
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def javascripts_dir_without_default
|
|
14
|
+
"javascripts"
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def css_dir_without_default
|
|
18
|
+
"stylesheets"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def images_dir_without_default
|
|
22
|
+
"images"
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
module Compass
|
|
2
|
+
module Installers
|
|
3
|
+
class Base
|
|
4
|
+
end
|
|
5
|
+
class ManifestInstaller < Base
|
|
6
|
+
end
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
module AppIntegration
|
|
10
|
+
module StandAlone
|
|
11
|
+
class Installer < Compass::Installers::ManifestInstaller
|
|
12
|
+
|
|
13
|
+
def init
|
|
14
|
+
directory targetize("")
|
|
15
|
+
super
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def write_configuration_files(config_file = nil)
|
|
19
|
+
config_file ||= targetize('config.rb')
|
|
20
|
+
write_file config_file, config_contents
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def config_files_exist?
|
|
24
|
+
File.exists? targetize('config.rb')
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def config_contents
|
|
28
|
+
project_path, Compass.configuration.project_path = Compass.configuration.project_path, nil
|
|
29
|
+
Compass.configuration.serialize
|
|
30
|
+
ensure
|
|
31
|
+
Compass.configuration.project_path = project_path
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def prepare
|
|
35
|
+
write_configuration_files unless config_files_exist? || !@manifest.generate_config?
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def completed_configuration
|
|
39
|
+
nil
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def finalize(options = {})
|
|
43
|
+
if options[:create] && !manifest.welcome_message_options[:replace]
|
|
44
|
+
puts <<-NEXTSTEPS
|
|
45
|
+
|
|
46
|
+
*********************************************************************
|
|
47
|
+
Congratulations! Your compass project has been created.
|
|
48
|
+
|
|
49
|
+
You may now add and edit sass stylesheets in the #{Compass.configuration.sass_dir} subdirectory of your project.
|
|
50
|
+
|
|
51
|
+
Sass files beginning with an underscore are called partials and won't be
|
|
52
|
+
compiled to CSS, but they can be imported into other sass stylesheets.
|
|
53
|
+
|
|
54
|
+
You can configure your project by editing the config.rb configuration file.
|
|
55
|
+
|
|
56
|
+
You must compile your sass stylesheets into CSS when they change.
|
|
57
|
+
This can be done in one of the following ways:
|
|
58
|
+
1. To compile on demand:
|
|
59
|
+
compass compile [path/to/project]
|
|
60
|
+
2. To monitor your project for changes and automatically recompile:
|
|
61
|
+
compass watch [path/to/project]
|
|
62
|
+
|
|
63
|
+
More Resources:
|
|
64
|
+
* Wiki: http://wiki.github.com/chriseppstein/compass
|
|
65
|
+
* Sass: http://sass-lang.com
|
|
66
|
+
* Community: http://groups.google.com/group/compass-users/
|
|
67
|
+
|
|
68
|
+
NEXTSTEPS
|
|
69
|
+
end
|
|
70
|
+
puts manifest.welcome_message if manifest.welcome_message
|
|
71
|
+
if manifest.has_stylesheet? && !manifest.welcome_message_options[:replace]
|
|
72
|
+
puts "\nTo import your new stylesheets add the following lines of HTML (or equivalent) to your webpage:"
|
|
73
|
+
puts stylesheet_links
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def compilation_required?
|
|
78
|
+
@manifest.compile?
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module Compass::Commands
|
|
2
|
+
end
|
|
3
|
+
|
|
4
|
+
require 'compass/commands/registry'
|
|
5
|
+
|
|
6
|
+
%w(base generate_grid_background help list_frameworks project_base
|
|
7
|
+
update_project watch_project create_project installer_command
|
|
8
|
+
print_version project_stats stamp_pattern validate_project
|
|
9
|
+
write_configuration interactive).each do |lib|
|
|
10
|
+
require "compass/commands/#{lib}"
|
|
11
|
+
end
|
|
@@ -1,13 +1,116 @@
|
|
|
1
1
|
require 'fileutils'
|
|
2
|
-
require
|
|
3
|
-
require File.join(File.dirname(__FILE__), 'update_project')
|
|
2
|
+
require 'compass/commands/stamp_pattern'
|
|
4
3
|
|
|
5
4
|
module Compass
|
|
6
5
|
module Commands
|
|
6
|
+
module CreateProjectOptionsParser
|
|
7
|
+
def set_options(opts)
|
|
8
|
+
|
|
9
|
+
if $command == "create"
|
|
10
|
+
opts.banner = %Q{
|
|
11
|
+
Usage: compass create path/to/project [options]
|
|
12
|
+
|
|
13
|
+
Description:
|
|
14
|
+
Create a new compass project at the path specified.
|
|
15
|
+
|
|
16
|
+
Options:
|
|
17
|
+
}.split("\n").map{|l| l.gsub(/^ */,'')}.join("\n")
|
|
18
|
+
|
|
19
|
+
opts.on_tail("--bare", "Don't generate any Sass or CSS files.") do
|
|
20
|
+
self.options[:bare] = true
|
|
21
|
+
end
|
|
22
|
+
else
|
|
23
|
+
opts.banner = %Q{
|
|
24
|
+
Usage: compass init project_type path/to/project [options]
|
|
25
|
+
|
|
26
|
+
Description:
|
|
27
|
+
Initialize an existing project at the path specified.
|
|
28
|
+
|
|
29
|
+
Supported Project Types:
|
|
30
|
+
* rails
|
|
31
|
+
|
|
32
|
+
Options:
|
|
33
|
+
}.split("\n").map{|l| l.gsub(/^ */,'')}.join("\n").strip
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
opts.on("--using FRAMEWORK", "Framework to use when creating the project.") do |framework|
|
|
37
|
+
framework = framework.split('/', 2)
|
|
38
|
+
self.options[:framework] = framework[0]
|
|
39
|
+
self.options[:pattern] = framework[1]
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
super
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
7
46
|
class CreateProject < StampPattern
|
|
8
47
|
|
|
9
|
-
|
|
10
|
-
|
|
48
|
+
register :create
|
|
49
|
+
register :init
|
|
50
|
+
|
|
51
|
+
class << self
|
|
52
|
+
def option_parser(arguments)
|
|
53
|
+
parser = Compass::Exec::CommandOptionParser.new(arguments)
|
|
54
|
+
parser.extend(Compass::Exec::GlobalOptionsParser)
|
|
55
|
+
parser.extend(Compass::Exec::ProjectOptionsParser)
|
|
56
|
+
parser.extend(CreateProjectOptionsParser)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def usage
|
|
60
|
+
option_parser([]).to_s
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def description(command)
|
|
64
|
+
if command.to_sym == :create
|
|
65
|
+
"Create a new compass project"
|
|
66
|
+
else
|
|
67
|
+
"Initialize an existing project"
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def primary; true; end
|
|
72
|
+
|
|
73
|
+
def parse!(arguments)
|
|
74
|
+
parser = option_parser(arguments)
|
|
75
|
+
parse_options!(parser, arguments)
|
|
76
|
+
parse_arguments!(parser, arguments)
|
|
77
|
+
if parser.options[:framework] && parser.options[:bare]
|
|
78
|
+
raise Compass::Error, "A bare project cannot be created when a framework is specified."
|
|
79
|
+
end
|
|
80
|
+
set_default_arguments(parser)
|
|
81
|
+
parser.options
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
def parse_init!(arguments)
|
|
85
|
+
parser = option_parser(arguments)
|
|
86
|
+
parse_options!(parser, arguments)
|
|
87
|
+
if arguments.size > 0
|
|
88
|
+
parser.options[:project_type] = arguments.shift.to_sym
|
|
89
|
+
end
|
|
90
|
+
parse_arguments!(parser, arguments)
|
|
91
|
+
set_default_arguments(parser)
|
|
92
|
+
parser.options
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
def parse_options!(parser, arguments)
|
|
96
|
+
parser.parse!
|
|
97
|
+
parser
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
def parse_arguments!(parser, arguments)
|
|
101
|
+
if arguments.size == 1
|
|
102
|
+
parser.options[:project_name] = arguments.shift
|
|
103
|
+
elsif arguments.size == 0
|
|
104
|
+
# default to the current directory.
|
|
105
|
+
else
|
|
106
|
+
raise Compass::Error, "Too many arguments were specified."
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
def set_default_arguments(parser)
|
|
111
|
+
parser.options[:framework] ||= :compass
|
|
112
|
+
parser.options[:pattern] ||= "project"
|
|
113
|
+
end
|
|
11
114
|
end
|
|
12
115
|
|
|
13
116
|
def is_project_creation?
|
|
@@ -16,4 +119,4 @@ module Compass
|
|
|
16
119
|
|
|
17
120
|
end
|
|
18
121
|
end
|
|
19
|
-
end
|
|
122
|
+
end
|
|
@@ -1,19 +1,86 @@
|
|
|
1
|
-
require
|
|
2
|
-
require
|
|
3
|
-
require
|
|
1
|
+
require 'compass/commands/project_base'
|
|
2
|
+
require 'compass/commands/update_project'
|
|
3
|
+
require 'compass/grid_builder'
|
|
4
4
|
|
|
5
5
|
module Compass
|
|
6
6
|
module Commands
|
|
7
|
+
module GridBackgroundOptionsParser
|
|
8
|
+
def set_options(opts)
|
|
9
|
+
banner = %Q{Usage: compass grid-img W+GxH [path/to/grid.png]
|
|
10
|
+
|
|
11
|
+
Description:
|
|
12
|
+
Generates a background image that can be used to check grid alignment.
|
|
13
|
+
|
|
14
|
+
Height is optional and defaults to 20px
|
|
15
|
+
|
|
16
|
+
By default, the image generated will be named "grid.png"
|
|
17
|
+
and be found in the images directory.
|
|
18
|
+
|
|
19
|
+
This command requires that you have both ImageMagick and RMagick installed.
|
|
20
|
+
|
|
21
|
+
Examples:
|
|
22
|
+
|
|
23
|
+
compass grid-img 40+10 # 40px column, 10px gutter, 20px height
|
|
24
|
+
compass grid-img 40+20x28 # 40px column, 20px gutter, 28px height
|
|
25
|
+
compass grid-img 60+20x28 images/wide_grid.png
|
|
26
|
+
|
|
27
|
+
Options:
|
|
28
|
+
}
|
|
29
|
+
opts.banner = banner
|
|
30
|
+
|
|
31
|
+
super
|
|
32
|
+
end
|
|
33
|
+
end
|
|
7
34
|
class GenerateGridBackground < ProjectBase
|
|
35
|
+
|
|
8
36
|
include Actions
|
|
37
|
+
|
|
38
|
+
register :"grid-img"
|
|
39
|
+
|
|
40
|
+
class << self
|
|
41
|
+
def option_parser(arguments)
|
|
42
|
+
parser = Compass::Exec::CommandOptionParser.new(arguments)
|
|
43
|
+
parser.extend(Compass::Exec::GlobalOptionsParser)
|
|
44
|
+
parser.extend(GridBackgroundOptionsParser)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def usage
|
|
48
|
+
option_parser([]).to_s
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def description(command)
|
|
52
|
+
"Generates a grid background image."
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def parse!(arguments)
|
|
56
|
+
parser = option_parser(arguments)
|
|
57
|
+
parser.parse!
|
|
58
|
+
if arguments.size == 0
|
|
59
|
+
raise OptionParser::ParseError, "Please specify the grid dimensions."
|
|
60
|
+
end
|
|
61
|
+
parser.options[:grid_dimensions] = arguments.shift
|
|
62
|
+
parser.options[:grid_filename] = arguments.shift
|
|
63
|
+
parser.options
|
|
64
|
+
end
|
|
65
|
+
end
|
|
9
66
|
def initialize(working_path, options)
|
|
10
67
|
super
|
|
11
68
|
assert_project_directory_exists!
|
|
69
|
+
Compass.add_configuration(options, 'command_line')
|
|
12
70
|
end
|
|
13
71
|
|
|
14
72
|
def perform
|
|
15
|
-
|
|
16
|
-
|
|
73
|
+
unless options[:grid_dimensions] =~ /^(\d+)\+(\d+)(?:x(\d+))?$/
|
|
74
|
+
puts "ERROR: '#{options[:grid_dimensions]}' is not valid."
|
|
75
|
+
puts "Dimensions should be specified like: 30+10x20"
|
|
76
|
+
puts "where 30 is the column width, 10 is the gutter width, and 20 is the (optional) height."
|
|
77
|
+
return
|
|
78
|
+
end
|
|
79
|
+
column_width = $1.to_i
|
|
80
|
+
gutter_width = $2.to_i
|
|
81
|
+
height = $3.to_i if $3
|
|
82
|
+
filename = options[:grid_filename] || projectize("#{project_images_subdirectory}/grid.png")
|
|
83
|
+
unless GridBuilder.new(options.merge(:column_width => column_width, :gutter_width => gutter_width, :height => height, :filename => filename, :working_path => self.working_path)).generate!
|
|
17
84
|
puts "ERROR: Some library dependencies appear to be missing."
|
|
18
85
|
puts "Have you installed rmagick? If not, please run:"
|
|
19
86
|
puts "sudo gem install rmagick"
|
|
@@ -21,4 +88,4 @@ module Compass
|
|
|
21
88
|
end
|
|
22
89
|
end
|
|
23
90
|
end
|
|
24
|
-
end
|
|
91
|
+
end
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
module Compass
|
|
2
|
+
module Commands
|
|
3
|
+
module HelpOptionsParser
|
|
4
|
+
def set_options(opts)
|
|
5
|
+
banner = %Q{Usage: compass help [command]
|
|
6
|
+
|
|
7
|
+
Description:
|
|
8
|
+
The Compass Stylesheet Authoring Framework helps you
|
|
9
|
+
build and maintain your stylesheets and makes it easy
|
|
10
|
+
for you to use stylesheet libraries provided by others.
|
|
11
|
+
|
|
12
|
+
To get help on a particular command please specify the command.
|
|
13
|
+
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
primary_commands = Compass::Commands.all.select do |c|
|
|
17
|
+
cmd = Compass::Commands[c]
|
|
18
|
+
cmd.respond_to?(:primary) && cmd.primary
|
|
19
|
+
end
|
|
20
|
+
other_commands = Compass::Commands.all - primary_commands
|
|
21
|
+
|
|
22
|
+
banner << command_list("Primary Commands:", primary_commands)
|
|
23
|
+
banner << command_list("Other Commands:", other_commands)
|
|
24
|
+
|
|
25
|
+
banner << "\nAvailable Frameworks & Patterns:\n\n"
|
|
26
|
+
Compass::Frameworks::ALL.each do |framework|
|
|
27
|
+
banner << " * #{framework.name}\n"
|
|
28
|
+
framework.template_directories.each do |pattern|
|
|
29
|
+
banner << " - #{framework.name}/#{pattern}"
|
|
30
|
+
if description = framework.manifest(pattern).description
|
|
31
|
+
banner << "\t- #{description}"
|
|
32
|
+
end
|
|
33
|
+
banner << "\n"
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
opts.banner = banner
|
|
38
|
+
|
|
39
|
+
super
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def command_list(header, commands)
|
|
43
|
+
list = "#{header}\n"
|
|
44
|
+
commands.sort_by{|c| c.to_s}.each do |command|
|
|
45
|
+
list << " * #{command}"
|
|
46
|
+
if Compass::Commands[command].respond_to? :description
|
|
47
|
+
list << "\t- #{Compass::Commands[command].description(command)}"
|
|
48
|
+
end
|
|
49
|
+
list << "\n"
|
|
50
|
+
end
|
|
51
|
+
list
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
class Help < Base
|
|
55
|
+
register :help
|
|
56
|
+
|
|
57
|
+
class << self
|
|
58
|
+
def option_parser(arguments)
|
|
59
|
+
parser = Compass::Exec::CommandOptionParser.new(arguments)
|
|
60
|
+
parser.extend(HelpOptionsParser)
|
|
61
|
+
end
|
|
62
|
+
def usage
|
|
63
|
+
option_parser([]).to_s
|
|
64
|
+
end
|
|
65
|
+
def description(command)
|
|
66
|
+
"Get help on a compass command or extension"
|
|
67
|
+
end
|
|
68
|
+
def parse!(arguments)
|
|
69
|
+
parser = option_parser(arguments)
|
|
70
|
+
parser.parse!
|
|
71
|
+
parser.options[:help_command] = arguments.shift || 'help'
|
|
72
|
+
parser.options
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def execute
|
|
77
|
+
if Compass::Commands.command_exists? options[:help_command]
|
|
78
|
+
$command = options[:help_command]
|
|
79
|
+
puts Compass::Commands[options[:help_command]].usage
|
|
80
|
+
$command = "help"
|
|
81
|
+
elsif Compass::Frameworks.template_exists? options[:help_command]
|
|
82
|
+
puts Compass::Frameworks.template_usage(options[:help_command])
|
|
83
|
+
else
|
|
84
|
+
raise OptionParser::ParseError, "No such command: #{options[:help_command]}"
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|