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,13 @@
|
|
|
1
|
+
Given /^the "([^\"]*)" directory exists$/ do |directory|
|
|
2
|
+
FileUtils.mkdir_p directory
|
|
3
|
+
end
|
|
4
|
+
|
|
5
|
+
Given /^and I have a fake extension at (.*)$/ do |directory|
|
|
6
|
+
FileUtils.mkdir_p File.join(directory, 'stylesheets')
|
|
7
|
+
FileUtils.mkdir_p File.join(directory, 'templates/project')
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
Then /^the list of frameworks includes "([^\"]*)"$/ do |framework|
|
|
11
|
+
@last_result.split("\n").map{|f| f.strip}.should include(framework)
|
|
12
|
+
end
|
|
13
|
+
|
data/lib/compass.rb
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
module Compass
|
|
2
2
|
end
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
require
|
|
4
|
+
%w(dependencies sass_extensions core_ext version errors).each do |lib|
|
|
5
|
+
require "compass/#{lib}"
|
|
6
6
|
end
|
|
7
7
|
|
|
8
8
|
module Compass
|
|
9
9
|
extend Compass::Version
|
|
10
|
+
VERSION = "#{version[:major]}.#{version[:minor]}.#{version[:patch]}"
|
|
10
11
|
def base_directory
|
|
11
12
|
File.expand_path(File.join(File.dirname(__FILE__), '..'))
|
|
12
13
|
end
|
|
@@ -16,8 +17,6 @@ module Compass
|
|
|
16
17
|
module_function :base_directory, :lib_directory
|
|
17
18
|
end
|
|
18
19
|
|
|
19
|
-
|
|
20
|
-
require
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
%w(configuration frameworks app_integration).each do |lib|
|
|
21
|
+
require "compass/#{lib}"
|
|
22
|
+
end
|
data/lib/compass/actions.rb
CHANGED
|
@@ -32,6 +32,7 @@ module Compass
|
|
|
32
32
|
def write_file(file_name, contents, options = nil, binary = false)
|
|
33
33
|
options ||= self.options if self.respond_to?(:options)
|
|
34
34
|
skip_write = options[:dry_run]
|
|
35
|
+
contents = process_erb(contents, options[:erb]) if options[:erb]
|
|
35
36
|
if File.exists?(file_name)
|
|
36
37
|
existing_contents = IO.read(file_name)
|
|
37
38
|
if existing_contents == contents
|
|
@@ -47,7 +48,7 @@ module Compass
|
|
|
47
48
|
logger.record :create, basename(file_name)
|
|
48
49
|
end
|
|
49
50
|
if skip_write
|
|
50
|
-
FileUtils.touch file_name
|
|
51
|
+
FileUtils.touch file_name unless options[:dry_run]
|
|
51
52
|
else
|
|
52
53
|
mode = "w"
|
|
53
54
|
mode << "b" if binary
|
|
@@ -57,6 +58,11 @@ module Compass
|
|
|
57
58
|
end
|
|
58
59
|
end
|
|
59
60
|
|
|
61
|
+
def process_erb(contents, ctx = nil)
|
|
62
|
+
ctx = Object.new.instance_eval("binding") unless ctx.is_a? Binding
|
|
63
|
+
ERB.new(contents).result(ctx)
|
|
64
|
+
end
|
|
65
|
+
|
|
60
66
|
# Compile one Sass file
|
|
61
67
|
def compile(sass_filename, css_filename, options)
|
|
62
68
|
if options[:force] || Sass::Plugin.exact_stylesheet_needs_update?(css_filename, sass_filename)
|
|
@@ -1,5 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
require
|
|
1
|
+
%w(stand_alone rails merb).each do |lib|
|
|
2
|
+
require "compass/app_integration/#{lib}"
|
|
3
|
+
end
|
|
3
4
|
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
module Compass
|
|
6
|
+
module AppIntegration
|
|
7
|
+
module Helpers
|
|
8
|
+
def lookup(project_type)
|
|
9
|
+
eval "Compass::AppIntegration::#{camelize(project_type)}"
|
|
10
|
+
rescue NameError
|
|
11
|
+
raise Compass::Error, "No application integration exists for #{project_type}"
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
protected
|
|
15
|
+
|
|
16
|
+
# Stolen from ActiveSupport
|
|
17
|
+
def camelize(s)
|
|
18
|
+
s.to_s.gsub(/\/(.?)/) { "::#{$1.upcase}" }.gsub(/(?:^|_)(.)/) { $1.upcase }
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
end
|
|
22
|
+
extend Helpers
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -1,43 +1 @@
|
|
|
1
|
-
|
|
2
|
-
# Merb::BootLoader.after_app_loads do
|
|
3
|
-
# require 'merb-haml'
|
|
4
|
-
# require 'compass'
|
|
5
|
-
# end
|
|
6
|
-
#
|
|
7
|
-
# To use a different sass stylesheets locations as is recommended by compass
|
|
8
|
-
# add this configuration to your configuration block:
|
|
9
|
-
#
|
|
10
|
-
# Merb::Config.use do |c|
|
|
11
|
-
# c[:compass] = {
|
|
12
|
-
# :stylesheets => 'app/stylesheets',
|
|
13
|
-
# :compiled_stylesheets => 'public/stylesheets/compiled'
|
|
14
|
-
# }
|
|
15
|
-
# end
|
|
16
|
-
|
|
17
|
-
Merb::BootLoader.after_app_loads do
|
|
18
|
-
#set up sass if haml load didn't do it -- this happens when using a non-default stylesheet location.
|
|
19
|
-
unless defined?(Sass::Plugin)
|
|
20
|
-
require "sass/plugin"
|
|
21
|
-
Sass::Plugin.options = Merb::Config[:sass] if Merb::Config[:sass]
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
# default the compass configuration if they didn't set it up yet.
|
|
25
|
-
Merb::Config[:compass] ||= {}
|
|
26
|
-
|
|
27
|
-
# default sass stylesheet location unless configured to something else
|
|
28
|
-
Merb::Config[:compass][:stylesheets] ||= Merb.dir_for(:stylesheet) / "sass"
|
|
29
|
-
|
|
30
|
-
# default sass css location unless configured to something else
|
|
31
|
-
Merb::Config[:compass][:compiled_stylesheets] ||= Merb.dir_for(:stylesheet)
|
|
32
|
-
|
|
33
|
-
#define the template hash for the project stylesheets as well as the framework stylesheets.
|
|
34
|
-
template_location = {
|
|
35
|
-
Merb::Config[:compass][:stylesheets] => Merb::Config[:compass][:compiled_stylesheets]
|
|
36
|
-
}
|
|
37
|
-
Compass::Frameworks::ALL.each do |framework|
|
|
38
|
-
template_location[framework.stylesheets_directory] = Merb::Config[:compass][:compiled_stylesheets]
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
#configure Sass to know about all these sass locations.
|
|
42
|
-
Sass::Plugin.options[:template_location] = template_location
|
|
43
|
-
end
|
|
1
|
+
require 'compass/app_integration/merb/runtime' if defined?(Merb::Plugins)
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# To configure Merb to use compass do the following:
|
|
2
|
+
#
|
|
3
|
+
# Add dependencies to config/dependencies.rb
|
|
4
|
+
#
|
|
5
|
+
# dependency "haml", ">=2.2.0"
|
|
6
|
+
# dependency "merb-haml", merb_gems_version
|
|
7
|
+
# dependency "chriseppstein-compass", :require_as => 'compass'
|
|
8
|
+
#
|
|
9
|
+
#
|
|
10
|
+
# To use a different sass stylesheets locations as is recommended by compass
|
|
11
|
+
# add this configuration to your configuration block:
|
|
12
|
+
#
|
|
13
|
+
# Merb::BootLoader.before_app_loads do
|
|
14
|
+
# Merb::Plugins.config[:compass] = {
|
|
15
|
+
# :stylesheets => "app/stylesheets",
|
|
16
|
+
# :compiled_stylesheets => "public/stylesheets/compiled"
|
|
17
|
+
# }
|
|
18
|
+
# end
|
|
19
|
+
#
|
|
20
|
+
module Compass
|
|
21
|
+
def self.setup_template_location
|
|
22
|
+
# default the compass configuration if they didn't set it up yet.
|
|
23
|
+
Merb::Plugins.config[:compass] ||= {}
|
|
24
|
+
|
|
25
|
+
# default sass stylesheet location unless configured to something else
|
|
26
|
+
Merb::Plugins.config[:compass][:stylesheets] ||= Merb.dir_for(:stylesheet) / "sass"
|
|
27
|
+
|
|
28
|
+
# default sass css location unless configured to something else
|
|
29
|
+
Merb::Plugins.config[:compass][:compiled_stylesheets] ||= Merb.dir_for(:stylesheet)
|
|
30
|
+
|
|
31
|
+
#define the template hash for the project stylesheets as well as the framework stylesheets.
|
|
32
|
+
template_location = {
|
|
33
|
+
Merb::Plugins.config[:compass][:stylesheets] => Merb::Plugins.config[:compass][:compiled_stylesheets]
|
|
34
|
+
}
|
|
35
|
+
Compass::Frameworks::ALL.each do |framework|
|
|
36
|
+
template_location[framework.stylesheets_directory] = Merb::Plugins.config[:compass][:compiled_stylesheets]
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# merge existing template locations if present
|
|
40
|
+
if Merb::Plugins.config[:sass][:template_location].is_a?(Hash)
|
|
41
|
+
template_location.merge!(Merb::Plugins.config[:sass][:template_location])
|
|
42
|
+
Merb::Plugins.config[:sass][:template_location] = template_location
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
#configure Sass to know about all these sass locations.
|
|
46
|
+
Sass::Plugin.options[:template_location] = template_location
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
Merb::BootLoader.after_app_loads do
|
|
51
|
+
#set up sass if haml load didn't do it -- this happens when using a non-default stylesheet location.
|
|
52
|
+
unless defined?(Sass::Plugin)
|
|
53
|
+
require "sass/plugin"
|
|
54
|
+
if Merb::Plugins.config[:sass]
|
|
55
|
+
Sass::Plugin.options = Merb::Plugins.config[:sass]
|
|
56
|
+
# support old (deprecatd Merb::Config[:sass] option)
|
|
57
|
+
elsif Merb::Config[:sass]
|
|
58
|
+
Sass::Plugin.options = Merb::Config[:sass]
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
Compass.setup_template_location
|
|
63
|
+
end
|
|
@@ -1,12 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
%w(configuration_defaults installer).each do |lib|
|
|
2
|
+
require "compass/app_integration/rails/#{lib}"
|
|
3
|
+
end
|
|
4
|
+
|
|
5
|
+
require 'compass/app_integration/rails/runtime' if defined?(ActionController::Base)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
module Compass
|
|
9
|
+
module AppIntegration
|
|
10
|
+
module Rails
|
|
11
|
+
|
|
12
|
+
extend self
|
|
13
|
+
|
|
14
|
+
def installer(*args)
|
|
15
|
+
Installer.new(*args)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def configuration
|
|
19
|
+
Compass::Configuration::Data.new('rails').
|
|
20
|
+
extend(ConfigurationDefaults)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
end
|
|
11
24
|
end
|
|
12
25
|
end
|
|
26
|
+
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module Compass
|
|
2
|
+
module AppIntegration
|
|
3
|
+
module Rails
|
|
4
|
+
module ConfigurationDefaults
|
|
5
|
+
|
|
6
|
+
def project_type_without_default
|
|
7
|
+
:rails
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def default_images_dir
|
|
11
|
+
File.join("public", "images")
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def default_fonts_dir
|
|
15
|
+
File.join("public", "fonts")
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def default_javascripts_dir
|
|
19
|
+
File.join("public", "javascripts")
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def default_http_images_path
|
|
23
|
+
"/images"
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def default_http_javascripts_path
|
|
27
|
+
"/javascripts"
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def default_http_fonts_path
|
|
31
|
+
"/fonts"
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def default_http_stylesheets_path
|
|
35
|
+
"/stylesheets"
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def default_extensions_dir
|
|
39
|
+
"vendor/plugins/compass/extensions"
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,127 @@
|
|
|
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 Rails
|
|
11
|
+
class Installer < Compass::Installers::ManifestInstaller
|
|
12
|
+
|
|
13
|
+
def completed_configuration
|
|
14
|
+
config = {}
|
|
15
|
+
config[:sass_dir] = prompt_sass_dir unless sass_dir_without_default
|
|
16
|
+
config[:css_dir] = prompt_css_dir unless css_dir_without_default
|
|
17
|
+
config unless config.empty?
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def write_configuration_files(config_file = nil)
|
|
21
|
+
config_file ||= targetize('config/compass.rb')
|
|
22
|
+
directory File.dirname(config_file)
|
|
23
|
+
write_file config_file, config_contents
|
|
24
|
+
directory File.dirname(targetize('config/initializers/compass.rb'))
|
|
25
|
+
write_file targetize('config/initializers/compass.rb'), initializer_contents
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def config_files_exist?
|
|
29
|
+
File.exists?(targetize('config/compass.config')) &&
|
|
30
|
+
File.exists?(targetize('config/initializers/compass.rb'))
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def prepare
|
|
34
|
+
write_configuration_files unless config_files_exist?
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def finalize(options = {})
|
|
38
|
+
if options[:create]
|
|
39
|
+
puts <<-NEXTSTEPS
|
|
40
|
+
|
|
41
|
+
Congratulations! Your rails project has been configured to use Compass.
|
|
42
|
+
Sass will automatically compile your stylesheets during the next
|
|
43
|
+
page request and keep them up to date when they change.
|
|
44
|
+
Make sure you restart your server!
|
|
45
|
+
NEXTSTEPS
|
|
46
|
+
end
|
|
47
|
+
if manifest.has_stylesheet?
|
|
48
|
+
puts "\nNext add these lines to the head of your layouts:\n\n"
|
|
49
|
+
puts stylesheet_links
|
|
50
|
+
puts "\n(You are using haml, aren't you?)"
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
def install_location_for_html(to, options)
|
|
56
|
+
separate("public/#{pattern_name_as_dir}#{to}")
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def prompt_sass_dir
|
|
60
|
+
recommended_location = separate('app/stylesheets')
|
|
61
|
+
default_location = separate('public/stylesheets/sass')
|
|
62
|
+
print %Q{Compass recommends that you keep your stylesheets in #{recommended_location}
|
|
63
|
+
instead of the Sass default location of #{default_location}.
|
|
64
|
+
Is this OK? (Y/n) }
|
|
65
|
+
answer = gets.downcase[0]
|
|
66
|
+
answer == ?n ? default_location : recommended_location
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def prompt_css_dir
|
|
70
|
+
recommended_location = separate("public/stylesheets/compiled")
|
|
71
|
+
default_location = separate("public/stylesheets")
|
|
72
|
+
puts
|
|
73
|
+
print %Q{Compass recommends that you keep your compiled css in #{recommended_location}/
|
|
74
|
+
instead the Sass default of #{default_location}/.
|
|
75
|
+
However, if you're exclusively using Sass, then #{default_location}/ is recommended.
|
|
76
|
+
Emit compiled stylesheets to #{recommended_location}/? (Y/n) }
|
|
77
|
+
answer = gets.downcase[0]
|
|
78
|
+
answer == ?n ? default_location : recommended_location
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
def config_contents
|
|
82
|
+
Compass.configuration.serialize do |prop, value|
|
|
83
|
+
if prop == :project_path
|
|
84
|
+
"project_path = RAILS_ROOT if defined?(RAILS_ROOT)\n"
|
|
85
|
+
elsif prop == :output_style
|
|
86
|
+
""
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
def initializer_contents
|
|
92
|
+
%Q{require 'compass'
|
|
93
|
+
# If you have any compass plugins, require them here.
|
|
94
|
+
Compass.configuration.parse(File.join(RAILS_ROOT, "config", "compass.config"))
|
|
95
|
+
Compass.configuration.environment = RAILS_ENV.to_sym
|
|
96
|
+
Compass.configure_sass_plugin!
|
|
97
|
+
}
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
def stylesheet_prefix
|
|
101
|
+
if css_dir.length >= 19
|
|
102
|
+
"#{css_dir[19..-1]}/"
|
|
103
|
+
else
|
|
104
|
+
nil
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
def stylesheet_links
|
|
109
|
+
html = "%head\n"
|
|
110
|
+
manifest.each_stylesheet do |stylesheet|
|
|
111
|
+
# Skip partials.
|
|
112
|
+
next if File.basename(stylesheet.from)[0..0] == "_"
|
|
113
|
+
ss_line = " = stylesheet_link_tag '#{stylesheet_prefix}#{stylesheet.to.sub(/\.sass$/,'.css')}'"
|
|
114
|
+
if stylesheet.options[:media]
|
|
115
|
+
ss_line += ", :media => '#{stylesheet.options[:media]}'"
|
|
116
|
+
end
|
|
117
|
+
if stylesheet.options[:condition]
|
|
118
|
+
ss_line = " /[if #{stylesheet.options[:condition]}]\n " + ss_line
|
|
119
|
+
end
|
|
120
|
+
html << ss_line + "\n"
|
|
121
|
+
end
|
|
122
|
+
html
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
unless defined?(Compass::RAILS_LOADED)
|
|
2
|
+
Compass::RAILS_LOADED = true
|
|
3
|
+
|
|
4
|
+
%w(action_controller sass_plugin urls).each do |lib|
|
|
5
|
+
require "compass/app_integration/rails/#{lib}"
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
# Wierd that this has to be re-included to pick up sub-modules. Ruby bug?
|
|
9
|
+
class Sass::Script::Functions::EvaluationContext
|
|
10
|
+
include Sass::Script::Functions
|
|
11
|
+
private
|
|
12
|
+
include ActionView::Helpers::AssetTagHelper
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
%w(configuration_defaults installer).each do |lib|
|
|
2
|
+
require "compass/app_integration/stand_alone/#{lib}"
|
|
3
|
+
end
|
|
4
|
+
|
|
5
|
+
module Compass
|
|
6
|
+
module AppIntegration
|
|
7
|
+
module StandAlone
|
|
8
|
+
|
|
9
|
+
extend self
|
|
10
|
+
|
|
11
|
+
def installer(*args)
|
|
12
|
+
Installer.new(*args)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def configuration
|
|
16
|
+
Compass::Configuration::Data.new('stand_alone').
|
|
17
|
+
extend(ConfigurationDefaults)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|