Don't wrap blame <li> in a <pre>, so we can reenable prettify

We were already setting the font to match the <pre> section on the
RHS, so this is unnecessary. This alleviates most of the performance
hit associated with running prettify in blame, so turn that back on.

Include line numbers even when we haven't auto-detected the language,
addressing Issue 45.

Change-Id: I9f1b96b593bc510e882ddf4fd5de406f5409a2be
diff --git a/gitiles-servlet/src/main/resources/com/google/gitiles/static/gitiles.css b/gitiles-servlet/src/main/resources/com/google/gitiles/static/gitiles.css
index 19668ce..f99a26e 100644
--- a/gitiles-servlet/src/main/resources/com/google/gitiles/static/gitiles.css
+++ b/gitiles-servlet/src/main/resources/com/google/gitiles/static/gitiles.css
@@ -343,10 +343,12 @@
   padding: 0;
 }
 #regions {
-  padding-top: 0px;
+  padding-top: 2px;
   padding-right: 2px;
   padding-bottom: 5px;
   padding-left: 2px;
+  white-space: nowrap;
+  list-style-type: none;
 
   /* Matching pre.git-blob below. */
   font-family: monospace;
diff --git a/gitiles-servlet/src/main/resources/com/google/gitiles/templates/BlameDetail.soy b/gitiles-servlet/src/main/resources/com/google/gitiles/templates/BlameDetail.soy
index 52486cf..ce9135e 100644
--- a/gitiles-servlet/src/main/resources/com/google/gitiles/templates/BlameDetail.soy
+++ b/gitiles-servlet/src/main/resources/com/google/gitiles/templates/BlameDetail.soy
@@ -48,35 +48,27 @@
   <table id="blame">
     <tr>
       <td>
-        <pre id="regions">
-          <ul>
-            {foreach $region in $regions}
-              <li>
-                {if $region.abbrevSha}
-                  <a href="{$region.url}">
-                    <span class="sha1">{$region.abbrevSha}</span>
-                    {sp}<span class="author">{$region.author.name}</span>
-                    {sp}<span class="time">- {$region.author.relativeTime}</span>
-                  </a>
-                {else}
-                  &nbsp;
-                {/if}
-              </li>
-              {for $i in range($region.count - 1)}
-                <li>&nbsp;</li>
-              {/for}
-            {/foreach}
-          </ul>
-        </pre>
+        <ul id="regions">
+          {foreach $region in $regions}
+            <li>
+              {if $region.abbrevSha}
+                <a href="{$region.url}" class="commit">
+                  <span class="sha1">{$region.abbrevSha}</span>
+                  {sp}<span class="author">{$region.author.name}</span>
+                  {sp}<span class="time">- {$region.author.relativeTime}</span>
+                </a>
+              {else}
+                &nbsp;
+              {/if}
+            </li>
+            {for $i in range($region.count - 1)}
+              <li>&nbsp;</li>
+            {/for}
+          {/foreach}
+        </ul>
       </td>
       <td>
-        {call .blobBox}
-          {param data: $data.data /}
-          {param size: $data.size /}
-          // No pretty printing; line spacing is different with/without, and
-          // JS rendering is a performance pain point.
-          {param lang: null /}
-        {/call}
+        {call .blobBox data="$data" /}
       </td>
     </tr>
   </table>
diff --git a/gitiles-servlet/src/main/resources/com/google/gitiles/templates/ObjectDetail.soy b/gitiles-servlet/src/main/resources/com/google/gitiles/templates/ObjectDetail.soy
index 78ea913..c6ca22e 100644
--- a/gitiles-servlet/src/main/resources/com/google/gitiles/templates/ObjectDetail.soy
+++ b/gitiles-servlet/src/main/resources/com/google/gitiles/templates/ObjectDetail.soy
@@ -234,10 +234,10 @@
 {template .blobBox}
   {if $data != null}
     {if $data}
-      {if $lang != null}
+      {if $lang}
         <pre class="git-blob prettyprint linenums lang-{$lang}">{$data}</pre>
       {else}
-        <pre class="git-blob">{$data}</pre>
+        <pre class="git-blob prettyprint linenums">{$data}</pre>
       {/if}
     {else}
       <div class="file-empty">Empty file</div>