diff options
author | José Valim <jose.valim@gmail.com> | 2010-01-18 13:44:32 +0100 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-01-18 16:21:11 +0100 |
commit | 9fffdc5cdb80b1824473a6d7ae1fedf9e74aa748 (patch) | |
tree | 88f429511bf65f1104efeab10d6310b68ab24837 /railties/lib/generators/rails/generator | |
parent | e75ea474346e74e36d92febd47985c3571b1472b (diff) | |
download | rails-9fffdc5cdb80b1824473a6d7ae1fedf9e74aa748.tar.gz rails-9fffdc5cdb80b1824473a6d7ae1fedf9e74aa748.tar.bz2 rails-9fffdc5cdb80b1824473a6d7ae1fedf9e74aa748.zip |
Generators load path now will be Ruby load path. If you want to use rspec:install generator, you need generators/rspec/install_generator in your load path.
Diffstat (limited to 'railties/lib/generators/rails/generator')
5 files changed, 49 insertions, 0 deletions
diff --git a/railties/lib/generators/rails/generator/USAGE b/railties/lib/generators/rails/generator/USAGE new file mode 100644 index 0000000000..ca7d3f62d0 --- /dev/null +++ b/railties/lib/generators/rails/generator/USAGE @@ -0,0 +1,11 @@ +Description: + Stubs out a new generator at lib/generators. Pass the generator name, either + CamelCased or under_scored, as an argument. + +Example: + `./script/generate generator Awesome` + + creates a standard awesome generator: + lib/generators/awesome/ + lib/generators/awesome/awesome_generator.rb + lib/generators/awesome/templates/ diff --git a/railties/lib/generators/rails/generator/generator_generator.rb b/railties/lib/generators/rails/generator/generator_generator.rb new file mode 100644 index 0000000000..5b5d1884bc --- /dev/null +++ b/railties/lib/generators/rails/generator/generator_generator.rb @@ -0,0 +1,25 @@ +module Rails + module Generators + class GeneratorGenerator < NamedBase + check_class_collision :suffix => "Generator" + + class_option :namespace, :type => :boolean, :default => true, + :desc => "Namespace generator under lib/generators/name" + + def create_generator_files + directory '.', generator_dir + end + + protected + + def generator_dir + if options[:namespace] + File.join("lib", "generators", file_name) + else + File.join("lib", "generators") + end + end + + end + end +end diff --git a/railties/lib/generators/rails/generator/templates/%file_name%_generator.rb.tt b/railties/lib/generators/rails/generator/templates/%file_name%_generator.rb.tt new file mode 100644 index 0000000000..d8757460e4 --- /dev/null +++ b/railties/lib/generators/rails/generator/templates/%file_name%_generator.rb.tt @@ -0,0 +1,5 @@ +class <%= class_name %>Generator < Rails::Generators::NamedBase + def self.source_root + @source_root ||= File.expand_path('../templates', __FILE__) + end +end diff --git a/railties/lib/generators/rails/generator/templates/USAGE.tt b/railties/lib/generators/rails/generator/templates/USAGE.tt new file mode 100644 index 0000000000..ea9f4f12cc --- /dev/null +++ b/railties/lib/generators/rails/generator/templates/USAGE.tt @@ -0,0 +1,8 @@ +Description: + Explain the generator + +Example: + ./script/generate <%= file_name %> Thing + + This will create: + what/will/it/create diff --git a/railties/lib/generators/rails/generator/templates/templates/.empty_directory b/railties/lib/generators/rails/generator/templates/templates/.empty_directory new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/railties/lib/generators/rails/generator/templates/templates/.empty_directory |