guard-livereload: Guard live-reload not detecting changes to SCSS partials

I use the underscore filename convention for my SCSS partials (_buttons.css.scss), but guard-livereload isn’t detecting changes to these files. If I make a change to my main SCSS file that does all the importing (application.css.scss), livereload works like a charm.

I’m assuming I need to adjust the regex in the Guardfile, but I just don’t know regex that well. I really don’t have to have to change my filename conventions to make this work. Can someone assist? Here’s my Guardfile…

guard 'livereload' do
  watch(%r{app/views/.+\.(erb|haml|slim)$})
  watch(%r{app/helpers/.+\.rb})
  watch(%r{public/.+\.(css|js|html)})
  watch(%r{config/locales/.+\.yml})
  # Rails Assets Pipeline
  watch(%r{(app|vendor)(/assets/\w+/(.+\.(css|js|html))).*}) { |m| "/assets/#{m[3]}" }
end

About this issue

  • Original URL
  • State: closed
  • Created 11 years ago
  • Comments: 27 (11 by maintainers)

Most upvoted comments

@joallard - the Guardfile template was recently updated, so check if it works already: https://github.com/guard/guard-livereload/blob/master/lib/guard/livereload/templates/Guardfile