compass is converted to new ext. All done in -more
This commit is contained in:
parent
2500e4d35d
commit
a463be3432
|
@ -31,14 +31,14 @@ module Middleman
|
||||||
# exist anymore.
|
# exist anymore.
|
||||||
::I18n.load_path.delete_if {|path| path =~ %r{tmp/aruba}}
|
::I18n.load_path.delete_if {|path| path =~ %r{tmp/aruba}}
|
||||||
::I18n.reload!
|
::I18n.reload!
|
||||||
end
|
end if ENV["TEST"]
|
||||||
|
|
||||||
require "middleman-more/core_extensions/i18n"
|
require "middleman-more/core_extensions/i18n"
|
||||||
Middleman::CoreExtensions::Internationalization.register(:i18n)
|
Middleman::CoreExtensions::Internationalization.register(:i18n)
|
||||||
|
|
||||||
# Compass framework
|
# Compass framework
|
||||||
require "middleman-more/core_extensions/compass"
|
require "middleman-more/core_extensions/compass"
|
||||||
Middleman::Application.register Middleman::CoreExtensions::Compass
|
Middleman::CoreExtensions::Compass.new(app)
|
||||||
|
|
||||||
###
|
###
|
||||||
# Setup Optional Extensions
|
# Setup Optional Extensions
|
||||||
|
|
|
@ -1,88 +1,75 @@
|
||||||
module Middleman
|
class Middleman::CoreExtensions::Compass < ::Middleman::Extension
|
||||||
module CoreExtensions
|
|
||||||
|
|
||||||
# Forward the settings on config.rb and the result of registered
|
def initialize(app, options_hash={}, &block)
|
||||||
# extensions to Compass
|
super
|
||||||
module Compass
|
|
||||||
|
|
||||||
# Extension registered
|
# Require the library
|
||||||
class << self
|
require "compass"
|
||||||
|
|
||||||
# Once registered
|
# Hooks to manually update the compass config after we're
|
||||||
def registered(app)
|
# done with it
|
||||||
# Require the library
|
app.define_hook :compass_config
|
||||||
require "compass"
|
|
||||||
|
|
||||||
# Hooks to manually update the compass config after we're
|
# Location of SASS/SCSS files external to source directory.
|
||||||
# done with it
|
# @return [Array]
|
||||||
app.define_hook :compass_config
|
# config[:sass_assets_paths] = ["#{root}/assets/sass/", "/path/2/external/sass/repository/"]
|
||||||
|
app.config.define_setting :sass_assets_paths, [], 'Paths to extra SASS/SCSS files'
|
||||||
|
end
|
||||||
|
|
||||||
# Location of SASS/SCSS files external to source directory.
|
def after_configuration
|
||||||
# @return [Array]
|
::Compass.configuration do |compass_config|
|
||||||
# config[:sass_assets_paths] = ["#{root}/assets/sass/", "/path/2/external/sass/repository/"]
|
compass_config.project_path = app.source_dir
|
||||||
app.config.define_setting :sass_assets_paths, [], 'Paths to extra SASS/SCSS files'
|
compass_config.environment = :development
|
||||||
|
compass_config.cache_path = app.config[:sass_cache_path]
|
||||||
|
compass_config.sass_dir = app.config[:css_dir]
|
||||||
|
compass_config.css_dir = app.config[:css_dir]
|
||||||
|
compass_config.javascripts_dir = app.config[:js_dir]
|
||||||
|
compass_config.fonts_dir = app.config[:fonts_dir]
|
||||||
|
compass_config.images_dir = app.config[:images_dir]
|
||||||
|
compass_config.http_path = app.config[:http_prefix]
|
||||||
|
|
||||||
app.after_configuration do
|
app.config[:sass_assets_paths].each do |path|
|
||||||
::Compass.configuration do |compass_config|
|
compass_config.add_import_path path
|
||||||
compass_config.project_path = source_dir
|
|
||||||
compass_config.environment = :development
|
|
||||||
compass_config.cache_path = config[:sass_cache_path]
|
|
||||||
compass_config.sass_dir = config[:css_dir]
|
|
||||||
compass_config.css_dir = config[:css_dir]
|
|
||||||
compass_config.javascripts_dir = config[:js_dir]
|
|
||||||
compass_config.fonts_dir = config[:fonts_dir]
|
|
||||||
compass_config.images_dir = config[:images_dir]
|
|
||||||
compass_config.http_path = config[:http_prefix]
|
|
||||||
|
|
||||||
config[:sass_assets_paths].each do |path|
|
|
||||||
compass_config.add_import_path path
|
|
||||||
end
|
|
||||||
|
|
||||||
# Disable this initially, the cache_buster extension will
|
|
||||||
# re-enable it if requested.
|
|
||||||
compass_config.asset_cache_buster :none
|
|
||||||
|
|
||||||
# Disable this initially, the relative_assets extension will
|
|
||||||
|
|
||||||
compass_config.relative_assets = false
|
|
||||||
|
|
||||||
# Default output style
|
|
||||||
compass_config.output_style = :nested
|
|
||||||
|
|
||||||
# No line-comments in test mode (changing paths mess with sha1)
|
|
||||||
compass_config.line_comments = false if ENV["TEST"]
|
|
||||||
end
|
|
||||||
|
|
||||||
# Call hook
|
|
||||||
run_hook :compass_config, ::Compass.configuration
|
|
||||||
|
|
||||||
# Tell Tilt to use it as well (for inline sass blocks)
|
|
||||||
::Tilt.register 'sass', CompassSassTemplate
|
|
||||||
::Tilt.prefer(CompassSassTemplate)
|
|
||||||
|
|
||||||
# Tell Tilt to use it as well (for inline scss blocks)
|
|
||||||
::Tilt.register 'scss', CompassScssTemplate
|
|
||||||
::Tilt.prefer(CompassScssTemplate)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
alias :included :registered
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Disable this initially, the cache_buster extension will
|
||||||
|
# re-enable it if requested.
|
||||||
|
compass_config.asset_cache_buster :none
|
||||||
|
|
||||||
|
# Disable this initially, the relative_assets extension will
|
||||||
|
|
||||||
|
compass_config.relative_assets = false
|
||||||
|
|
||||||
|
# Default output style
|
||||||
|
compass_config.output_style = :nested
|
||||||
|
|
||||||
|
# No line-comments in test mode (changing paths mess with sha1)
|
||||||
|
compass_config.line_comments = false if ENV["TEST"]
|
||||||
end
|
end
|
||||||
|
|
||||||
# A Compass Sass template for Tilt, adding our options in
|
# Call hook
|
||||||
class CompassSassTemplate < ::Middleman::Renderers::Sass::SassPlusCSSFilenameTemplate
|
app.run_hook :compass_config, ::Compass.configuration
|
||||||
def sass_options
|
|
||||||
super.merge(::Compass.configuration.to_sass_engine_options)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
# A Compass Scss template for Tilt, adding our options in
|
# Tell Tilt to use it as well (for inline sass blocks)
|
||||||
class CompassScssTemplate < ::Middleman::Renderers::Sass::ScssPlusCSSFilenameTemplate
|
::Tilt.register 'sass', CompassSassTemplate
|
||||||
def sass_options
|
::Tilt.prefer(CompassSassTemplate)
|
||||||
super.merge(::Compass.configuration.to_sass_engine_options)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
# Tell Tilt to use it as well (for inline scss blocks)
|
||||||
|
::Tilt.register 'scss', CompassScssTemplate
|
||||||
|
::Tilt.prefer(CompassScssTemplate)
|
||||||
|
end
|
||||||
|
|
||||||
|
# A Compass Sass template for Tilt, adding our options in
|
||||||
|
class CompassSassTemplate < ::Middleman::Renderers::Sass::SassPlusCSSFilenameTemplate
|
||||||
|
def sass_options
|
||||||
|
super.merge(::Compass.configuration.to_sass_engine_options)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# A Compass Scss template for Tilt, adding our options in
|
||||||
|
class CompassScssTemplate < ::Middleman::Renderers::Sass::ScssPlusCSSFilenameTemplate
|
||||||
|
def sass_options
|
||||||
|
super.merge(::Compass.configuration.to_sass_engine_options)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
Loading…
Reference in a new issue