Module: Compass::Configuration
- Defined in:
- lib/compass/configuration.rb,
lib/compass/configuration/data.rb,
lib/compass/configuration/helpers.rb,
lib/compass/configuration/comments.rb,
lib/compass/configuration/defaults.rb,
lib/compass/configuration/adapters.rb,
lib/compass/configuration/file_data.rb,
lib/compass/configuration/inheritance.rb,
lib/compass/configuration/serialization.rb
Defined Under Namespace
Modules: Adapters, Comments, Defaults, Helpers, Inheritance, Paths, Serialization Classes: Data, FileData
Constant Summary
- ATTRIBUTES =
[ # What kind of project? :project_type, # Where is the project? :project_path, :http_path, # Where are the various bits of the project attributes_for_directory(:css, :stylesheets), attributes_for_directory(:sass, nil), attributes_for_directory(:images), attributes_for_directory(:generated_images), attributes_for_directory(:javascripts), attributes_for_directory(:fonts), attributes_for_directory(:extensions, nil), # Compilation options :output_style, :environment, :relative_assets, :additional_import_paths, :sass_options, attributes_for_directory(:cache, nil), :cache, # Helper configuration :asset_host, :asset_cache_buster, :line_comments, :color_output, :preferred_syntax, :disable_warnings, :sprite_engine, :chunky_png_options ].flatten
- ARRAY_ATTRIBUTES =
[ :sprite_load_path, :required_libraries, :loaded_frameworks, :framework_path ]
Class Method Summary (collapse)
-
+ (Object) add_configuration_property(name, comment = nil, &default)
Registers a new configuration property.
- + (Object) attributes_for_directory(dir_name, http_dir_name = dir_name)
-
+ (Object) remove_configuration_property(name)
For testing purposes.
Class Method Details
+ (Object) add_configuration_property(name, comment = nil, &default)
Registers a new configuration property. Extensions can use this to add new configuration options to compass.
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/compass/configuration.rb', line 59 def self.add_configuration_property(name, comment = nil, &default) ATTRIBUTES << name if comment.is_a?(String) unless comment[0..0] == "#" comment = "# #{comment}" end unless comment[-1..-1] == "\n" comment = comment + "\n" end Data.class_eval <<-COMMENT def comment_for_#{name} #{comment.inspect} end COMMENT end Data.send(:define_method, :default_#{name}", &default) if default Data.inherited_accessor(name) if name.to_s =~ /dir|path/ strip_trailing_separator(name) end end |
+ (Object) attributes_for_directory(dir_name, http_dir_name = dir_name)
4 5 6 7 8 9 10 11 |
# File 'lib/compass/configuration.rb', line 4 def self.attributes_for_directory(dir_name, http_dir_name = dir_name) [ "#{dir_name}_dir", "#{dir_name}_path", ("http_#{http_dir_name}_dir" if http_dir_name), ("http_#{http_dir_name}_path" if http_dir_name) ].compact.map{|a| a.to_sym} end |
+ (Object) remove_configuration_property(name)
For testing purposes
82 83 84 |
# File 'lib/compass/configuration.rb', line 82 def self.remove_configuration_property(name) ATTRIBUTES.delete(name) end |