README.md in guard-rails-assets-0.0.4 vs README.md in guard-rails-assets-0.0.5

- old
+ new

@@ -26,55 +26,63 @@ ``` ## Rails 3.1 The Rails 3.1 is a mandatory requirement, but is not enforeced via dependencies for now. -The reason is that the assets are currently compiled via command line and thus this guard does not -explicitly depend on Rails. +The reason is that the assets can currently be compiled using following "runners": -Good thing about it is that assets will always be same as produced by Rails. -Bad thing is that it is pretty slow (~10 seconds) because it starts Rails from ground zero. +1. rake command (CLI); +2. loading the actual Rails environment. -*NOTE*: The guard runs the `rake assets:clean assets:precopile`. -As of current Rails 3.1 edge that means that the assets will be deleted before they are compiled. +In the 1st case - this Guard is not actually using Rails directly while in the 2nd - it loads it explicitly. +Good thing about the 1st approach is that assets will always be same as produced by Rails. +Bad thing is that it is pretty slow (~10 seconds) because it starts Rails from ground zero. +The 2nd approach is good because it is much faster, but does not reload Rails environment (so you have to restart guard). + ## Guardfile and Options In addition to the standard configuration, this Guard has options to specify when exacly to precompile assets. - `:start` - compile assets when the guard starts (enabled by default) - `:change` - compile assets when watched files change (enabled by default) - `:reload` - compile assets when the guard quites (Ctrl-C) (not enabled by default) - `:all` - compile assets when running all the guards (Ctrl-/) (not enabled by default) +Also you can set the `:runner` option: + +- `:cli` - compile assets using the rake task - the most correct method, but slow. +- `:rails` - compile assets by loading rails environment (default) - fast, but does not pick up changes. + + + For example: ```ruby +# This is the default behaviour +guard 'rails-assets', :run_on => [:start, :change], :runner => :rails do + watch(%r{^app/assets/.+$}) +end + # compile ONLY when something changes guard 'rails-assets', :run_on => :change do watch(%r{^app/assets/.+$}) end # compile when something changes and when starting guard 'rails-assets', :run_on => [:start, :change] do watch(%r{^app/assets/.+$}) end - -# This is the default behaviour -guard 'rails-assets', :run_on => [:start, :change] do - watch(%r{^app/assets/.+$}) -end ``` ## Development - Source hosted at [GitHub](https://github.com/dnagir/guard-rails-assets) - Report issues and feature requests to [GitHub Issues](https://github.com/dnagir/guard-rails-assets/issues) - Pull requests are very welcome! ## Licensed under WTFPL ``` @@ -90,9 +98,5 @@ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. You just DO WHAT THE FUCK YOU WANT TO. ``` - - - -