compass 0.13.alpha.0 → 0.13.alpha.2
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/README.markdown +6 -4
- data/Rakefile +9 -0
- data/VERSION.yml +2 -2
- data/bin/compass +2 -1
- data/features/command_line.feature +5 -27
- data/features/step_definitions/command_line_steps.rb +3 -2
- data/frameworks/compass/stylesheets/compass/_css3.scss +3 -0
- data/frameworks/compass/stylesheets/compass/_support.scss +6 -0
- data/frameworks/compass/stylesheets/compass/css3/_animation.scss +77 -76
- data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +15 -9
- data/frameworks/compass/stylesheets/compass/css3/_background-clip.scss +35 -36
- data/frameworks/compass/stylesheets/compass/css3/_background-origin.scss +36 -34
- data/frameworks/compass/stylesheets/compass/css3/_background-size.scss +15 -15
- data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +30 -48
- data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +22 -27
- data/frameworks/compass/stylesheets/compass/css3/_box-sizing.scss +13 -8
- data/frameworks/compass/stylesheets/compass/css3/_box.scss +60 -82
- data/frameworks/compass/stylesheets/compass/css3/_columns.scss +145 -25
- data/frameworks/compass/stylesheets/compass/css3/_filter.scss +44 -0
- data/frameworks/compass/stylesheets/compass/css3/_hyphenation.scss +77 -0
- data/frameworks/compass/stylesheets/compass/css3/_images.scss +2 -2
- data/frameworks/compass/stylesheets/compass/css3/_inline-block.scss +14 -8
- data/frameworks/compass/stylesheets/compass/css3/_selection.scss +31 -0
- data/frameworks/compass/stylesheets/compass/css3/_shared.scss +207 -21
- data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +52 -13
- data/frameworks/compass/stylesheets/compass/css3/_transform.scss +14 -14
- data/frameworks/compass/stylesheets/compass/css3/_transition.scss +127 -60
- data/frameworks/compass/stylesheets/compass/css3/_user-interface.scss +35 -15
- data/frameworks/compass/stylesheets/compass/typography/_units.scss +152 -0
- data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +174 -98
- data/frameworks/compass/stylesheets/compass/typography/lists/_horizontal-list.scss +5 -3
- data/frameworks/compass/stylesheets/compass/typography/lists/_inline-list.scss +6 -3
- data/frameworks/compass/stylesheets/compass/typography/text/_ellipsis.scss +1 -1
- data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +35 -9
- data/frameworks/compass/stylesheets/compass/utilities/general/_float.scss +7 -3
- data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +2 -2
- data/frameworks/compass/stylesheets/compass/utilities/sprites/_base.scss +25 -10
- data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.scss +14 -9
- data/lib/compass.rb +2 -2
- data/lib/compass/actions.rb +5 -1
- data/lib/compass/commands/project_base.rb +7 -1
- data/lib/compass/commands/update_project.rb +2 -2
- data/lib/compass/commands/watch_project.rb +6 -86
- data/lib/compass/compiler.rb +6 -0
- data/lib/compass/configuration/data.rb +1 -1
- data/lib/compass/configuration/helpers.rb +2 -0
- data/lib/compass/exec/global_options_parser.rb +1 -1
- data/lib/compass/exec/project_options_parser.rb +4 -0
- data/lib/compass/logger.rb +2 -0
- data/lib/compass/sass_extensions/functions/colors.rb +14 -0
- data/lib/compass/sass_extensions/functions/constants.rb +9 -0
- data/lib/compass/sass_extensions/functions/gradient_support.rb +44 -5
- data/lib/compass/sass_extensions/functions/image_size.rb +2 -1
- data/lib/compass/sass_extensions/functions/math.rb +14 -2
- data/lib/compass/sass_extensions/functions/sprites.rb +81 -14
- data/lib/compass/sass_extensions/functions/urls.rb +29 -2
- data/lib/compass/sass_extensions/sprites.rb +2 -0
- data/lib/compass/sass_extensions/sprites/engines/chunky_png_engine.rb +5 -1
- data/lib/compass/sass_extensions/sprites/image.rb +7 -2
- data/lib/compass/sass_extensions/sprites/image_methods.rb +5 -2
- data/lib/compass/sass_extensions/sprites/images.rb +29 -0
- data/lib/compass/sass_extensions/sprites/layout.rb +39 -0
- data/lib/compass/sass_extensions/sprites/layout/diagonal.rb +42 -0
- data/lib/compass/sass_extensions/sprites/layout/horizontal.rb +66 -0
- data/lib/compass/sass_extensions/sprites/layout/smart.rb +33 -0
- data/lib/compass/sass_extensions/sprites/layout/vertical.rb +68 -0
- data/lib/compass/sass_extensions/sprites/layout_methods.rb +9 -115
- data/lib/compass/sass_extensions/sprites/sprite_map.rb +5 -0
- data/lib/compass/sass_extensions/sprites/sprite_methods.rb +9 -5
- data/lib/compass/sprite_importer.rb +3 -3
- data/lib/compass/sprite_importer/content.erb +14 -12
- data/lib/compass/version.rb +2 -1
- data/lib/compass/watcher.rb +11 -0
- data/lib/compass/watcher/compiler.rb +59 -0
- data/lib/compass/watcher/project_watcher.rb +108 -0
- data/lib/compass/watcher/watch.rb +33 -0
- data/test/fixtures/stylesheets/busted_font_urls/config.rb +32 -0
- data/test/fixtures/stylesheets/busted_font_urls/css/screen.css +7 -0
- data/{examples/css3/extensions/fancy-fonts/templates/project/bgrove.ttf → test/fixtures/stylesheets/busted_font_urls/fonts/feed.ttf} +0 -0
- data/test/fixtures/stylesheets/busted_font_urls/fonts/grid.ttf +0 -0
- data/test/fixtures/stylesheets/busted_font_urls/fonts/sub/dk.ttf +0 -0
- data/test/fixtures/stylesheets/busted_font_urls/sass/screen.sass +11 -0
- data/test/fixtures/stylesheets/busted_font_urls/tmp/screen.css +7 -0
- data/test/fixtures/stylesheets/compass/css/animation-with-legacy-ie.css +0 -8
- data/test/fixtures/stylesheets/compass/css/animation.css +0 -8
- data/test/fixtures/stylesheets/compass/css/background-clip.css +5 -0
- data/test/fixtures/stylesheets/compass/css/background-origin.css +15 -0
- data/test/fixtures/stylesheets/compass/css/background-size.css +24 -0
- data/test/fixtures/stylesheets/compass/css/columns.css +81 -9
- data/test/fixtures/stylesheets/compass/css/filters.css +29 -0
- data/test/fixtures/stylesheets/compass/css/gradients.css +30 -27
- data/test/fixtures/stylesheets/compass/css/grid_background.css +7 -14
- data/test/fixtures/stylesheets/compass/css/hyphenation.css +16 -0
- data/test/fixtures/stylesheets/compass/css/lists.css +11 -13
- data/test/fixtures/stylesheets/compass/css/pie.css +0 -3
- data/test/fixtures/stylesheets/compass/css/replacement.css +59 -0
- data/test/fixtures/stylesheets/compass/css/reset.css +1 -1
- data/test/fixtures/stylesheets/compass/css/selection.css +13 -0
- data/test/fixtures/stylesheets/compass/css/sprites.css +250 -250
- data/test/fixtures/stylesheets/compass/css/text_shadow.css +22 -4
- data/test/fixtures/stylesheets/compass/css/transition.css +67 -11
- data/test/fixtures/stylesheets/compass/css/units.css +30 -0
- data/test/fixtures/stylesheets/compass/css/user-interface.css +12 -1
- data/test/fixtures/stylesheets/compass/css/utilities.css +15 -0
- data/test/fixtures/stylesheets/compass/css/vertical_rhythm.css +199 -27
- data/test/fixtures/stylesheets/compass/images/flag-s5b4f509715.png +0 -0
- data/test/fixtures/stylesheets/compass/sass/background-clip.scss +4 -2
- data/test/fixtures/stylesheets/compass/sass/background-origin.scss +10 -0
- data/test/fixtures/stylesheets/compass/sass/background-size.scss +12 -0
- data/test/fixtures/stylesheets/compass/sass/columns.scss +18 -0
- data/test/fixtures/stylesheets/compass/sass/filters.scss +24 -0
- data/test/fixtures/stylesheets/compass/sass/gradients.sass +10 -3
- data/test/fixtures/stylesheets/compass/sass/hyphenation.scss +11 -0
- data/test/fixtures/stylesheets/compass/sass/replacement.scss +22 -0
- data/test/fixtures/stylesheets/compass/sass/selection.scss +13 -0
- data/test/fixtures/stylesheets/compass/sass/text_shadow.scss +6 -1
- data/test/fixtures/stylesheets/compass/sass/transition.scss +11 -0
- data/test/fixtures/stylesheets/compass/sass/units.scss +45 -0
- data/test/fixtures/stylesheets/compass/sass/user-interface.scss +10 -5
- data/test/fixtures/stylesheets/compass/sass/utilities.scss +10 -0
- data/test/fixtures/stylesheets/compass/sass/vertical_rhythm.scss +208 -7
- data/test/fixtures/stylesheets/envtest/tmp/env.css +4 -4
- data/test/fixtures/stylesheets/valid/css/simple.css +4 -0
- data/test/helpers/test_case.rb +8 -1
- data/test/integrations/compass_test.rb +13 -13
- data/test/integrations/sprites_test.rb +173 -8
- data/test/test_helper.rb +4 -0
- data/test/units/command_line_test.rb +0 -2
- data/test/units/regressions_test.rb +35 -0
- data/test/units/sass_extensions_test.rb +23 -11
- data/test/units/sprites/image_test.rb +5 -0
- data/test/units/sprites/images_test.rb +46 -0
- data/test/units/sprites/layout_test.rb +18 -2
- data/test/units/watcher/compiler_test.rb +39 -0
- data/test/units/watcher/project_watcher_test.rb +65 -0
- data/test/units/watcher/watch_test.rb +42 -0
- metadata +83 -317
- data/bin/compass.compiled.rbc +0 -707
- data/examples/compass/images/emblem-a043c4f148.png +0 -0
- data/examples/compass/images/flag-03c3b29b35.png +0 -0
- data/examples/compass/images/flag-21cfbfbfc8.png +0 -0
- data/examples/css3/extensions/fancy-fonts/templates/project/Prociono.otf +0 -0
- data/examples/css3/extensions/fancy-fonts/templates/project/bgrove.otf +0 -0
- data/frameworks/blueprint/stylesheets/_blueprint.scss +0 -37
- data/frameworks/blueprint/stylesheets/blueprint/_buttons.scss +0 -101
- data/frameworks/blueprint/stylesheets/blueprint/_colors.scss +0 -36
- data/frameworks/blueprint/stylesheets/blueprint/_debug.scss +0 -28
- data/frameworks/blueprint/stylesheets/blueprint/_fancy-type.scss +0 -88
- data/frameworks/blueprint/stylesheets/blueprint/_form.scss +0 -66
- data/frameworks/blueprint/stylesheets/blueprint/_grid.scss +0 -258
- data/frameworks/blueprint/stylesheets/blueprint/_ie.scss +0 -111
- data/frameworks/blueprint/stylesheets/blueprint/_interaction.scss +0 -66
- data/frameworks/blueprint/stylesheets/blueprint/_link-icons.scss +0 -37
- data/frameworks/blueprint/stylesheets/blueprint/_liquid.scss +0 -152
- data/frameworks/blueprint/stylesheets/blueprint/_print.scss +0 -86
- data/frameworks/blueprint/stylesheets/blueprint/_reset.scss +0 -3
- data/frameworks/blueprint/stylesheets/blueprint/_rtl.scss +0 -121
- data/frameworks/blueprint/stylesheets/blueprint/_scaffolding.scss +0 -52
- data/frameworks/blueprint/stylesheets/blueprint/_typography.scss +0 -90
- data/frameworks/blueprint/stylesheets/blueprint/_utilities.scss +0 -37
- data/frameworks/blueprint/stylesheets/blueprint/reset/_utilities.scss +0 -80
- data/frameworks/blueprint/templates/basic/grid.png +0 -0
- data/frameworks/blueprint/templates/basic/ie.sass +0 -4
- data/frameworks/blueprint/templates/basic/manifest.rb +0 -30
- data/frameworks/blueprint/templates/basic/partials/_base.sass +0 -10
- data/frameworks/blueprint/templates/basic/print.sass +0 -4
- data/frameworks/blueprint/templates/basic/screen.sass +0 -12
- data/frameworks/blueprint/templates/buttons/buttons.sass +0 -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 +0 -17
- data/frameworks/blueprint/templates/link_icons/link_icons.sass +0 -13
- data/frameworks/blueprint/templates/link_icons/link_icons/doc.png +0 -0
- data/frameworks/blueprint/templates/link_icons/link_icons/email.png +0 -0
- data/frameworks/blueprint/templates/link_icons/link_icons/external.png +0 -0
- data/frameworks/blueprint/templates/link_icons/link_icons/feed.png +0 -0
- data/frameworks/blueprint/templates/link_icons/link_icons/im.png +0 -0
- data/frameworks/blueprint/templates/link_icons/link_icons/pdf.png +0 -0
- data/frameworks/blueprint/templates/link_icons/link_icons/visited.png +0 -0
- data/frameworks/blueprint/templates/link_icons/link_icons/xls.png +0 -0
- data/frameworks/blueprint/templates/link_icons/manifest.rb +0 -23
- data/frameworks/blueprint/templates/project/grid.png +0 -0
- data/frameworks/blueprint/templates/project/ie.sass +0 -16
- data/frameworks/blueprint/templates/project/manifest.rb +0 -30
- data/frameworks/blueprint/templates/project/partials/_base.sass +0 -11
- data/frameworks/blueprint/templates/project/print.sass +0 -8
- data/frameworks/blueprint/templates/project/screen.sass +0 -46
- data/frameworks/blueprint/templates/semantic/grid.png +0 -0
- data/frameworks/blueprint/templates/semantic/ie.sass +0 -16
- data/frameworks/blueprint/templates/semantic/manifest.rb +0 -33
- data/frameworks/blueprint/templates/semantic/partials/_base.sass +0 -10
- data/frameworks/blueprint/templates/semantic/partials/_form.sass +0 -6
- data/frameworks/blueprint/templates/semantic/partials/_page.sass +0 -17
- data/frameworks/blueprint/templates/semantic/partials/_two_col.sass +0 -38
- data/frameworks/blueprint/templates/semantic/print.sass +0 -5
- data/frameworks/blueprint/templates/semantic/screen.sass +0 -14
- data/lib/compass.rbc +0 -796
- data/lib/compass/actions.rbc +0 -2736
- data/lib/compass/app_integration.rbc +0 -836
- data/lib/compass/app_integration/merb.rbc +0 -106
- data/lib/compass/app_integration/rails.rbc +0 -2096
- data/lib/compass/app_integration/rails/configuration_defaults.rbc +0 -2430
- data/lib/compass/app_integration/rails/installer.rbc +0 -3677
- data/lib/compass/app_integration/stand_alone.rbc +0 -589
- data/lib/compass/app_integration/stand_alone/configuration_defaults.rbc +0 -721
- data/lib/compass/app_integration/stand_alone/installer.rbc +0 -1487
- data/lib/compass/browser_support.rbc +0 -1144
- data/lib/compass/commands.rbc +0 -307
- data/lib/compass/commands/base.rbc +0 -1044
- data/lib/compass/commands/clean_project.rbc +0 -1856
- data/lib/compass/commands/create_project.rbc +0 -2691
- data/lib/compass/commands/default.rbc +0 -1677
- data/lib/compass/commands/generate_grid_background.rbc +0 -1939
- data/lib/compass/commands/help.rbc +0 -1921
- data/lib/compass/commands/imports.rbc +0 -969
- data/lib/compass/commands/installer_command.rbc +0 -807
- data/lib/compass/commands/interactive.rbc +0 -1341
- data/lib/compass/commands/list_frameworks.rbc +0 -1111
- data/lib/compass/commands/print_version.rbc +0 -2478
- data/lib/compass/commands/project_base.rbc +0 -2085
- data/lib/compass/commands/project_stats.rbc +0 -4202
- data/lib/compass/commands/registry.rbc +0 -1350
- data/lib/compass/commands/sprite.rbc +0 -2212
- data/lib/compass/commands/stamp_pattern.rbc +0 -2011
- data/lib/compass/commands/unpack_extension.rbc +0 -2348
- data/lib/compass/commands/update_project.rbc +0 -3002
- data/lib/compass/commands/validate_project.rbc +0 -1686
- data/lib/compass/commands/watch_project.rbc +0 -4155
- data/lib/compass/commands/write_configuration.rbc +0 -2896
- data/lib/compass/compiler.rbc +0 -4913
- data/lib/compass/configuration.rbc +0 -1398
- data/lib/compass/configuration/adapters.rbc +0 -2088
- data/lib/compass/configuration/comments.rbc +0 -843
- data/lib/compass/configuration/data.rbc +0 -2633
- data/lib/compass/configuration/defaults.rbc +0 -3617
- data/lib/compass/configuration/file_data.rbc +0 -643
- data/lib/compass/configuration/helpers.rbc +0 -3500
- data/lib/compass/configuration/inheritance.rbc +0 -3592
- data/lib/compass/configuration/paths.rbc +0 -412
- data/lib/compass/configuration/serialization.rbc +0 -1996
- data/lib/compass/dependencies.rbc +0 -232
- data/lib/compass/errors.rbc +0 -176
- data/lib/compass/exec.rbc +0 -500
- data/lib/compass/exec/command_option_parser.rbc +0 -676
- data/lib/compass/exec/global_options_parser.rbc +0 -1306
- data/lib/compass/exec/helpers.rbc +0 -758
- data/lib/compass/exec/project_options_parser.rbc +0 -1515
- data/lib/compass/exec/sub_command_ui.rbc +0 -1191
- data/lib/compass/frameworks.rbc +0 -3640
- data/lib/compass/grid_builder.rbc +0 -0
- data/lib/compass/installers.rbc +0 -152
- data/lib/compass/installers/bare_installer.rbc +0 -939
- data/lib/compass/installers/base.rbc +0 -4427
- data/lib/compass/installers/manifest.rbc +0 -3335
- data/lib/compass/installers/manifest_installer.rbc +0 -1591
- data/lib/compass/installers/template_context.rbc +0 -1030
- data/lib/compass/logger.rbc +0 -2317
- data/lib/compass/quick_cache.rbc +0 -324
- data/lib/compass/sass_extensions.rbc +0 -213
- data/lib/compass/sass_extensions/functions.rbc +0 -808
- data/lib/compass/sass_extensions/functions/colors.rbc +0 -1279
- data/lib/compass/sass_extensions/functions/constants.rbc +0 -1921
- data/lib/compass/sass_extensions/functions/cross_browser_support.rbc +0 -1966
- data/lib/compass/sass_extensions/functions/display.rbc +0 -1227
- data/lib/compass/sass_extensions/functions/enumerate.rbc +0 -446
- data/lib/compass/sass_extensions/functions/env.rbc +0 -299
- data/lib/compass/sass_extensions/functions/font_files.rbc +0 -821
- data/lib/compass/sass_extensions/functions/gradient_support.rbc +0 -14147
- data/lib/compass/sass_extensions/functions/image_size.rbc +0 -3152
- data/lib/compass/sass_extensions/functions/inline_image.rbc +0 -1678
- data/lib/compass/sass_extensions/functions/lists.rbc +0 -2601
- data/lib/compass/sass_extensions/functions/selectors.rbc +0 -1592
- data/lib/compass/sass_extensions/functions/sprites.rbc +0 -3792
- data/lib/compass/sass_extensions/functions/trig.rbc +0 -811
- data/lib/compass/sass_extensions/functions/urls.rbc +0 -5248
- data/lib/compass/sass_extensions/monkey_patches.rbc +0 -134
- data/lib/compass/sass_extensions/monkey_patches/browser_support.rbc +0 -2169
- data/lib/compass/sass_extensions/monkey_patches/traversal.rbc +0 -660
- data/lib/compass/sass_extensions/sprites.rbc +0 -363
- data/lib/compass/sass_extensions/sprites/base.rbc +0 -4529
- data/lib/compass/sass_extensions/sprites/engines.rbc +0 -662
- data/lib/compass/sass_extensions/sprites/engines/chunky_png_engine.rbc +0 -1074
- data/lib/compass/sass_extensions/sprites/image.rbc +0 -2961
- data/lib/compass/sass_extensions/sprites/image_methods.rbc +0 -900
- data/lib/compass/sass_extensions/sprites/image_row.rbc +0 -1168
- data/lib/compass/sass_extensions/sprites/layout_methods.rbc +0 -3236
- data/lib/compass/sass_extensions/sprites/row_fitter.rbc +0 -2067
- data/lib/compass/sass_extensions/sprites/sprite_map.rbc +0 -1991
- data/lib/compass/sass_extensions/sprites/sprite_methods.rbc +0 -3190
- data/lib/compass/sass_extensions/sprites/sprites.rbc +0 -1573
- data/lib/compass/sprite_importer.rbc +0 -3573
- data/lib/compass/util.rbc +0 -552
- data/lib/compass/version.rbc +0 -1245
- data/test/fixtures/stylesheets/blueprint/config.rb +0 -14
- data/test/fixtures/stylesheets/blueprint/css/ie.css +0 -76
- data/test/fixtures/stylesheets/blueprint/css/print.css +0 -56
- data/test/fixtures/stylesheets/blueprint/css/screen.css +0 -816
- data/test/fixtures/stylesheets/blueprint/css/single-imports/buttons.css +0 -58
- data/test/fixtures/stylesheets/blueprint/css/single-imports/colors.css +0 -80
- data/test/fixtures/stylesheets/blueprint/css/single-imports/debug.css +0 -12
- data/test/fixtures/stylesheets/blueprint/css/single-imports/fancy-type.css +0 -30
- data/test/fixtures/stylesheets/blueprint/css/single-imports/form.css +0 -42
- data/test/fixtures/stylesheets/blueprint/css/single-imports/grid.css +0 -435
- data/test/fixtures/stylesheets/blueprint/css/single-imports/ie.css +0 -76
- data/test/fixtures/stylesheets/blueprint/css/single-imports/interaction.css +0 -46
- data/test/fixtures/stylesheets/blueprint/css/single-imports/link-icons.css +0 -40
- data/test/fixtures/stylesheets/blueprint/css/single-imports/liquid.css +0 -651
- data/test/fixtures/stylesheets/blueprint/css/single-imports/print.css +0 -60
- data/test/fixtures/stylesheets/blueprint/css/single-imports/reset-utilities.css +0 -36
- data/test/fixtures/stylesheets/blueprint/css/single-imports/reset.css +0 -40
- data/test/fixtures/stylesheets/blueprint/css/single-imports/rtl.css +0 -437
- data/test/fixtures/stylesheets/blueprint/css/single-imports/scaffolding.css +0 -45
- data/test/fixtures/stylesheets/blueprint/css/single-imports/typography.css +0 -146
- data/test/fixtures/stylesheets/blueprint/css/single-imports/utilities.css +0 -35
- data/test/fixtures/stylesheets/blueprint/images/grid.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/doc.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/email.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/external.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/feed.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/im.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/pdf.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/visited.png +0 -0
- data/test/fixtures/stylesheets/blueprint/images/link_icons/xls.png +0 -0
- data/test/fixtures/stylesheets/blueprint/sass/ie.sass +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/print.sass +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/screen.sass +0 -18
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/buttons.scss +0 -4
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/colors.scss +0 -34
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/debug.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/fancy-type.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/form.scss +0 -5
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/grid.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/ie.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/interaction.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/link-icons.scss +0 -13
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/liquid.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/print.scss +0 -5
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset-utilities.scss +0 -5
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset.scss +0 -1
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/rtl.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/scaffolding.scss +0 -5
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/typography.scss +0 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/utilities.scss +0 -3
- data/test/fixtures/stylesheets/compass/images/flag-s4798b5a210.png +0 -0
- data/test/helpers/command_line.rbc +0 -2820
- data/test/helpers/diff.rbc +0 -1104
- data/test/helpers/io.rbc +0 -962
- data/test/helpers/rails.rbc +0 -1116
- data/test/helpers/test_case.rbc +0 -1255
- data/test/integrations/compass_test.rbc +0 -6589
- data/test/integrations/rails_integration_test.rbc +0 -1342
- data/test/integrations/sprites_test.rbc +0 -6192
- data/test/test_helper.rbc +0 -1694
- data/test/units/actions_test.rbc +0 -644
- data/test/units/command_line_test.rbc +0 -1532
- data/test/units/compass_png_test.rbc +0 -0
- data/test/units/configuration_test.rbc +0 -3833
- data/test/units/rails_configuration_test.rbc +0 -1032
- data/test/units/sass_extensions_test.rbc +0 -3586
- data/test/units/sprites/engine_test.rbc +0 -962
- data/test/units/sprites/image_row_test.rbc +0 -1578
- data/test/units/sprites/image_test.rbc +0 -2836
- data/test/units/sprites/importer_test.rbc +0 -2620
- data/test/units/sprites/row_fitter_test.rbc +0 -1479
- data/test/units/sprites/sprite_command_test.rbc +0 -1147
- data/test/units/sprites/sprite_map_test.rbc +0 -6515
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
@import "compass/utilities/general/clearfix";
|
|
20
20
|
@import "compass/utilities/general/reset";
|
|
21
21
|
@import "compass/utilities/general/float";
|
|
22
|
+
@import "compass/support";
|
|
22
23
|
|
|
23
24
|
// Can be mixed into any selector that target a ul or ol that is meant
|
|
24
25
|
// to have a horizontal layout. Used to implement +horizontal-list.
|
|
@@ -31,7 +32,7 @@
|
|
|
31
32
|
//
|
|
32
33
|
// :last-child is not fully supported
|
|
33
34
|
// see http://www.quirksmode.org/css/contents.html#t29 for the support matrix
|
|
34
|
-
//
|
|
35
|
+
//
|
|
35
36
|
// IE8 ignores rules that are included on the same line as :last-child
|
|
36
37
|
// see http://www.richardscarrott.co.uk/posts/view/ie8-last-child-bug for details
|
|
37
38
|
//
|
|
@@ -45,9 +46,10 @@
|
|
|
45
46
|
left: $padding;
|
|
46
47
|
right: $padding;
|
|
47
48
|
}
|
|
48
|
-
&:first-child, &.first { padding-#{$direction}: 0; }
|
|
49
|
+
&:first-child #{if($legacy-support-for-ie6, ', &.first', '')} { padding-#{$direction}: 0; }
|
|
49
50
|
&:last-child { padding-#{opposite-position($direction)}: 0; }
|
|
50
|
-
|
|
51
|
+
@if $legacy-support-for-ie6 or $legacy-support-for-ie7 {
|
|
52
|
+
&.last { padding-#{opposite-position($direction)}: 0; } }
|
|
51
53
|
}
|
|
52
54
|
}
|
|
53
55
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
@import "compass/support";
|
|
2
2
|
|
|
3
|
+
// makes a list inline.
|
|
3
4
|
@mixin inline-list {
|
|
4
5
|
list-style-type: none;
|
|
5
6
|
&, & li {
|
|
@@ -30,8 +31,10 @@
|
|
|
30
31
|
&:last-child {
|
|
31
32
|
&:after { content: ""; }
|
|
32
33
|
}
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
@if $legacy-support-for-ie6 or $legacy-support-for-ie7 {
|
|
35
|
+
&.last {
|
|
36
|
+
&:after { content: ""; }
|
|
37
|
+
}
|
|
35
38
|
}
|
|
36
39
|
}
|
|
37
40
|
}
|
|
@@ -19,7 +19,7 @@ $use-mozilla-ellipsis-binding: false !default;
|
|
|
19
19
|
not -khtml,
|
|
20
20
|
official
|
|
21
21
|
);
|
|
22
|
-
@if $
|
|
22
|
+
@if $legacy-support-for-mozilla and $use-mozilla-ellipsis-binding {
|
|
23
23
|
-moz-binding: stylesheet-url(unquote("xml/ellipsis.xml#ellipsis"));
|
|
24
24
|
}
|
|
25
25
|
}
|
|
@@ -1,16 +1,27 @@
|
|
|
1
|
+
// Indicates the direction you prefer to move your text
|
|
2
|
+
// when hiding it.
|
|
3
|
+
//
|
|
4
|
+
// `left` is more robust, especially in older browsers.
|
|
5
|
+
// `right` seems have better runtime performance.
|
|
6
|
+
$hide-text-direction: left !default;
|
|
7
|
+
|
|
1
8
|
// Hides html text and replaces it with an image.
|
|
2
9
|
// If you use this on an inline element, you will need to change the display to block or inline-block.
|
|
3
10
|
// Also, if the size of the image differs significantly from the font size, you'll need to set the width and/or height.
|
|
4
11
|
//
|
|
5
12
|
// Parameters:
|
|
6
13
|
//
|
|
7
|
-
// * `img` -- the relative path from the project image directory to the image.
|
|
14
|
+
// * `img` -- the relative path from the project image directory to the image, or a url literal.
|
|
8
15
|
// * `x` -- the x position of the background image.
|
|
9
16
|
// * `y` -- the y position of the background image.
|
|
10
17
|
@mixin replace-text($img, $x: 50%, $y: 50%) {
|
|
11
18
|
@include hide-text;
|
|
12
19
|
background: {
|
|
13
|
-
|
|
20
|
+
@if is-url($img) {
|
|
21
|
+
image: $img;
|
|
22
|
+
} @else {
|
|
23
|
+
image: image-url($img);
|
|
24
|
+
}
|
|
14
25
|
repeat: no-repeat;
|
|
15
26
|
position: $x $y;
|
|
16
27
|
};
|
|
@@ -18,18 +29,33 @@
|
|
|
18
29
|
|
|
19
30
|
// Like the `replace-text` mixin, but also sets the width
|
|
20
31
|
// and height of the element according the dimensions of the image.
|
|
21
|
-
|
|
22
|
-
|
|
32
|
+
//
|
|
33
|
+
// If you set `$inline` to true, then an inline image (data uri) will be used.
|
|
34
|
+
@mixin replace-text-with-dimensions($img, $x: 50%, $y: 50%, $inline: false) {
|
|
35
|
+
@include replace-text(if($inline, inline-image($img), $img), $x, $y);
|
|
23
36
|
width: image-width($img);
|
|
24
37
|
height: image-height($img);
|
|
25
38
|
}
|
|
26
39
|
|
|
27
40
|
// Hides text in an element so you can see the background.
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
41
|
+
//
|
|
42
|
+
// The direction indicates how the text should be moved out of view.
|
|
43
|
+
//
|
|
44
|
+
// See `$hide-text-direction` for more information and to set this globally
|
|
45
|
+
// for your application.
|
|
46
|
+
@mixin hide-text($direction: $hide-text-direction) {
|
|
47
|
+
@if $direction == left {
|
|
48
|
+
$approximate-em-value: 12px / 1em;
|
|
49
|
+
$wider-than-any-screen: -9999em;
|
|
50
|
+
text-indent: $wider-than-any-screen * $approximate-em-value;
|
|
51
|
+
overflow: hidden;
|
|
52
|
+
text-align: left;
|
|
53
|
+
} @else {
|
|
54
|
+
// slightly wider than the box prevents issues with inline-block elements
|
|
55
|
+
text-indent: 110%;
|
|
56
|
+
white-space: nowrap;
|
|
57
|
+
overflow: hidden;
|
|
58
|
+
}
|
|
33
59
|
}
|
|
34
60
|
|
|
35
61
|
// Hides text in an element by squishing the text into oblivion.
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
@import "compass/support";
|
|
2
|
+
|
|
1
3
|
// Implementation of float:left with fix for the
|
|
2
4
|
// [double-margin bug in IE5/6](http://www.positioniseverything.net/explorer/doubled-margin.html)
|
|
3
5
|
@mixin float-left {
|
|
@@ -11,8 +13,9 @@
|
|
|
11
13
|
// Direction independent float mixin that fixes the
|
|
12
14
|
// [double-margin bug in IE5/6](http://www.positioniseverything.net/explorer/doubled-margin.html)
|
|
13
15
|
@mixin float($side: left) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
+
float: unquote($side);
|
|
17
|
+
@if $legacy-support-for-ie6 {
|
|
18
|
+
display: inline; } }
|
|
16
19
|
|
|
17
20
|
// Resets floated elements back to their default of `float: none` and defaults
|
|
18
21
|
// to `display: block` unless you pass `inline` as an argument
|
|
@@ -27,4 +30,5 @@
|
|
|
27
30
|
// +reset-float
|
|
28
31
|
@mixin reset-float($display: block) {
|
|
29
32
|
float: none;
|
|
30
|
-
|
|
33
|
+
@if $legacy-support-for-ie6 {
|
|
34
|
+
display: $display; } }
|
|
@@ -9,7 +9,7 @@ $default-has-layout-approach: zoom !default;
|
|
|
9
9
|
// to gain the "hasLayout" property in internet explorer.
|
|
10
10
|
// More information on [hasLayout](http://reference.sitepoint.com/css/haslayout).
|
|
11
11
|
@mixin has-layout($approach: $default-has-layout-approach) {
|
|
12
|
-
@if $legacy-support-for-
|
|
12
|
+
@if $legacy-support-for-ie6 or $legacy-support-for-ie7 {
|
|
13
13
|
@if $approach == zoom {
|
|
14
14
|
@include has-layout-zoom;
|
|
15
15
|
} @else if $approach == block {
|
|
@@ -28,7 +28,7 @@ $default-has-layout-approach: zoom !default;
|
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
@mixin has-layout-block {
|
|
31
|
-
@if $legacy-support-for-
|
|
31
|
+
@if $legacy-support-for-ie6 or $legacy-support-for-ie7 {
|
|
32
32
|
// This makes ie6 get layout
|
|
33
33
|
display: inline-block;
|
|
34
34
|
// and this puts it back to block
|
|
@@ -11,8 +11,12 @@ $sprite-selectors: hover, target, active !default;
|
|
|
11
11
|
// Set the background position of the given sprite `$map` to display the
|
|
12
12
|
// sprite of the given `$sprite` name. You can move the image relative to its
|
|
13
13
|
// natural position by passing `$offset-x` and `$offset-y`.
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
// The background-position will be returned in pixels. By passing `true
|
|
15
|
+
// for `$use_percentages`, you get percentages instead.
|
|
16
|
+
@mixin sprite-background-position($map, $sprite, $offset-x: 0, $offset-y: 0,
|
|
17
|
+
$use-percentages: false) {
|
|
18
|
+
background-position: sprite-position($map, $sprite, $offset-x, $offset-y,
|
|
19
|
+
$use-percentages);
|
|
16
20
|
}
|
|
17
21
|
|
|
18
22
|
|
|
@@ -24,25 +28,31 @@ $disable-magic-sprite-selectors:false !default;
|
|
|
24
28
|
// class or you can specify the `sprite-url` explicitly like this:
|
|
25
29
|
//
|
|
26
30
|
// background: $map no-repeat;
|
|
27
|
-
@mixin sprite($map, $sprite, $dimensions: false, $offset-x: 0, $offset-y: 0
|
|
28
|
-
|
|
31
|
+
@mixin sprite($map, $sprite, $dimensions: false, $offset-x: 0, $offset-y: 0,
|
|
32
|
+
$use-percentages: false) {
|
|
33
|
+
@include sprite-background-position($map, $sprite, $offset-x, $offset-y,
|
|
34
|
+
$use-percentages);
|
|
29
35
|
@if $dimensions {
|
|
30
36
|
@include sprite-dimensions($map, $sprite);
|
|
31
37
|
}
|
|
32
38
|
@if not $disable-magic-sprite-selectors {
|
|
33
|
-
@include sprite-selectors($map, $sprite, $sprite, $offset-x, $offset-y
|
|
39
|
+
@include sprite-selectors($map, $sprite, $sprite, $offset-x, $offset-y,
|
|
40
|
+
$use-percentages);
|
|
34
41
|
}
|
|
35
42
|
}
|
|
36
43
|
|
|
37
44
|
// Include the selectors for the `$sprite` given the `$map` and the
|
|
38
45
|
// `$full-sprite-name`
|
|
39
46
|
// @private
|
|
40
|
-
@mixin sprite-selectors($map, $sprite-name, $full-sprite-name, $offset-x: 0,
|
|
47
|
+
@mixin sprite-selectors($map, $sprite-name, $full-sprite-name, $offset-x: 0,
|
|
48
|
+
$offset-y: 0, $use-percentages: false) {
|
|
41
49
|
@each $selector in $sprite-selectors {
|
|
42
50
|
@if sprite_has_selector($map, $sprite-name, $selector) {
|
|
43
51
|
@if sprite_has_valid_selector("#{$full-sprite-name}-#{$selector}") {
|
|
44
52
|
&:#{$selector}, &.#{$full-sprite-name}-#{$selector} {
|
|
45
|
-
@include sprite-background-position($map,
|
|
53
|
+
@include sprite-background-position($map,
|
|
54
|
+
"#{$sprite-name}_#{$selector}", $offset-x, $offset-y,
|
|
55
|
+
$use-percentages);
|
|
46
56
|
}
|
|
47
57
|
}
|
|
48
58
|
}
|
|
@@ -55,16 +65,21 @@ $disable-magic-sprite-selectors:false !default;
|
|
|
55
65
|
// If a base class is provided, then each class will extend it.
|
|
56
66
|
//
|
|
57
67
|
// If `$dimensions` is `true`, the sprite dimensions will specified.
|
|
58
|
-
|
|
68
|
+
// Positions are returned in pixel units. Set `$use_percentages` to true to
|
|
69
|
+
// instead get percentages.
|
|
70
|
+
@mixin sprites($map, $sprite-names, $base-class: false, $dimensions: false,
|
|
71
|
+
$prefix: sprite-map-name($map), $offset-x: 0, $offset-y: 0, $use-percentages:
|
|
72
|
+
false) {
|
|
59
73
|
@each $sprite-name in $sprite-names {
|
|
60
74
|
@if sprite_does_not_have_parent($map, $sprite-name) {
|
|
61
75
|
$full-sprite-name: "#{$prefix}-#{$sprite-name}";
|
|
62
76
|
@if sprite_has_valid_selector($full-sprite-name) {
|
|
63
77
|
.#{$full-sprite-name} {
|
|
64
78
|
@if $base-class { @extend #{$base-class}; }
|
|
65
|
-
@include sprite($map, $sprite-name, $dimensions, $offset-x, $offset-y
|
|
79
|
+
@include sprite($map, $sprite-name, $dimensions, $offset-x, $offset-y,
|
|
80
|
+
$use-percentages);
|
|
66
81
|
}
|
|
67
82
|
}
|
|
68
83
|
}
|
|
69
84
|
}
|
|
70
|
-
}
|
|
85
|
+
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
@import "compass/support";
|
|
2
|
+
|
|
1
3
|
@mixin outer-table-borders($width: 2px, $color: black) {
|
|
2
4
|
border: $width solid $color;
|
|
3
5
|
thead {
|
|
@@ -7,7 +9,7 @@
|
|
|
7
9
|
th, td {
|
|
8
10
|
border-top: $width solid $color; } }
|
|
9
11
|
th {
|
|
10
|
-
&:first-child {
|
|
12
|
+
&:first-child #{if($legacy-support-for-ie6, ', &.first', '')} {
|
|
11
13
|
border-right: $width solid $color; } } }
|
|
12
14
|
|
|
13
15
|
@mixin inner-table-borders($width: 2px, $color: black) {
|
|
@@ -17,17 +19,20 @@
|
|
|
17
19
|
bottom: $width solid $color;
|
|
18
20
|
left-width: 0px;
|
|
19
21
|
top-width: 0px; };
|
|
20
|
-
&:last-child
|
|
21
|
-
|
|
22
|
-
border-right-width: 0px; } }
|
|
22
|
+
&:last-child {
|
|
23
|
+
border-right-width: 0px; }
|
|
23
24
|
|
|
24
|
-
// IE8 ignores rules that are included on the same line as :last-child
|
|
25
|
-
// see http://www.richardscarrott.co.uk/posts/view/ie8-last-child-bug for details
|
|
25
|
+
// IE8 ignores rules that are included on the same line as :last-child
|
|
26
|
+
// see http://www.richardscarrott.co.uk/posts/view/ie8-last-child-bug for details
|
|
27
|
+
@if $legacy-support-for-ie6 or $legacy-support-for-ie7 or $legacy-support-for-ie8 {
|
|
28
|
+
&.last {
|
|
29
|
+
border-right-width: 0px; } } }
|
|
26
30
|
|
|
27
31
|
tbody, tfoot {
|
|
28
32
|
tr:last-child {
|
|
29
33
|
th, td {
|
|
30
34
|
border-bottom-width: 0px; } }
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
35
|
+
@if $legacy-support-for-ie6 or $legacy-support-for-ie7 or $legacy-support-for-ie8 {
|
|
36
|
+
tr.last {
|
|
37
|
+
th, td {
|
|
38
|
+
border-bottom-width: 0px; } } } } }
|
data/lib/compass.rb
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module Compass
|
|
2
2
|
end
|
|
3
3
|
|
|
4
|
-
%w(dependencies util browser_support sass_extensions version errors quick_cache logger).each do |lib|
|
|
4
|
+
%w(dependencies util browser_support sass_extensions version errors quick_cache logger actions).each do |lib|
|
|
5
5
|
require "compass/#{lib}"
|
|
6
6
|
end
|
|
7
7
|
|
|
@@ -29,7 +29,7 @@ module Compass
|
|
|
29
29
|
extend QuickCache
|
|
30
30
|
end
|
|
31
31
|
|
|
32
|
-
%w(configuration frameworks app_integration
|
|
32
|
+
%w(watcher configuration frameworks app_integration compiler).each do |lib|
|
|
33
33
|
require "compass/#{lib}"
|
|
34
34
|
end
|
|
35
35
|
|
data/lib/compass/actions.rb
CHANGED
|
@@ -10,7 +10,11 @@ module Compass
|
|
|
10
10
|
# copy/process a template in the compass template directory to the project directory.
|
|
11
11
|
def copy(from, to, options = nil, binary = false)
|
|
12
12
|
options ||= self.options if self.respond_to?(:options)
|
|
13
|
-
|
|
13
|
+
if binary
|
|
14
|
+
contents = File.new(from,"rb").read
|
|
15
|
+
else
|
|
16
|
+
contents = File.new(from).read
|
|
17
|
+
end
|
|
14
18
|
write_file to, contents, options, binary
|
|
15
19
|
end
|
|
16
20
|
|
|
@@ -28,7 +28,13 @@ module Compass
|
|
|
28
28
|
end
|
|
29
29
|
|
|
30
30
|
def add_project_configuration
|
|
31
|
-
|
|
31
|
+
defaults = Compass.configuration_for(options, "cli_defaults")
|
|
32
|
+
if options[:project_type]
|
|
33
|
+
project_type_config = Compass.configuration_for(options[:project_type])
|
|
34
|
+
project_type_config.inherit_from!(Compass.default_configuration)
|
|
35
|
+
defaults.inherit_from!(project_type_config)
|
|
36
|
+
end
|
|
37
|
+
Compass.add_project_configuration(options[:configuration_file], :defaults => defaults) do
|
|
32
38
|
options[:project_type]
|
|
33
39
|
end
|
|
34
40
|
end
|
|
@@ -9,7 +9,7 @@ module Compass
|
|
|
9
9
|
Usage: compass compile [path/to/project] [path/to/project/src/file.sass ...] [options]
|
|
10
10
|
|
|
11
11
|
Description:
|
|
12
|
-
compile project at the path specified or the current
|
|
12
|
+
compile project at the path specified or the current directory if not specified.
|
|
13
13
|
|
|
14
14
|
Options:
|
|
15
15
|
}.split("\n").map{|l| l.gsub(/^ */,'')}.join("\n")
|
|
@@ -22,7 +22,7 @@ module Compass
|
|
|
22
22
|
self.options[:debug_info]= true
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
-
opts.on("--no-debug-info", "Turns
|
|
25
|
+
opts.on("--no-debug-info", "Turns off sass's debuging information") do
|
|
26
26
|
self.options[:debug_info]= false
|
|
27
27
|
end
|
|
28
28
|
super
|
|
@@ -2,6 +2,7 @@ require 'fileutils'
|
|
|
2
2
|
require 'pathname'
|
|
3
3
|
require 'compass/commands/base'
|
|
4
4
|
require 'compass/commands/update_project'
|
|
5
|
+
require 'compass/watcher'
|
|
5
6
|
require 'sass/plugin'
|
|
6
7
|
|
|
7
8
|
module Compass
|
|
@@ -59,97 +60,16 @@ module Compass
|
|
|
59
60
|
include MemoryDebugger
|
|
60
61
|
|
|
61
62
|
def perform
|
|
62
|
-
Signal.trap("INT") do
|
|
63
|
-
puts ""
|
|
64
|
-
exit 0
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
check_for_sass_files!(new_compiler_instance)
|
|
68
|
-
recompile
|
|
69
|
-
|
|
70
|
-
require 'fssm'
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
if options[:poll]
|
|
74
|
-
require "fssm/backends/polling"
|
|
75
|
-
# have to silence the ruby warning about chaning a constant.
|
|
76
|
-
stderr, $stderr = $stderr, StringIO.new
|
|
77
|
-
FSSM::Backends.const_set("Default", FSSM::Backends::Polling)
|
|
78
|
-
$stderr = stderr
|
|
79
|
-
end
|
|
80
63
|
|
|
81
|
-
|
|
64
|
+
project_watcher = Compass::Watcher::ProjectWatcher.new(Compass.configuration.project_path, Compass.configuration.watches, options, options[:poll])
|
|
82
65
|
|
|
83
|
-
puts ">>> Compass is
|
|
66
|
+
puts ">>> Compass is watching for changes. Press Ctrl-C to Stop."
|
|
84
67
|
$stdout.flush
|
|
68
|
+
|
|
69
|
+
project_watcher.compile
|
|
70
|
+
project_watcher.watch!
|
|
85
71
|
|
|
86
|
-
begin
|
|
87
|
-
FSSM.monitor do |monitor|
|
|
88
|
-
Compass.configuration.sass_load_paths.each do |load_path|
|
|
89
|
-
load_path = load_path.root if load_path.respond_to?(:root)
|
|
90
|
-
next unless load_path.is_a? String
|
|
91
|
-
monitor.path load_path do |path|
|
|
92
|
-
path.glob '**/*.s[ac]ss'
|
|
93
|
-
|
|
94
|
-
path.update &method(:recompile)
|
|
95
|
-
path.delete {|base, relative| remove_obsolete_css(base,relative); recompile(base, relative)}
|
|
96
|
-
path.create &method(:recompile)
|
|
97
|
-
end
|
|
98
|
-
end
|
|
99
|
-
Compass.configuration.watches.each do |glob, callback|
|
|
100
|
-
monitor.path Compass.configuration.project_path do |path|
|
|
101
|
-
path.glob glob
|
|
102
|
-
path.update do |base, relative|
|
|
103
|
-
puts ">>> Change detected to: #{relative}"
|
|
104
|
-
$stdout.flush
|
|
105
|
-
callback.call(base, relative)
|
|
106
|
-
end
|
|
107
|
-
path.create do |base, relative|
|
|
108
|
-
puts ">>> New file detected: #{relative}"
|
|
109
|
-
$stdout.flush
|
|
110
|
-
callback.call(base, relative)
|
|
111
|
-
end
|
|
112
|
-
path.delete do |base, relative|
|
|
113
|
-
puts ">>> File Removed: #{relative}"
|
|
114
|
-
$stdout.flush
|
|
115
|
-
callback.call(base, relative)
|
|
116
|
-
end
|
|
117
|
-
end
|
|
118
|
-
end
|
|
119
|
-
|
|
120
|
-
end
|
|
121
|
-
rescue FSSM::CallbackError => e
|
|
122
|
-
# FSSM catches exit? WTF.
|
|
123
|
-
if e.message =~ /exit/
|
|
124
|
-
exit
|
|
125
|
-
end
|
|
126
|
-
end
|
|
127
|
-
end
|
|
128
72
|
|
|
129
|
-
def remove_obsolete_css(base = nil, relative = nil)
|
|
130
|
-
compiler = new_compiler_instance(:quiet => true)
|
|
131
|
-
sass_files = compiler.sass_files
|
|
132
|
-
deleted_sass_files = (last_sass_files || []) - sass_files
|
|
133
|
-
deleted_sass_files.each do |deleted_sass_file|
|
|
134
|
-
css_file = compiler.corresponding_css_file(deleted_sass_file)
|
|
135
|
-
remove(css_file) if File.exists?(css_file)
|
|
136
|
-
end
|
|
137
|
-
self.last_sass_files = sass_files
|
|
138
|
-
end
|
|
139
|
-
|
|
140
|
-
def recompile(base = nil, relative = nil)
|
|
141
|
-
@memory_cache.reset! if @memory_cache
|
|
142
|
-
compiler = new_compiler_instance(:quiet => true, :loud => [:identical, :overwrite, :create])
|
|
143
|
-
if file = compiler.out_of_date?
|
|
144
|
-
begin
|
|
145
|
-
puts ">>> Change detected at "+Time.now.strftime("%T")+" to: #{relative || compiler.relative_stylesheet_name(file)}"
|
|
146
|
-
$stdout.flush
|
|
147
|
-
compiler.run
|
|
148
|
-
GC.start
|
|
149
|
-
rescue StandardError => e
|
|
150
|
-
::Compass::Exec::Helpers.report_error(e, options)
|
|
151
|
-
end
|
|
152
|
-
end
|
|
153
73
|
end
|
|
154
74
|
|
|
155
75
|
class << self
|