<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/markaby/rails/action_controller_helpers.rb</filename>
    </added>
    <added>
      <filename>lib/markaby/rails/template_handler.rb</filename>
    </added>
    <added>
      <filename>markaby.gemspec</filename>
    </added>
    <added>
      <filename>test/app_root/app/controllers/application_controller.rb</filename>
    </added>
    <added>
      <filename>test/app_root/app/controllers/markaby_controller.rb</filename>
    </added>
    <added>
      <filename>test/app_root/app/helpers/test_helper.rb</filename>
    </added>
    <added>
      <filename>test/app_root/app/views/markaby/_monkeys.mab</filename>
    </added>
    <added>
      <filename>test/app_root/app/views/markaby/broken.mab</filename>
    </added>
    <added>
      <filename>test/app_root/app/views/markaby/create.mab</filename>
    </added>
    <added>
      <filename>test/app_root/app/views/markaby/index.mab</filename>
    </added>
    <added>
      <filename>test/app_root/app/views/markaby/multiple_forms.mab</filename>
    </added>
    <added>
      <filename>test/app_root/config/boot.rb</filename>
    </added>
    <added>
      <filename>test/app_root/config/database.yml</filename>
    </added>
    <added>
      <filename>test/app_root/config/environment.rb</filename>
    </added>
    <added>
      <filename>test/app_root/config/environments/in_memory.rb</filename>
    </added>
    <added>
      <filename>test/app_root/config/environments/mysql.rb</filename>
    </added>
    <added>
      <filename>test/app_root/config/environments/postgresql.rb</filename>
    </added>
    <added>
      <filename>test/app_root/config/environments/sqlite.rb</filename>
    </added>
    <added>
      <filename>test/app_root/config/environments/sqlite3.rb</filename>
    </added>
    <added>
      <filename>test/app_root/config/routes.rb</filename>
    </added>
    <added>
      <filename>test/app_root/lib/console_with_fixtures.rb</filename>
    </added>
    <added>
      <filename>test/app_root/log/in_memory.log</filename>
    </added>
    <added>
      <filename>test/app_root/script/console</filename>
    </added>
    <added>
      <filename>test/markaby_controller_test.rb</filename>
    </added>
    <added>
      <filename>test/markaby_test.rb</filename>
    </added>
    <added>
      <filename>test/monkeys.html</filename>
    </added>
    <added>
      <filename>test/test_helper.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,42 +1,49 @@
 require 'rake'
 require 'rake/testtask'
-require 'rake/clean'
-require 'rake/gempackagetask'
 require 'rake/rdoctask'
-require 'tools/rakehelp'
-require 'fileutils'
-include FileUtils
+require 'rcov/rcovtask'
 
-REV = File.read(&quot;.svn/entries&quot;)[/committed-rev=&quot;(\d+)&quot;/, 1] rescue nil
-VERS = ENV['VERSION'] || &quot;0.5&quot; + (REV ? &quot;.#{REV}&quot; : &quot;&quot;)
+begin
+  require 'jeweler'
 
-task :default =&gt; [:package]
-
-setup_tests
-setup_rdoc ['README', 'CHANGELOG', 'lib/**/*.rb']
+  Jeweler::Tasks.new do |s|
+    s.name = &quot;markaby&quot;
+    s.summary = &quot;Markaby is a very short bit of code for writing HTML pages in pure Ruby.&quot;
+    s.email = &quot;dinsley@gmail.com  &quot;
+    s.homepage = &quot;http://github.com/dinsley/markaby&quot;
+    s.description = &quot;Markaby is a very short bit of code for writing HTML pages in pure Ruby.&quot;
+    s.authors = [&quot;Tim Fletcher&quot;, &quot;why_&quot;, &quot;Daniel Insley&quot;]
+  end
+rescue LoadError
+  puts &quot;Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com&quot;
+end
 
-summary = &quot;Markup as Ruby, write HTML in your native Ruby tongue&quot;
-test_file = &quot;test/test_markaby.rb&quot;
-setup_gem(&quot;markaby&quot;, VERS,  &quot;Tim Fletcher and _why&quot;, summary, [['builder', '&gt;=2.0.0']], test_file)
+task :test do
+  Rake::TestTask.new do |t|
+    t.libs &lt;&lt; 'lib'
+    t.pattern = ['test/markaby_test.rb']
+    t.verbose = false
+  end
 
-desc &quot;List any Markaby specific warnings&quot;
-task :warnings do
-  `ruby -w test/test_markaby.rb 2&gt;&amp;1`.split(/\n/).each do |line|
-    next unless line =~ /warning:/
-    next if line =~ /builder-/
-    puts line
+  Rake::TestTask.new do |t|
+    t.libs &lt;&lt; 'lib'
+    t.pattern = ['test/markaby_controller_test.rb']
+    t.verbose = false
   end
 end
 
-desc &quot;Start a Markaby-aware IRB session&quot;
-task :irb do
-  sh 'irb -I lib -r markaby -r markaby/kernel_method'
+Rake::RDocTask.new do |rdoc|
+  rdoc.rdoc_dir = 'rdoc'
+  rdoc.title = 'Jeweler'
+  rdoc.options &lt;&lt; '--line-numbers' &lt;&lt; '--inline-source'
+  rdoc.rdoc_files.include('README*')
+  rdoc.rdoc_files.include('lib/**/*.rb')
 end
 
-namespace :test do
-  desc ''
-  task :rails do
-    Dir.chdir '../../../'
-    sh 'rake test:plugins PLUGIN=markaby'
-  end
-end
\ No newline at end of file
+Rcov::RcovTask.new do |t|
+  t.libs &lt;&lt; &quot;test&quot;
+  t.test_files = FileList['markaby_test.rb', 'test/markaby_controller_test.rb']
+  t.verbose = true
+end
+
+task :default =&gt; :test
\ No newline at end of file</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,4 @@
 --- 
 :minor: 0
-:patch: 0
+:patch: 5
 :major: 0</diff>
      <filename>VERSION.yml</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,8 @@
-$:.unshift File.expand_path(File.join(File.dirname(__FILE__), 'lib'))
+#$:.unshift File.expand_path(File.join(File.dirname(__FILE__), 'lib'))
 
 require 'markaby'
-require 'markaby/rails'
+require 'markaby/rails/template_handler'
+require 'markaby/rails/action_controller_helpers'
 
-ActionView::Template.register_template_handler 'mab', Markaby::Rails::ActionViewTemplateHandler
-
-ActionController::Base.send :include, Markaby::Rails::ActionControllerHelpers
+ActionView::Template.register_template_handler 'mab', Markaby::Rails::TemplateHandler
+ActionController::Base.send :include, Markaby::Rails::ActionControllerHelpers
\ No newline at end of file</diff>
      <filename>init.rb</filename>
    </modified>
    <modified>
      <diff>@@ -16,12 +16,10 @@ $:.unshift File.expand_path(File.dirname(__FILE__))
 # * Markaby::MetAid: metaprogramming helper methods.
 # * Markaby::Tags: lists the roles of various XHTML tags to help Builder
 #   use these tags as they are intended.
-# * Markaby::Template: a class for hooking Markaby into Rails as a
-#   proper templating language.
 module Markaby
   VERSION = '0.5'
 
-  class InvalidXhtmlError &lt; Exception; end
+  class InvalidXhtmlError &lt; StandardError; end
 end
 
 unless defined?(Builder)
@@ -32,4 +30,10 @@ end
 require 'markaby/builder'
 require 'markaby/cssproxy'
 require 'markaby/metaid'
-require 'markaby/template'
+
+module Kernel
+  # Shortcut for creating a quick block of Markaby.
+  def mab(*args, &amp;block)
+    Markaby::Builder.new(*args, &amp;block).to_s
+  end
+end
\ No newline at end of file</diff>
      <filename>lib/markaby.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,22 +1,22 @@
 require 'markaby/tags'
 
 module Markaby
-  # The Markaby::Builder class is the central gear in the system.  When using
+  # The Markaby::Builder class is the central gear in the system. When using
   # from Ruby code, this is the only class you need to instantiate directly.
   #
-  #   mab = Markaby::Builder.new
-  #   mab.html do
-  #     head { title &quot;Boats.com&quot; }
-  #     body do
-  #       h1 &quot;Boats.com has great deals&quot;
-  #       ul do
-  #         li &quot;$49 for a canoe&quot;
-  #         li &quot;$39 for a raft&quot;
-  #         li &quot;$29 for a huge boot that floats and can fit 5 people&quot;
-  #       end
-  #     end
-  #   end
-  #   puts mab.to_s
+  # mab = Markaby::Builder.new
+  # mab.html do
+  # head { title &quot;Boats.com&quot; }
+  # body do
+  # h1 &quot;Boats.com has great deals&quot;
+  # ul do
+  # li &quot;$49 for a canoe&quot;
+  # li &quot;$39 for a raft&quot;
+  # li &quot;$29 for a huge boot that floats and can fit 5 people&quot;
+  # end
+  # end
+  # end
+  # puts mab.to_s
   #
   class Builder
 
@@ -36,30 +36,30 @@ module Markaby
       @@default[option] = value
     end
 
-    def self.ignored_helpers 
-      @@ignored_helpers ||= [] 
-    end 
- 
-    def self.ignore_helpers(*helpers) 
-      ignored_helpers.concat helpers 
-    end 
+    def self.ignored_helpers
+      @@ignored_helpers ||= []
+    end
+
+    def self.ignore_helpers(*helpers)
+      ignored_helpers.concat helpers
+    end
 
     attr_accessor :output_helpers, :tagset
 
-    # Create a Markaby builder object.  Pass in a hash of variable assignments to
+    # Create a Markaby builder object. Pass in a hash of variable assignments to
     # +assigns+ which will be available as instance variables inside tag construction
-    # blocks.  If an object is passed in to +helpers+, its methods will be available
+    # blocks. If an object is passed in to +helpers+, its methods will be available
     # from those same blocks.
     #
     # Pass in a +block+ to new and the block will be evaluated.
     #
-    #   mab = Markaby::Builder.new {
-    #     html do
-    #       body do
-    #         h1 &quot;Matching Mole&quot;
-    #       end
-    #     end
-    #   }
+    # mab = Markaby::Builder.new {
+    # html do
+    # body do
+    # h1 &quot;Matching Mole&quot;
+    # end
+    # end
+    # }
     #
     def initialize(assigns = {}, helpers = nil, &amp;block)
       @streams = [[]]
@@ -70,7 +70,7 @@ module Markaby
       @@default.each do |k, v|
         instance_variable_set(&quot;@#{k}&quot;, @assigns.delete(k) || v)
       end
-      
+
       @assigns.each do |k, v|
         instance_variable_set(&quot;@#{k}&quot;, v)
       end
@@ -80,7 +80,7 @@ module Markaby
       text(capture(&amp;block)) if block
     end
 
-    # Returns a string containing the HTML stream.  Internally, the stream is stored as an Array.
+    # Returns a string containing the HTML stream. Internally, the stream is stored as an Array.
     def to_s
       @streams.last.to_s
     end
@@ -93,11 +93,11 @@ module Markaby
     alias_method :&lt;&lt;, :text
     alias_method :concat, :text
 
-    # Captures the HTML code built inside the +block+.  This is done by creating a new
+    # Captures the HTML code built inside the +block+. This is done by creating a new
     # stream for the builder object, running the block and passing back its stream as a string.
     #
-    #   &gt;&gt; Markaby::Builder.new.capture { h1 &quot;TEST&quot;; h2 &quot;CAPTURE ME&quot; }
-    #   =&gt; &quot;&lt;h1&gt;TITLE&lt;/h1&gt;\n&lt;h2&gt;CAPTURE ME&lt;/h2&gt;\n&quot;
+    # &gt;&gt; Markaby::Builder.new.capture { h1 &quot;TEST&quot;; h2 &quot;CAPTURE ME&quot; }
+    # =&gt; &quot;&lt;h1&gt;TITLE&lt;/h1&gt;\n&lt;h2&gt;CAPTURE ME&lt;/h2&gt;\n&quot;
     #
     def capture(&amp;block)
       @streams.push(@builder.target = [])
@@ -119,11 +119,11 @@ module Markaby
               raise InvalidXhtmlError, &quot;no element `#{tag}' for #{tagset.doctype}&quot;
           elsif args.last.respond_to?(:to_hash)
               attrs = args.last.to_hash
-              
+
               if @tagset.forms.include?(tag) and attrs[:id]
                 attrs[:name] ||= attrs[:id]
               end
-              
+
               attrs.each do |k, v|
                   atname = k.to_s.downcase.intern
                   unless k =~ /:/ or @tagset.tagset[tag].include? atname
@@ -149,18 +149,18 @@ module Markaby
     end
 
     # This method is used to intercept calls to helper methods and instance
-    # variables.  Here is the order of interception:
+    # variables. Here is the order of interception:
     #
     # * If +sym+ is a helper method, the helper method is called
-    #   and output to the stream.
+    # and output to the stream.
     # * If +sym+ is a Builder::XmlMarkup method, it is passed on to the builder object.
     # * If +sym+ is also the name of an instance variable, the
-    #   value of the instance variable is returned.
+    # value of the instance variable is returned.
     # * If +sym+ has come this far and no +tagset+ is found, +sym+ and its arguments are passed to tag!
     # * If a tagset is found, though, +NoMethodError+ is raised.
     #
     # method_missing used to be the lynchpin in Markaby, but it's no longer used to handle
-    # HTML tags.  See html_tag for that.
+    # HTML tags. See html_tag for that.
     def method_missing(sym, *args, &amp;block)
       if @helpers.respond_to?(sym, true) &amp;&amp; !self.class.ignored_helpers.include?(sym)
         r = @helpers.send(sym, *args, &amp;block)
@@ -179,7 +179,7 @@ module Markaby
         instance_variable_get(ivar)
       elsif !@helpers.nil? &amp;&amp; @helpers.instance_variables.include?(ivar)
         @helpers.instance_variable_get(ivar)
-      elsif ::Builder::XmlMarkup.instance_methods.include?(sym.to_s) 
+      elsif ::Builder::XmlMarkup.instance_methods.include?(sym.to_s)
         @builder.__send__(sym, *args, &amp;block)
       elsif @tagset.nil?
         tag!(sym, *args, &amp;block)
@@ -188,8 +188,8 @@ module Markaby
       end
     end
 
-    # Every HTML tag method goes through an html_tag call.  So, calling &lt;tt&gt;div&lt;/tt&gt; is equivalent
-    # to calling &lt;tt&gt;html_tag(:div)&lt;/tt&gt;.  All HTML tags in Markaby's list are given generated wrappers
+    # Every HTML tag method goes through an html_tag call. So, calling &lt;tt&gt;div&lt;/tt&gt; is equivalent
+    # to calling &lt;tt&gt;html_tag(:div)&lt;/tt&gt;. All HTML tags in Markaby's list are given generated wrappers
     # for this method.
     #
     # If the @auto_validation setting is on, this method will check for many common mistakes which
@@ -206,15 +206,15 @@ module Markaby
 
     XHTMLTransitional.tags.each do |k|
       class_eval %{
-        def #{k}(*args, &amp;block)
-          html_tag(#{k.inspect}, *args, &amp;block)
-        end
-      }
+def #{k}(*args, &amp;block)
+html_tag(#{k.inspect}, *args, &amp;block)
+end
+}
     end
 
     remove_method :head
-    
-    # Builds a head tag.  Adds a &lt;tt&gt;meta&lt;/tt&gt; tag inside with Content-Type
+
+    # Builds a head tag. Adds a &lt;tt&gt;meta&lt;/tt&gt; tag inside with Content-Type
     # set to &lt;tt&gt;text/html; charset=utf-8&lt;/tt&gt;.
     def head(*args, &amp;block)
       tag!(:head, *args) do
@@ -223,8 +223,8 @@ module Markaby
       end
     end
 
-    # Builds an html tag.  An XML 1.0 instruction and an XHTML 1.0 Transitional doctype
-    # are prepended.  Also assumes &lt;tt&gt;:xmlns =&gt; &quot;http://www.w3.org/1999/xhtml&quot;,
+    # Builds an html tag. An XML 1.0 instruction and an XHTML 1.0 Transitional doctype
+    # are prepended. Also assumes &lt;tt&gt;:xmlns =&gt; &quot;http://www.w3.org/1999/xhtml&quot;,
     # :lang =&gt; &quot;en&quot;&lt;/tt&gt;.
     def xhtml_transitional(attrs = {}, &amp;block)
       self.tagset = Markaby::XHTMLTransitional
@@ -261,8 +261,8 @@ module Markaby
 
   end
 
-  # Every tag method in Markaby returns a Fragment.  If any method gets called on the Fragment,
-  # the tag is removed from the Markaby stream and given back as a string.  Usually the fragment
+  # Every tag method in Markaby returns a Fragment. If any method gets called on the Fragment,
+  # the tag is removed from the Markaby stream and given back as a string. Usually the fragment
   # is never used, though, and the stream stays intact.
   #
   # For a more practical explanation, check out the README.
@@ -285,5 +285,5 @@ module Markaby
   class XmlMarkup &lt; ::Builder::XmlMarkup
     attr_accessor :target, :level
   end
-  
-end
+
+end
\ No newline at end of file</diff>
      <filename>lib/markaby/builder.rb</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>CHANGELOG</filename>
    </removed>
    <removed>
      <filename>lib/markaby/kernel_method.rb</filename>
    </removed>
    <removed>
      <filename>lib/markaby/rails.rb</filename>
    </removed>
    <removed>
      <filename>lib/markaby/template.rb</filename>
    </removed>
    <removed>
      <filename>setup.rb</filename>
    </removed>
    <removed>
      <filename>test/rails/markaby/_monkeys.mab</filename>
    </removed>
    <removed>
      <filename>test/rails/markaby/broken.mab</filename>
    </removed>
    <removed>
      <filename>test/rails/markaby/create.mab</filename>
    </removed>
    <removed>
      <filename>test/rails/markaby/index.mab</filename>
    </removed>
    <removed>
      <filename>test/rails/monkeys.html</filename>
    </removed>
    <removed>
      <filename>test/rails/test_helper.rb</filename>
    </removed>
    <removed>
      <filename>test/rails/test_preamble.rb</filename>
    </removed>
    <removed>
      <filename>test/rails_test.rb</filename>
    </removed>
    <removed>
      <filename>test/test_markaby.rb</filename>
    </removed>
    <removed>
      <filename>tools/rakehelp.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>7a96a7c58f673613cc008f6b96fd191631f261e1</id>
    </parent>
  </parents>
  <author>
    <name>Daniel Insley</name>
    <email>dan@viviti.com</email>
  </author>
  <url>http://github.com/dinsley/markaby/commit/0ad0ca7aa21462fe8777f19ec4bd9484256c1172</url>
  <id>0ad0ca7aa21462fe8777f19ec4bd9484256c1172</id>
  <committed-date>2009-04-24T10:06:37-07:00</committed-date>
  <authored-date>2009-04-24T10:06:37-07:00</authored-date>
  <message>cleaned up the gem and added some specs for a double form problem thats happening</message>
  <tree>6e8ea9355b1bbe41f641f7b0c15ebc58d175e3bb</tree>
  <committer>
    <name>Daniel Insley</name>
    <email>dan@viviti.com</email>
  </committer>
</commit>
