aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/generators/app_base.rb
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib/rails/generators/app_base.rb')
-rw-r--r--railties/lib/rails/generators/app_base.rb42
1 files changed, 31 insertions, 11 deletions
diff --git a/railties/lib/rails/generators/app_base.rb b/railties/lib/rails/generators/app_base.rb
index 63e9b720a4..8b568ff8df 100644
--- a/railties/lib/rails/generators/app_base.rb
+++ b/railties/lib/rails/generators/app_base.rb
@@ -179,16 +179,29 @@ module Rails
gemfile = if options.dev? || options.edge?
<<-GEMFILE.gsub(/^ {12}/, '')
- # Gems used for assets
+ # Use edge version of sprockets-rails
gem 'sprockets-rails', github: 'rails/sprockets-rails'
+
+ # Use SCSS for stylesheets
gem 'sass-rails', github: 'rails/sass-rails'
- gem 'uglifier', '>= 1.0.3'
+
+ # To use Uglifier as compressor for JavaScript assets
+ gem 'uglifier', '>= 1.3.0'
GEMFILE
else
<<-GEMFILE.gsub(/^ {12}/, '')
- # Gems used for assets
+ # Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0.beta1'
- gem 'uglifier', '>= 1.0.3'
+
+ # To use Uglifier as compressor for JavaScript assets
+ gem 'uglifier', '>= 1.3.0'
+ GEMFILE
+ end
+
+ if options[:skip_javascript]
+ gemfile += <<-GEMFILE.gsub(/^ {12}/, '')
+ #{coffee_gemfile_entry}
+ #{javascript_runtime_gemfile_entry}
GEMFILE
end
@@ -196,11 +209,19 @@ module Rails
end
def coffee_gemfile_entry
- if options.dev? || options.edge?
- "gem 'coffee-rails', github: 'rails/coffee-rails'"
+ gemfile = if options.dev? || options.edge?
+ <<-GEMFILE.gsub(/^ {12}/, '')
+ # Use CoffeeScript for .js.coffee assets and views
+ gem 'coffee-rails', github: 'rails/coffee-rails'
+ GEMFILE
else
- "gem 'coffee-rails', '~> 4.0.0.beta1'"
+ <<-GEMFILE.gsub(/^ {12}/, '')
+ # Use CoffeeScript for .js.coffee assets and views
+ gem 'coffee-rails', '~> 4.0.0.beta1'
+ GEMFILE
end
+
+ gemfile.strip_heredoc.gsub(/^[ \t]*$/, '')
end
def javascript_gemfile_entry
@@ -208,9 +229,8 @@ module Rails
unless options[:skip_javascript]
<<-GEMFILE.gsub(/^ {12}/, '').strip_heredoc
- #{javascript_runtime_gemfile_entry}
- # Use CoffeeScript for .js.coffee assets and views
#{coffee_gemfile_entry}
+ #{javascript_runtime_gemfile_entry}
gem '#{options[:javascript]}-rails'#{args[options[:javascript]]}
@@ -220,7 +240,7 @@ module Rails
end
end
- def javascript_runtime_gemfile_entry(n_spaces=0)
+ def javascript_runtime_gemfile_entry
runtime = if defined?(JRUBY_VERSION)
"gem 'therubyrhino'"
else
@@ -228,7 +248,7 @@ module Rails
end
<<-GEMFILE.gsub(/^ {10}/, '')
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
- #{" "*n_spaces}#{runtime}
+ #{runtime}
GEMFILE
end