--- title: Configuration Reference layout: tutorial classnames: - tutorial --- # Configuration Reference The compass configuration file is a ruby file, which means that we can do some clever things if we want to. But don’t let it frighten you; it’s really quite easy to set up your project. ## Basic format Most configuration properties are a simple assignment to a configuration property. For example: css_dir = "stylesheets" Most configuration properties have a value that is a “basic” type. There are three basic types that can be set to a property: * **String** – Text is surrounded by either single or double quotes. E.g. `"this is a string"` * **Symbol** – A symbol starts with a colon and has no spaces in it. Symbols are used to represent values where the set of possible values are limited. E.g. `:foo` or `:foo_bar_baz` * **Boolean** – `true` or `false` There are two kinds of composite values: * **Array** – An Array is a comma delimited list of basic values surrounded by square brackets. E.g. `["one", "two", "three"]`. * **Hash** – A Hash is an association or mapping of one value to another. It is a comma delimited list of associations surrounded by curly brackets. An association is two values separated by `=>`. E.g. `{:foo => "aaa", :bar => "zzz"}` ## Comments Use the hash sign `#` to comment out everything from the hash sign to the end of the line. ## Import Note for Windows Users The backslash character (`\`) is a special character in a string delimited by double quotes (`"`). If you are working with folders in your paths, you should either use **single quotes** to delimit your strings or escape your backslash by doubling it like `"some\\path"`. ## Loading Compass Plugins Compass relies on the ruby `require` mechanism to load other libraries of code. To load a compass-compatible plugin, simply require it at the top of your configuration file. If you used the -r option to access another library at project creation time, this will already be set up for you. Example: require 'ninesixty' require 'susy' ## Overriding Configuration Settings When using the compass command line, configuration options that you set on the command line will override the corresponding settings in your configuration file. ## Configuration Properties
Property Name | Type | Description |
---|---|---|
project_type |
Symbol | Can be :stand_alone or
:rails . Defaults to :stand_alone .
|
environment |
Symbol | The environment mode.
Defaults to :production , can also be :development
|
project_path |
String | Not needed in :stand_alone mode
where it can be inferred by context. Sets the path to the root of the project.
|
http_path |
String | The path to the project when running within the
web server. Defaults to "/" .
|
css_dir |
String | The directory where the css stylesheets are kept.
It is relative to the project_path .
Defaults to "stylesheets" .
|
css_path |
String | The full path to where css stylesheets are kept.
Defaults to <project_path>/<css_dir> .
|
http_stylesheets_path |
String | The full http path to stylesheets on the web server. Defaults to http_path + "/" + css_dir . |
sass_dir |
String | The directory where the sass stylesheets are kept.
It is relative to the project_path . Defaults to "src" .
|
sass_path |
String | The full path to where sass stylesheets are kept.
Defaults to <project_path>/<sass_dir> .
|
images_dir |
String | The directory where the images are kept.
It is relative to the project_path .
Defaults to "images" .
|
images_path |
String | The full path to where images are kept.
Defaults to <project_path>/<images_dir> .
|
http_images_path |
String | The full http path to images on the web server.
Defaults to http_path + "/" + images_dir .
|
javascripts_dir |
String | The directory where the javascripts are kept.
It is relative to the project_path . Defaults to
"javascripts" .
|
javascripts_path |
String | The full path to where javascripts are kept.
Defaults to <project_path>/<javascripts_dir> .
|
http_javascripts_path |
String | The full http path to javascripts on the web server.
Defaults to http_path + "/" + javascripts_dir .
|
output_style |
Symbol | The output style for the compiled css.
One of: :nested , :expanded , :compact ,
or :compressed .
|
relative_assets |
Boolean | Indicates whether the compass helper functions should generate relative urls from the generated css to assets, or absolute urls using the http path for that asset type. |
additional_import_paths |
Array of Strings | Other paths on your system from which to import
sass files. See the add_import_path function for a simpler
approach.
|
sass_options |
Hash | These options are passed directly to the Sass compiler. For more details on the format of sass options, please read the sass options documentation. |
line_comments |
Boolean | Indicates whether line comments should be added to compiled css that says where the selectors were defined. Defaults to false in production mode, true in development mode. |