<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/invisible/helpers.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,2 +1,3 @@
 *.cache
-*.log
\ No newline at end of file
+*.log
+*.gem
\ No newline at end of file</diff>
      <filename>.gitignore</filename>
    </modified>
    <modified>
      <diff>@@ -12,6 +12,8 @@
   &lt;script type=&quot;text/javascript&quot; src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.js&quot; /&gt;
 &lt;/head&gt;
 &lt;body&gt;
-  &lt;%= @content %&gt;
+  &lt;div class=&quot;container&quot;&gt;
+    &lt;%= @content %&gt;
+  &lt;/div&gt;
 &lt;/body&gt;
 &lt;/html&gt;
\ No newline at end of file</diff>
      <filename>app_generators/invisible/templates/views/layout.erb</filename>
    </modified>
    <modified>
      <diff>@@ -15,6 +15,6 @@ Gem::Specification.new do |s|
   s.extra_rdoc_files = [&quot;README&quot;]
   
   # Dependencies
-  s.add_dependency(&quot;rack&quot;,    [&quot;&gt; 0.4.0&quot;])
-  s.add_dependency(&quot;markaby&quot;, [&quot;&gt; 0.5&quot;])
+  s.add_dependency(&quot;rack&quot;,    [&quot;&gt;= 0.4.0&quot;])
+  s.add_dependency(&quot;markaby&quot;, [&quot;&gt;= 0.5&quot;])
 end
\ No newline at end of file</diff>
      <filename>invisible.gemspec</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,4 @@
-%w(rubygems time rack markaby invisible/core_ext).each { |f| require f }
+%w(rubygems time rack markaby invisible/core_ext invisible/helpers).each { |f| require f }
 # = The Invisible Framework
 # Invisible is like a giant robot combining the awesomeness of Rails,
 # Merb, Camping and Sinatra. Except, it's tiny (100 sloc).
@@ -95,8 +95,8 @@ class Invisible
     @response.status = options.delete(:status) || 200
     
     # Render inside the layout
-    @content = args.last.is_a?(String) ? args.last : Markaby::Builder.new({}, self, &amp;(block || @views[args.last])).to_s
-    @content = Markaby::Builder.new({}, self, &amp;layout).to_s if layout
+    @content = args.last.is_a?(String) ? args.last : mab(&amp;(block || @views[args.last]))
+    @content = mab(&amp;layout).to_s if layout
     
     # Set headers
     @response.headers.merge!(options)
@@ -129,6 +129,11 @@ class Invisible
     @views[name] = block
   end
   
+  # Return HTML rendered by evaluating the block using Markaby.
+  def mab(&amp;block)
+    Markaby::Builder.new({}, self, &amp;block).to_s
+  end
+  
   # Return the current session.
   # Add `use Rack::Session::Cookie` to use.
   def session</diff>
      <filename>lib/invisible.rb</filename>
    </modified>
    <modified>
      <diff>@@ -16,6 +16,12 @@ describe &quot;params&quot; do
           help_me
         end
       end
+      
+      get &quot;/link_to&quot; do
+        render do
+          link_to &quot;ohaie&quot;, &quot;/&quot;
+        end
+      end
     end
   end
   
@@ -32,4 +38,8 @@ describe &quot;params&quot; do
     app = Invisible.new {}
     app.should_not respond_to(:help_me)
   end
+  
+  it &quot;should use link_to helper in markaby&quot; do
+    @app.mock.get(&quot;/link_to&quot;).body.should == '&lt;a href=&quot;/&quot;&gt;ohaie&lt;/a&gt;'
+  end
 end
\ No newline at end of file</diff>
      <filename>spec/helpers_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>685d55c3b1085c514e5130327415c1213febc835</id>
    </parent>
  </parents>
  <author>
    <name>macournoyer</name>
    <email>macournoyer@gmail.com</email>
  </author>
  <url>http://github.com/macournoyer/invisible/commit/5062b70c117ab9e37c9c8514237193c5a28ba23c</url>
  <id>5062b70c117ab9e37c9c8514237193c5a28ba23c</id>
  <committed-date>2008-11-09T20:17:27-08:00</committed-date>
  <authored-date>2008-11-09T20:17:27-08:00</authored-date>
  <message>Add link_to &amp; mab helpers.</message>
  <tree>4d8a607ecf51838b8e66a7d31a1cb435c3f6078c</tree>
  <committer>
    <name>macournoyer</name>
    <email>macournoyer@gmail.com</email>
  </committer>
</commit>
