We keep configuration in its own self-contained file so that we can load it independently in Rails 3, where the full plugin stuff is lazy-loaded.
Adds a new template-location/css-location mapping. This means that Sass/SCSS files in `template_location` will be compiled to CSS files in `css_location`.
This is preferred over manually manipulating the {file:SASS_REFERENCE.md#template_location-option `:template_location` option} since the option can be in multiple formats.
Note that this method will change `options` to be in the Array format. This means that even if `options` had previously been a Hash or a String, it will now be an Array.
@param template_location [String] The location where Sass/SCSS files will be. @param css_location [String] The location where compiled CSS files will go.
# File lib/sass/plugin/configuration.rb, line 51 def add_template_location(template_location, css_location = options[:css_location]) normalize_template_location! template_location_array << [template_location, css_location] end
Different default options in a rails envirionment.
# File lib/sass/plugin/rails.rb, line 6 def default_options return @default_options if @default_options opts = { :quiet => Sass::Util.rails_env != "production", :full_exception => Sass::Util.rails_env != "production", :cache_location => Sass::Util.rails_root + '/tmp/sass-cache' } opts.merge!( :always_update => false, :template_location => Sass::Util.rails_root + '/public/stylesheets/sass', :css_location => Sass::Util.rails_root + '/public/stylesheets', :always_check => Sass::Util.rails_env == "development") @default_options = opts.freeze end
An options hash. See {file:SASS_REFERENCE.md#sass_options the Sass options documentation}.
@return [{Symbol => Object}]
# File lib/sass/plugin/configuration.rb, line 31 def options @options ||= default_options.dup end
Removes a template-location/css-location mapping. This means that Sass/SCSS files in `template_location` will no longer be compiled to CSS files in `css_location`.
This is preferred over manually manipulating the {file:SASS_REFERENCE.md#template_location-option `:template_location` option} since the option can be in multiple formats.
Note that this method will change `options` to be in the Array format. This means that even if `options` had previously been a Hash or a String, it will now be an Array.
@param template_location [String]
The location where Sass/SCSS files were, which is now going to be ignored.
@param css_location [String]
The location where compiled CSS files went, but will no longer go.
@return [Boolean]
Non-`nil` if the given mapping already existed and was removed, or `nil` if nothing was changed.
# File lib/sass/plugin/configuration.rb, line 78 def remove_template_location(template_location, css_location = options[:css_location]) normalize_template_location! template_location_array.delete([template_location, css_location]) end
Resets the options and {Sass::Callbacks::InstanceMethods#clear_callbacks! clears all callbacks}.
# File lib/sass/plugin/configuration.rb, line 22 def reset! @options = nil clear_callbacks! end
Returns the template locations configured for Sass as an array of `[template_location, css_location]` pairs. See the {file:SASS_REFERENCE.md#template_location-option `:template_location` option} for details.
@return [Array<(String, String)>]
An array of `[template_location, css_location]` pairs.
# File lib/sass/plugin/configuration.rb, line 90 def template_location_array old_template_location = options[:template_location] normalize_template_location! options[:template_location] ensure options[:template_location] = old_template_location end
Generated with the Darkfish Rdoc Generator 2.