Search code examples
rubysassosx-mountain-lionguard

guard/guard-sass not compiling changes


I'm having problems with guard and guard-sass compiling updated to my .sass files. I've install them both, pointed the guard-sass configuration at my input and output directories but whenever I save my changes the .css file isn't getting updated.

Initially I thought it might be a permissions things but the odd thing is I've set :all_on_start => true which words so I doubt it can be that.

Here is my GuardFile as it stands:

guard 'sass',
  :input => 'assets/sass',
  :output => 'static/css',
  :all_on_start => true

I've also tried (just incase avoiding the long notation made a difference):

guard 'sass',
  :all_on_start => true,
  :output => 'static/css' do
    watch %r{^assets/sass/(.+\.s[ac]ss)$}
  end

Here is when I start Guard with debug (guard start -d - just incase debug show something I'm missing):

tavocado:data tavocado$ guard start -d
22:39:49 - DEBUG - Command execution: emacsclient --eval '1' 2> /dev/null || echo 'N/A'
22:39:49 - INFO - Guard uses TerminalTitle to send notifications.
22:39:49 - DEBUG - Command execution: hash stty
22:39:49 - DEBUG - Guard starts all plugins
22:39:49 - DEBUG - Hook :start_begin executed for Guard::Sass
22:39:49 - INFO - Sass [0.02s] base.sass -> base.css

22:39:49 - DEBUG - Hook :start_end executed for Guard::Sass
22:39:49 - INFO - Guard is now watching at '/data'
22:39:50 - DEBUG - Command execution: stty -g 2>/dev/null
22:39:50 - DEBUG - Start interactor

I'm installing this on OS X 10.8.3 with the default ruby installation (ruby 1.8.7, gem 1.3.6).

I've been at it for a couple of hours and I'm completely stumped so any help would be greatly appreciated.


Solution

  • Taken from the Guard wiki:

    If you are on Mac OS X and have problems with either Guard not reacting to file changes or Pry behaving strangely, then you probably suffer under a Ruby build that uses libedit instead of readline.

    To fix your issue, you need to install proper Readline support. Since Ruby 1.8.7 is end-of-life in June and will not receive security updates, I recommend to upgrade to Ruby 2.0.0.