Skip to content

Commit

Permalink
Remove trailing whitespace
Browse files Browse the repository at this point in the history
  • Loading branch information
mrduncan committed Apr 14, 2011
1 parent e56b19b commit 974a6aa
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 24 deletions.
12 changes: 6 additions & 6 deletions railties/guides/source/initialization.textile
Expand Up @@ -468,7 +468,7 @@ h4. +config/application.rb+

This file requires +config/boot.rb+, but only if it hasn't been required before, which would be the case in +rails server+ but *wouldn't* be the case with Passenger.

Then the fun begins!
Then the fun begins!

h3. Loading Rails

Expand Down Expand Up @@ -664,7 +664,7 @@ The +active_support/inflector/methods+ file has already been required by +active

h4. +activesupport/lib/active_support/inflector/inflections.rb+

This file references the +ActiveSupport::Inflector+ constant which isn't loaded by this point. But there were autoloads set up in +activesupport/lib/active_support.rb+ which will load the file which loads this constant and so then it will be defined. Then this file defines pluralization and singularization rules for words in Rails. This is how Rails knows how to pluralize "tomato" to "tomatoes".
This file references the +ActiveSupport::Inflector+ constant which isn't loaded by this point. But there were autoloads set up in +activesupport/lib/active_support.rb+ which will load the file which loads this constant and so then it will be defined. Then this file defines pluralization and singularization rules for words in Rails. This is how Rails knows how to pluralize "tomato" to "tomatoes".

h4. +activesupport/lib/active_support/inflector/transliterate.rb+

Expand Down Expand Up @@ -698,7 +698,7 @@ h4. Back to +railties/lib/rails/plugin.rb+

The next file required in this is a core extension from Active Support called +array/conversions+ which is covered in "this section":http://guides.rubyonrails.org/active_support_core_extensions.html#array-conversions of the Active Support Core Extensions Guide.

Once that file has finished loading, the +Rails::Plugin+ class is defined.
Once that file has finished loading, the +Rails::Plugin+ class is defined.

h4. Back to +railties/lib/rails/application.rb+

Expand All @@ -708,7 +708,7 @@ Once this file's done then we go back to the +railties/lib/rails.rb+ file, which

h4. +railties/lib/rails/version.rb+

Much like +active_support/version+, this file defines the +VERSION+ constant which has a +STRING+ constant on it which returns the current version of Rails.
Much like +active_support/version+, this file defines the +VERSION+ constant which has a +STRING+ constant on it which returns the current version of Rails.

Once this file has finished loading we go back to +railties/lib/rails.rb+ which then requires +active_support/railtie.rb+.

Expand Down Expand Up @@ -926,7 +926,7 @@ This file defines the +ActionDispatch::Railtie+ class, but not before requiring

h4. +activesupport/lib/action_dispatch.rb+

This file attempts to locate the +active_support+ and +active_model+ libraries by looking a couple of directories back from the current file and then adds the +active_support+ and +active_model+ +lib+ directories to the load path, but only if they aren't already, which they are.
This file attempts to locate the +active_support+ and +active_model+ libraries by looking a couple of directories back from the current file and then adds the +active_support+ and +active_model+ +lib+ directories to the load path, but only if they aren't already, which they are.

<ruby>
activesupport_path = File.expand_path('../../../activesupport/lib', __FILE__)
Expand Down Expand Up @@ -1112,4 +1112,4 @@ However the require after these is to a file that hasn't yet been loaded, +actio

h4. +actionpack/lib/action_view.rb+

+action_view.rb+
+action_view.rb+
34 changes: 17 additions & 17 deletions railties/guides/source/plugins.textile
Expand Up @@ -17,8 +17,8 @@ This guide describes how to build a test-driven plugin that will:
* Add methods to ActiveRecord::Base in the tradition of the 'acts_as' plugins
* Give you information about where to put generators in your plugin.

For the purpose of this guide pretend for a moment that you are an avid bird watcher.
Your favorite bird is the Yaffle, and you want to create a plugin that allows other developers to share in the Yaffle
For the purpose of this guide pretend for a moment that you are an avid bird watcher.
Your favorite bird is the Yaffle, and you want to create a plugin that allows other developers to share in the Yaffle
goodness.

endprologue.
Expand All @@ -27,21 +27,21 @@ h3. Setup

h4. Generating the Plugin Skeleton

Rails currently ships with a generator to generate a plugin within a Rails application. Help text is available that will explain
Rails currently ships with a generator to generate a plugin within a Rails application. Help text is available that will explain
how this generator works.

<shell>
$ rails generate plugin --help
</shell>

This generator places the plugin into the vendor/plugins directory.
This generator places the plugin into the vendor/plugins directory.

Vendored plugins are useful for quickly prototyping your plugin but current thinking in the Rails community is shifting towards
Vendored plugins are useful for quickly prototyping your plugin but current thinking in the Rails community is shifting towards
packaging plugins as gems, especially with the inclusion of Bundler as the Rails dependency manager.
Packaging a plugin as a gem may be overkill for any plugins that will not be shared across projects but doing so from the start makes it easier to share the plugin going forward without adding too much additional overhead during development.

Rails 3.1 will ship with a plugin generator that will default to setting up a plugin
as a gem. This tutorial will begin to bridge that gap by demonstrating how to create a gem based plugin using the
as a gem. This tutorial will begin to bridge that gap by demonstrating how to create a gem based plugin using the
"Enginex gem":http://www.github.com/josevalim/enginex.

<shell>
Expand Down Expand Up @@ -133,7 +133,7 @@ $ rails console

h3. Add an "acts_as" Method to Active Record

A common pattern in plugins is to add a method called 'acts_as_something' to models. In this case, you
A common pattern in plugins is to add a method called 'acts_as_something' to models. In this case, you
want to write a method called 'acts_as_yaffle' that adds a 'squawk' method to your Active Record models.

To begin, set up your files so that you have:
Expand Down Expand Up @@ -169,8 +169,8 @@ end

h4. Add a Class Method

This plugin will expect that you've added a method to your model named 'last_squawk'. However, the
plugin users might have already defined a method on their model named 'last_squawk' that they use
This plugin will expect that you've added a method to your model named 'last_squawk'. However, the
plugin users might have already defined a method on their model named 'last_squawk' that they use
for something else. This plugin will allow the name to be changed by adding a class method called 'yaffle_text_field'.

To start out, write a failing test that shows the behavior you'd like:
Expand Down Expand Up @@ -210,7 +210,7 @@ When you run +rake+, you should see the following:
</shell>

This tells us that we don't have the necessary models (Hickwall and Wickwall) that we are trying to test.
We can easily generate these models in our "dummy" Rails application by running the following commands from the
We can easily generate these models in our "dummy" Rails application by running the following commands from the
test/dummy directory:

<shell>
Expand All @@ -220,7 +220,7 @@ $ rails generate model Wickwall last_squak:string last_tweet:string
</shell>

Now you can create the necessary database tables in your testing database by navigating to your dummy app
and migrating the database. First
and migrating the database. First

<shell>
$ cd test/dummy
Expand Down Expand Up @@ -319,7 +319,7 @@ When you run +rake+ you should see the tests all pass:

h4. Add an Instance Method

This plugin will add a method named 'squawk' to any Active Record objects that call 'acts_as_yaffle'. The 'squawk'
This plugin will add a method named 'squawk' to any Active Record objects that call 'acts_as_yaffle'. The 'squawk'
method will simply set the value of one of the fields in the database.

To start out, write a failing test that shows the behavior you'd like:
Expand Down Expand Up @@ -352,7 +352,7 @@ class ActsAsYaffleTest < Test::Unit::TestCase
end
</ruby>

Run the test to make sure the last two tests fail the an error that contains "NoMethodError: undefined method `squawk'",
Run the test to make sure the last two tests fail the an error that contains "NoMethodError: undefined method `squawk'",
then update 'acts_as_yaffle.rb' to look like this:

<ruby>
Expand Down Expand Up @@ -387,8 +387,8 @@ Run +rake+ one final time and you should see:
7 tests, 7 assertions, 0 failures, 0 errors, 0 skips
</shell>

NOTE: The use of +write_attribute+ to write to the field in model is just one example of how a plugin can
interact with the model, and will not always be the right method to use. For example, you could also
NOTE: The use of +write_attribute+ to write to the field in model is just one example of how a plugin can
interact with the model, and will not always be the right method to use. For example, you could also
use +send("#{self.class.yaffle_text_field}=", string.to_squawk)+.

h3. Generators
Expand All @@ -398,7 +398,7 @@ the creation of generators can be found in the "Generators Guide":generators.htm

h3. Publishing your Gem

Gem plugins in progress can be easily be shared from any Git repository. To share the Yaffle gem with others, simply
Gem plugins in progress can be easily be shared from any Git repository. To share the Yaffle gem with others, simply
commit the code to a Git repository (like Github) and add a line to the Gemfile of the any application:

<ruby>
Expand All @@ -423,7 +423,7 @@ Move the directory that you created for the gem based plugin into the vendor/plu
require 'yaffle'
</ruby>

You can test this by changing to the Rails application that you added the plugin to and starting a rails console. Once in the
You can test this by changing to the Rails application that you added the plugin to and starting a rails console. Once in the
console we can check to see if the String has an instance method of to_squawk.
<shell>
$ cd my_app
Expand Down
Expand Up @@ -13,7 +13,7 @@ h3. Prologue
Each guide should start with motivational text at the top (that's the little introduction in the blue area.) The prologue should tell the reader what the guide is about, and what they will learn. See for example the "Routing Guide":routing.html.

h3. Titles

The title of every guide uses +h2+, guide sections use +h3+, subsections +h4+, etc.

Capitalize all words except for internal articles, prepositions, conjunctions, and forms of the verb to be:
Expand Down

0 comments on commit 974a6aa

Please sign in to comment.