<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>extensions.rb</filename>
    </added>
    <added>
      <filename>page.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1 +1,2 @@
 *.log
+.DS_Store
\ No newline at end of file</diff>
      <filename>.gitignore</filename>
    </modified>
    <modified>
      <diff>@@ -2,4 +2,5 @@ Originally by Simon Rozet (http://atonie.org/2008/02/git-wiki)
 
 Modified by:
  - Alex Payne (http://www.al3x.net)
- - Jesse Andrews (http://www.overstimulate.com)
\ No newline at end of file
+ - Jesse Andrews (http://www.overstimulate.com)
+ - Timoni Grone (http://www.timoni.org) - stylesheet and design aid
\ No newline at end of file</diff>
      <filename>AUTHORS</filename>
    </modified>
    <modified>
      <diff>@@ -1,56 +1,113 @@
+/* elements */
+
 body {
-  font-family: Verdana, Arial, &quot;Bitstream Vera Sans&quot;, Helvetica, sans-serif;
-  font-size: 14px;
-  color: black;
-  line-height: 160%;
-  background-color: white;
+  background-color: #fff;
+  color: #333;
+  font-family: Helvetica, Arial, &quot;Deja Vu Sans&quot;, &quot;Bitstream Vera Sans&quot;, sans-serif;
+  font-size: .95em;
+  line-height: 1.6em;
   margin: 2em;
 }
 
-#navigation {
+a { 
+  color: #6d7fa3;
+  text-decoration: none;
+}
+a:visited { color: #7b69b0; }
+a:hover { text-decoration: underline; }
+
+code, pre, .delta {
+  font-family: &quot;Deja Vu Sans Mono&quot;, &quot;Bitstream Vera Sans Mono&quot;, &quot;Inconsolata&quot;, &quot;Consolas&quot;, monospace;
+}
+
+h1 {
+  color: #333;
+  font-size: 3.5em;
+  margin: 24px 0 8px 0;
+}
+
+textarea {
+  border: 1px solid #ccc;
+  font-family: &quot;Deja Vu Sans Mono&quot;, &quot;Bitstream Vera Sans Mono&quot;, &quot;Inconsolata&quot;, &quot;Consolas&quot;, monospace;
+  font-size: .9em;
   padding: 5px;
-  border-bottom: 1px black solid;
 }
 
-#navigation a {
-  background-color: #e0e0e0;
-  color: black;
+ul {
+  list-style-type: square;
+  padding: 0;
+}
+
+/* classes */
+
+.cancel {
+  font-weight: normal;
   text-decoration: none;
-  padding: 2px;
+  font-size: 14px;
 }
+.cancel:before { content: &quot;(&quot;; }
+.cancel:after { content: &quot;)&quot; }
 
-h1 {
-  display: block;
-  padding-bottom: 5px;
+.clearer { clear: both; }
+
+.content {
+  margin-left: 35%;
+  margin-top: -.55em;
+  padding: 0 10px 2px 10px;
 }
 
-a { color: black }
+.delta {
+  font-size: 1.1em;
+  padding: 0;
+}
 
-em {
-  font-size: 0.8em;
+.nav_link, .nav_link:visited {
+  display: inline;
+  padding: 3px;
+  color: #666;
 }
 
+.nav_link:hover {
+  background-color: #d1ccdb;
+  color: #333;
+  text-decoration: none;
+}
+
+.nav_list, #footer {
+  border-top: 1px solid #ccc;
+  border-bottom: 1px solid #ccc;
+  list-style-type: none;
+  padding: 4px;
+  text-align: right;
+}
+
+.nav_list li {
+  display: inline;
+  padding-right: 10px;
+}
+
+.right { text-align: right; }
+
 .submit {
   font-size: large;
   font-weight: bold;
 }
 
-.page_title { font-size: xx-large; } 
+.sub_nav { float: left; }
 
-.edit_link {
-  color: black;
-  font-size: 14px;
-  font-weight: bold;
-  background-color: #e0e0e0;
-  font-variant: small-caps;
-  text-decoration: none;
+/* ids */
+
+#container {
+ clear: both;
+ margin: auto;
+ width: 70%;
 }
 
-.cancel {
-  background-color: #e0e0e0;
-  font-weight: normal;
-  text-decoration: none;
-  font-size: 14px;
+#edit_textarea {
+  height: 35em;
+  margin-top: 1.5em;
+  width: 100%;
 }
-.cancel:before { content: &quot;(&quot;; }
-.cancel:after { content: &quot;)&quot; }
\ No newline at end of file
+
+#footer a, #footer a:visited { color: #666; }
+</diff>
      <filename>css/style.css</filename>
    </modified>
    <modified>
      <diff>@@ -8,10 +8,13 @@
   end
 end
 
+require 'page'
+require 'extensions'
+
 GIT_REPO = ARGV[1] || ENV['HOME'] + '/wiki'
 GIT_DIR  = File.join(GIT_REPO, '.git')
 HOMEPAGE = 'Home'
-UV_THEME = 'twilight'
+UV_THEME = 'idle'
 
 unless File.exists?(GIT_DIR) &amp;&amp; File.directory?(GIT_DIR)
   FileUtils.mkdir_p(GIT_DIR)
@@ -21,63 +24,11 @@ end
 
 $repo = Grit::Repo.new(GIT_REPO)
 
-class String
-  def wiki_linked
-    self.gsub!(/\b((?:[A-Z]\w+){2,})/) { |m| &quot;&lt;a href=\&quot;/e/#{m}\&quot;&gt;#{m}&lt;/a&gt;&quot; }
-    self
-  end
-end
-
-class Page
-  attr_reader :name
-
-  def initialize(name)
-    @name = name
-    @filename = File.join(GIT_REPO, @name)
-  end
-
-  def body
-    @body ||= RedCloth.new(RubyPants.new(raw_body).to_html).to_html.wiki_linked
-  end
-
-  def raw_body
-    @raw_body ||= File.exists?(@filename) ? File.read(@filename) : ''
-  end
-
-  def body=(content)
-    File.open(@filename, 'w') { |f| f &lt;&lt; content }
-    message = tracked? ? &quot;Edited #{@name}&quot; : &quot;Created #{@name}&quot;
-    `cd #{GIT_REPO} &amp;&amp; git add #{@name} &amp;&amp; git commit -m &quot;#{message}&quot;`
-  end
-
-  def tracked?
-    return false if $repo.commits.empty?
-    $repo.commits.first.tree.contents.map { |b| b.name }.include?(@name)
-  end
-
-  def history
-    return nil unless tracked?
-    $repo.log('master', @name)
-  end
-
-  def delta(rev)
-    $repo.diff($repo.commit(rev).parents.first, rev, @name)
-  end
-
-  def version(rev)
-    ($repo.tree(rev)/@name).data
-  end
-
-  def to_s
-    &quot;&lt;li&gt;&lt;strong&gt;&lt;a href='/#{@name}'&gt;#{@name}&lt;/a&gt;&lt;/strong&gt; &#8212; &lt;a href='/e/#{@name}'&gt;edit&lt;/a&gt;&lt;/li&gt;&quot;
-  end
-end
-
 layout { File.read('views/layout.erb') }
 
 def show(template, title)
   @title = title
-  erb template
+  erb(template)
 end
 
 get('/') { redirect '/' + HOMEPAGE }</diff>
      <filename>git-wiki.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,12 @@
 &lt;h1&gt;Diff of &lt;a href=&quot;/&lt;%= @page.name %&gt;&quot;&gt;&lt;%= @page.name %&gt;&lt;/a&gt;&lt;/h1&gt;
-&lt;%= 
-  diff = @page.delta(params[:rev])
-  Uv.parse(diff, &quot;xhtml&quot;, &quot;diff&quot;, true, UV_THEME)
-%&gt;
+
+&lt;div class=&quot;sub_nav&quot;&gt;
+  &lt;a href=&quot;/h/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;history&lt;/a&gt; &amp;bull;
+  &lt;a href=&quot;/e/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;edit&lt;/a&gt; 
+&lt;/div&gt;
+
+&lt;div class=&quot;content&quot;&gt;
+  &lt;div class=&quot;delta&quot;&gt;
+    &lt;%= Uv.parse(@page.delta(params[:rev]), &quot;xhtml&quot;, &quot;diff&quot;, true, UV_THEME) %&gt;
+  &lt;/div&gt;
+&lt;/div&gt;</diff>
      <filename>views/delta.erb</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,15 @@
-&lt;h1&gt;Editing &lt;%= @page.name %&gt;&lt;/h1&gt;
-&lt;a href=&quot;javascript:history.back();&quot; class=&quot;cancel&quot;&gt;Cancel&lt;/a&gt;
-&lt;form method=&quot;post&quot; action=&quot;/e/&lt;%= params[:page] %&gt;&quot;&gt;
-  &lt;p&gt;
-    &lt;textarea name=&quot;body&quot; rows=&quot;25&quot; cols=&quot;130&quot;&gt;&lt;%= @page.raw_body %&gt;&lt;/textarea&gt;
-  &lt;/p&gt;
-  &lt;p&gt;&lt;input type=&quot;submit&quot; value=&quot;Save as the newest version&quot; class=&quot;submit&quot; /&gt;&lt;/p&gt;
-&lt;/form&gt;
+&lt;h1&gt;Editing &lt;a href=&quot;/&lt;%= @page.name %&gt;&quot;&gt;&lt;%= @page.name %&gt;&lt;/a&gt;&lt;/h1&gt;
+
+&lt;div class=&quot;sub_nav&quot;&gt;
+  &lt;a href=&quot;/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;back&lt;/a&gt; &amp;bull;
+  &lt;a href=&quot;/h/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;history&lt;/a&gt; 
+&lt;/div&gt;
+
+&lt;div class=&quot;content&quot;&gt;
+  &lt;form method=&quot;post&quot; action=&quot;/e/&lt;%= params[:page] %&gt;&quot;&gt;
+    &lt;textarea name=&quot;body&quot; id=&quot;edit_textarea&quot;&gt;&lt;%= @page.raw_body %&gt;&lt;/textarea&gt;
+    &lt;p class=&quot;right&quot;&gt;&lt;input type=&quot;submit&quot; value=&quot;Save&quot; class=&quot;submit&quot; /&gt;&lt;/p&gt;
+  &lt;/form&gt;
+&lt;/div&gt;
+
+&lt;div class=&quot;clearer&quot;&gt;&lt;/div&gt;</diff>
      <filename>views/edit.erb</filename>
    </modified>
    <modified>
      <diff>@@ -1,12 +1,20 @@
-&lt;h1&gt;History of &lt;a href=&quot;/&lt;%= @page.name %&gt;&quot;&gt;&lt;%= @page.name %&gt;&lt;/a&gt;&lt;/h1&gt;
-&lt;ul&gt;
-  &lt;% @page.history.each do |c| %&gt;
-    &lt;li&gt;
-      &lt;em&gt;&lt;%= c.committed_date %&gt;&lt;/em&gt;
-      &lt;a href=&quot;/h/&lt;%= @page.name %&gt;/&lt;%= c.id %&gt;&quot;&gt;&lt;%= c.message %&gt;&lt;/a&gt;
-      &lt;% unless c.parents.empty? %&gt;
-        &lt;a href=&quot;/d/&lt;%= @page.name %&gt;/&lt;%= c.id %&gt;&quot;&gt;diff&lt;/a&gt;
-      &lt;% end %&gt;
-    &lt;/li&gt;
-  &lt;% end %&gt;
-&lt;/ul&gt;
+&lt;h1&gt;History / &lt;a href=&quot;/&lt;%= @page.name %&gt;&quot;&gt;&lt;%= @page.name %&gt;&lt;/a&gt;&lt;/h1&gt;
+
+&lt;div class=&quot;sub_nav&quot;&gt;
+  &lt;a href=&quot;/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;back&lt;/a&gt; &amp;bull;
+  &lt;a href=&quot;/e/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;edit&lt;/a&gt; 
+&lt;/div&gt;
+
+&lt;div class=&quot;content&quot;&gt;
+  &lt;ul&gt;
+    &lt;% @page.history.each do |c| %&gt;
+      &lt;li&gt;
+        &lt;%= c.committed_date %&gt; &amp;mdash;
+        &lt;a href=&quot;/h/&lt;%= @page.name %&gt;/&lt;%= c.id %&gt;&quot;&gt;&lt;%= c.message %&gt;&lt;/a&gt;
+        &lt;% unless c.parents.empty? %&gt;
+         &amp;bull; &lt;a href=&quot;/d/&lt;%= @page.name %&gt;/&lt;%= c.id %&gt;&quot;&gt;diff&lt;/a&gt;
+        &lt;% end %&gt;
+      &lt;/li&gt;
+    &lt;% end %&gt;
+  &lt;/ul&gt;
+&lt;/div&gt;</diff>
      <filename>views/history.erb</filename>
    </modified>
    <modified>
      <diff>@@ -6,10 +6,15 @@
     &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
   &lt;/head&gt;
   &lt;body&gt;
-    &lt;div id=&quot;navigation&quot;&gt;
-      &lt;a href=&quot;/&quot;&gt;Home&lt;/a&gt;
-      &lt;a href=&quot;/_list&quot;&gt;List&lt;/a&gt;
+    &lt;div id=&quot;container&quot;&gt;
+      &lt;ul class=&quot;nav_list&quot; id=&quot;top_nav&quot;&gt;
+        &lt;li&gt;&lt;a href=&quot;/&quot; class=&quot;nav_link&quot;&gt;home&lt;/a&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;a href=&quot;/_list&quot; class=&quot;nav_link&quot;&gt;pages&lt;/a&gt;&lt;/li&gt;
+      &lt;/ul&gt;
+      &lt;%= yield %&gt;
+      &lt;div id=&quot;footer&quot;&gt;
+        powered by &lt;a href=&quot;http://github.com/sr/git-wiki/network&quot;&gt;git-wiki&lt;/a&gt;
+      &lt;/div&gt;
     &lt;/div&gt;
-    &lt;%= yield %&gt;
   &lt;/body&gt;
 &lt;/html&gt;</diff>
      <filename>views/layout.erb</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,17 @@
 &lt;% if @pages.empty? %&gt;
-  &lt;p&gt;No pages found.&lt;/p&gt;
+  &lt;h1&gt;No pages yet&lt;/h1&gt;
 &lt;% else %&gt;
   &lt;h1&gt;All pages&lt;/h1&gt;
-  &lt;ul&gt;
-    &lt;% @pages.each do |page| %&gt;
-      &lt;%= page.to_s %&gt;
-    &lt;% end %&gt;
-  &lt;/ul&gt;
+  
+  &lt;div class=&quot;content&quot;&gt;
+    &lt;ul&gt;
+      &lt;% @pages.each do |page| %&gt;
+        &lt;li&gt;
+          &lt;strong&gt;&lt;a href=&quot;/&lt;%= page.name %&gt;&quot;&gt;&lt;%= page.name %&gt;&lt;/a&gt;&lt;/strong&gt; &amp;mdash; 
+          &lt;a href=&quot;/e/&lt;%= page.name %&gt;&quot;&gt;edit&lt;/a&gt; &amp;bull;
+          &lt;a href=&quot;/h/&lt;%= page.name %&gt;&quot;&gt;history&lt;/a&gt;
+        &lt;/li&gt;  
+      &lt;% end %&gt;
+    &lt;/ul&gt;
+  &lt;/div&gt;
 &lt;% end %&gt;</diff>
      <filename>views/list.erb</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,10 @@
-&lt;a href=&quot;/e/&lt;%= @page.name %&gt;&quot; class=&quot;edit_link&quot;&gt;edit this page&lt;/a&gt;
-&lt;a href=&quot;/h/&lt;%= @page.name %&gt;&quot; class=&quot;edit_link&quot;&gt;history of this page&lt;/a&gt;
-&lt;h1 class=&quot;page_title&quot;&gt;&lt;%= @page.name %&gt;&lt;/h1&gt;
-&lt;div id=&quot;page_content&quot;&gt;&lt;%= @page.body %&gt;&lt;/div&gt;  
+&lt;h1&gt;&lt;%= @page.name %&gt;&lt;/h1&gt;
+
+&lt;div class=&quot;sub_nav&quot;&gt;
+  &lt;a href=&quot;/e/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;edit&lt;/a&gt; &amp;bull;
+  &lt;a href=&quot;/h/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;history&lt;/a&gt;
+&lt;/div&gt;
+
+&lt;div class=&quot;content&quot;&gt;
+  &lt;%= @page.body %&gt;
+&lt;/div&gt;</diff>
      <filename>views/show.erb</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,10 @@
-&lt;a href=&quot;/e/&lt;%= @page.name %&gt;&quot; class=&quot;edit_link&quot;&gt;edit this page&lt;/a&gt;
-&lt;a href=&quot;/h/&lt;%= @page.name %&gt;&quot; class=&quot;edit_link&quot;&gt;history of page&lt;/a&gt;
 &lt;h1 class=&quot;page_title&quot;&gt;&lt;%= @page.name %&gt;&lt;/h1&gt;
-&lt;div id=&quot;page_content&quot;&gt;&lt;%= @page.version(params[:rev]) %&gt;&lt;/div&gt;
+
+&lt;div class=&quot;sub_nav&quot;&gt;
+  &lt;a href=&quot;/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;current&lt;/a&gt; &amp;bull;
+  &lt;a href=&quot;/h/&lt;%= @page.name %&gt;&quot; class=&quot;nav_link&quot;&gt;history&lt;/a&gt;
+&lt;/div&gt;
+
+&lt;div class=&quot;content&quot;&gt;
+  &lt;%= @page.version(params[:rev]) %&gt;
+&lt;/div&gt;</diff>
      <filename>views/version.erb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>66bacb826219bc5bb913cb29d94e20da7c3fb23c</id>
    </parent>
  </parents>
  <author>
    <name>Alex Payne</name>
    <email>al3x@brie.local</email>
  </author>
  <url>http://github.com/al3x/git-wiki/commit/fbe2a733eda74a83559435ab0be0b43935fcdbcf</url>
  <id>fbe2a733eda74a83559435ab0be0b43935fcdbcf</id>
  <committed-date>2008-02-21T23:08:55-08:00</committed-date>
  <authored-date>2008-02-21T23:08:55-08:00</authored-date>
  <message>hella better style, move page and extensions out to their own files, doc additions</message>
  <tree>46b16e976d8984e1cc1b185301e085683cfe1b9a</tree>
  <committer>
    <name>Alex Payne</name>
    <email>al3x@brie.local</email>
  </committer>
</commit>
