Forum: Radiant CMS Need help with Compass configuration for Radiant

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
D7f51f69cde2bfbf830a6dffb1938a74?d=identicon&s=25 Wes G. (Guest)
on 2010-10-25 19:52
(Received via mailing list)
Radiant 0.9.1 (vendor'ed)
SNS extension

I'd like to take advantage of various Compass Sass features within my
Radiant layouts (e.g. border-radius, etc.).

Compass initialization file:

I pulled down the radiant/config/initializers/compass.rb file from
Github and placed it into vendor/radiant/config/initializers

    require 'compass'
    require 'compass/app_integration/rails'

Compass configuration file:

I took a compass.rb from another (non-Radiant) project and placed it in
vendor/radiant/config.  I changed the paths based on my current settings
for the SNS extension:

    # This configuration file works with both the Compass command line
    tool and within Rails.

    # Require any additional compass plugins here.

    project_type = :rails
    project_path = Compass::AppIntegration::Rails.root

    # Set this to the root of your project when deployed:
    http_path = "/"
    css_dir = "css"
    http_stylesheets_path = "/stylesheets"
    sass_dir = "stylesheets/sass"
    images_dir = "public/images"
    http_images_path = "/images"
    javascripts_dir = "public/javascripts"
    http_javascripts_path = "/javascripts"
    environment = Compass::AppIntegration::Rails.env
    # To enable relative paths to assets via compass helper functions.
    # relative_assets = true

I @import compass/css3/border-radius in my Radiant-managed CSS (Sass)
file, but cannot use the "+border-radius" mixin within my CSS.

What am I doing wrong?

Many thanks,
Wes G.
Aa4aec1c44f1726af7286e2cf782b1a9?d=identicon&s=25 William R. (Guest)
on 2010-10-25 21:01
(Received via mailing list)
You shouldn't need any special measures. Have you tried just putting

  @import compass/css3

At the top of one of your sheets? On edge that should just work.



Please excuse speling. Fat thumbs.
D7f51f69cde2bfbf830a6dffb1938a74?d=identicon&s=25 Wes G. (Guest)
on 2010-10-25 21:21
(Received via mailing list)
I'm not on edge.  Still doesn't work for me.

I was already putting @import compass/css3/border-radius at the top of
my sheet.  Taking away the "border-radius" doesn't change the outcome,
as you would expect.

I am still not successfully pulling in the compass mixins at all.

Does anyone know if there was anything besides the compass initializer
that was added to support Compass in Radiant?

Jim G. (Guest)
on 2010-10-25 21:59
(Received via mailing list)
Wes is using SNS, not Sheets (which is better and in Radiant edge)

Wes, change the name of your config file. I believe it will create
problems with compass.
It doesn't really matter what you name the file, except 'compass.rb'
D7f51f69cde2bfbf830a6dffb1938a74?d=identicon&s=25 Wes G. (Guest)
on 2010-10-25 22:32
(Received via mailing list)
Changed my RADIANT_ROOT/config/compass.rb file to compass_config.rb
and got the same behavior.

No compass mixins loaded.

You did mean the config. file and not the initializer file, right?

Aa4aec1c44f1726af7286e2cf782b1a9?d=identicon&s=25 William R. (Guest)
on 2010-10-26 10:39
(Received via mailing list)
On 25 Oct 2010, at 20:20, Wes G. wrote:

> I'm not on edge.  Still doesn't work for me.
> I was already putting @import compass/css3/border-radius at the top of my sheet.
Taking away the "border-radius" doesn't change the outcome, as you would expect.

I didn't say it would. I said the rest of your changes were unnecessary,
but I didn't realise you were still running SNS. Sorry. In that case,
you need to change the sns_sass_filter so that it passes through the
compass configuration. This is probably the right way:

  def filter(text)
    begin, Compass.sass_engine_options).render

and you do need the initializer.


D7f51f69cde2bfbf830a6dffb1938a74?d=identicon&s=25 Wes G. (Guest)
on 2010-12-17 23:35

I didn't see your response until just now.  This seems to work for me.

Thanks for so much for the help!



class SnsSassFilter < StylesheetFilter
  filter_name 'Sass'

  def initialize
    # you can add Sass options in here to control your filter output
    # just make sure you know the consequences of doing so (including
    # that you may need to update all your stylesheets to yield a new
    # LAST-MODIFIED date from the cache.
    load_path = Radiant::Config['SnS.sass_directory'] || 'css/sass/'
    @sass_options = Compass.sass_engine_options
    @sass_options[:load_paths] += [File.join(RAILS_ROOT, 'public',

  def filter(text)
    begin, @sass_options).render
    rescue Sass::SyntaxError
      "Syntax Error at line #{$!.sass_line}: " + $!.to_s
This topic is locked and can not be replied to.