Commits

Oben Sonne committed a0162e1

Site update

  • Participants
  • Parent commits 790acf9

Comments (0)

Files changed (13)

   <div class="clear"> </div>
   <div id="content" class="prefix_2 grid_8 suffix_2">
     <div class="wrap">
-      <img alt="%s" class="right" src="http://obensonne.bitbucket.org/images/obs.png" />
-
+      <p><img alt="%s" class="right" src="http://obensonne.bitbucket.org/images/obs.png" /></p>
 <h1>Me@</h1>
 <p><a href="http://bitbucket.org/obensonne/">BitBucket</a>, <a href="http://github.com/obensonne">GitHub</a>, <a href="https://flattr.com/profile/obs">Flattr</a>, <a href="http://stackoverflow.com/users/151299/oben-sonne">SO</a>, <a href="http://twitter.com/obensonne">Twitter</a>, <a href="http://identi.ca/obensonne">Identica</a>, <a href="http://www.ohloh.net/accounts/obsoe">Ohloh</a>, <a href="&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#116;&amp;#111;&amp;#58;&amp;#111;&amp;#98;&amp;#101;&amp;#110;&amp;#115;&amp;#111;&amp;#110;&amp;#110;&amp;#101;&amp;#64;&amp;#103;&amp;#111;&amp;#111;&amp;#103;&amp;#108;&amp;#101;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;&quot;&gt;&amp;#111;&amp;#98;&amp;#101;&amp;#110;&amp;#115;&amp;#111;&amp;#110;&amp;#110;&amp;#101;&amp;#64;&amp;#103;&amp;#111;&amp;#111;&amp;#103;&amp;#108;&amp;#101;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;">eMail</a></p>
 <h1>This site</h1>
 </a>
 </div>
 
+<p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20120510-colorized-log-output.html">Do your eyes a favor with colored log output</a> <span>May 10, 2012</span></p>
+
+<p class="post-summary">A simple solution to make log files more readable.</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20110315-what-the-merge.html">What the merge</a> <span>March 15, 2011</span></p>
+
 <p class="post-summary">Analyze merges in Mercurial to see what a colleague did with your changes</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20100130-encfs-keyring.html">Dropbox, EncFS and mounting pain</a> <span>January 30, 2010</span></p>
+
 <p class="post-summary">Painlessly mount EncFS encrypted folders with strong passwords using Gnome's keyring manager</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20091127-synchronize-files-with-mercurial.html">Automatically synchronize files with Mercurial</a> <span>November 27, 2009</span></p>
+
 <p class="post-summary">How to use Mercurial to keep files in sync across work stations</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20091122-using-a-free-css-templates-in-poole.html">Pimp your Poole site with a free CSS template</a> <span>November 22, 2009</span></p>
+
 <p class="post-summary">Tutorial for applying a free CSS template to a Poole site</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20091118-ant-property-filesets.html">Specifying Ant file sets with properties</a> <span>November 18, 2009</span></p>
+
 <p class="post-summary">How to get a file set by a comma separated list of directories in Ant</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20090915-remuco-migration.html">Remuco project migration</a> <span>September 15, 2009</span></p>
+
 <p class="post-summary">Rationale and process of Remuco's project hosting migration from SourceForge to Google Code.</p>
     </div>
   </div>

File blog/20091122-using-a-free-css-templates-in-poole.html

 <a href="http://bitbucket.org/obensonne/poole/wiki/Home">Poole</a> site. </p>
 <div style="float: right; margin: .5em 0 0 1em;">
 
-<p><a href="http://obensonne.bitbucket.org/images/poole-layout-before.fs.png"><img alt="%s" src="http://obensonne.bitbucket.org/images/poole-layout-before.png" /></a>
-<a href="http://obensonne.bitbucket.org/images/poole-layout-after.fs.png"><img alt="%s" src="http://obensonne.bitbucket.org/images/poole-layout-after.png" /></a></p>
+<a href="http://obensonne.bitbucket.org/images/poole-layout-before.fs.png"><img alt="%s" src="http://obensonne.bitbucket.org/images/poole-layout-before.png" /></a>
+<a href="http://obensonne.bitbucket.org/images/poole-layout-after.fs.png"><img alt="%s" src="http://obensonne.bitbucket.org/images/poole-layout-after.png" /></a>
+
 </div>
 
 <h2>Example template</h2>

File blog/20091127-synchronize-files-with-mercurial.html

 </ol>
 <div class="update">
 
-<p><strong>UPDATE:</strong> The content below is outdated. You should use the
-<a href="http://bitbucket.org/obensonne/hg-autosync/wiki/Home">Mercurial autosync extension</a>
-instead. (November 30, 2009)</p>
+**UPDATE:** The content below is outdated. You should use the
+[Mercurial autosync extension](http://bitbucket.org/obensonne/hg-autosync/wiki/Home)
+instead. (November 30, 2009)
+
 </div>
 
 <p>The crucial thing in automating synchronization is handling errors and

File blog/20100130-encfs-keyring.html

 without the need to enter crazy long passwords.</p>
 <div class="update">
 
-<p><strong>Update:</strong> Meanwhile I've written a script which implements the
+**Update:** Meanwhile I've written a script which implements the
 actions below more user friendly. I suggest stop reading here and jump to
-<a href="http://bitbucket.org/obensonne/gnome-encfs">gnome-encfs</a>. (February 3, 2010)</p>
+[gnome-encfs](http://bitbucket.org/obensonne/gnome-encfs). (February 3, 2010)
+
 </div>
 
 <h3>Example: Gnome keyring</h3>

File blog/20120510-colorized-log-output.html

+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <meta name="description" content="A simple solution to make log files more readable." />
+    <meta name="keywords" content="terminal, color, log output, log files" />
+    <link rel="alternate" type="application/rss+xml" href="http://obensonne.bitbucket.org/rss.xml" title="Oben Sonne" />
+    <title>Oben Sonne - blog</title>
+    <link href="http://obensonne.bitbucket.org/style/reset.css" rel="stylesheet" type="text/css" />
+    <link href="http://obensonne.bitbucket.org/style/960.css" rel="stylesheet" type="text/css" />
+    <link href="http://obensonne.bitbucket.org/style/text.css" rel="stylesheet" type="text/css" />
+    <link href="http://obensonne.bitbucket.org/style/os.css" rel="stylesheet" type="text/css" />
+    <script type="text/javascript">
+    /* <![CDATA[ */
+        (function() {
+            var s = document.createElement('script'), t = document.getElementsByTagName('script')[0];
+            s.type = 'text/javascript';
+            s.async = true;
+            s.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto';
+            t.parentNode.insertBefore(s, t);
+        })();
+    /* ]]> */
+    </script>
+</head>
+<body>
+<div id="wrap" class="container_12">
+  <div id="header" class="prefix_2 grid_3">
+    <h1><a class="plain" href="http://obensonne.bitbucket.org/index.html">Oben Sonne</a></h1>
+  </div>
+  <div id="menu" class="grid_5 suffix_2">
+<ul class="">
+<li class=""><a href="http://obensonne.bitbucket.org/index.html">home</a></li>
+<li class="current"><a href="http://obensonne.bitbucket.org/blog.html">blog</a></li>
+<li class=""><a href="http://obensonne.bitbucket.org/projects.html">projects</a></li>
+<li class=""><a href="http://obensonne.bitbucket.org/about.html">about</a></li>
+</ul>
+  </div>
+  <div class="clear"> </div>
+  <div id="content" class="prefix_2 grid_8 suffix_2">
+    <div class="wrap">
+      <h1 class="post-title">Do your eyes a favor with colored log output</h1>
+
+<p class="post-date">Posted on May 10, 2012</p>
+
+<p><em>A simple solution to make log files more readable.</em></p>
+<h2><code>cat messy.log</code></h2>
+<p><a href="http://obensonne.bitbucket.org/images/colog-before.fs.png"><img alt="%s" src="http://obensonne.bitbucket.org/images/colog-before.png" /></a></p>
+<h2><code>cat messy.log | colog</code></h2>
+<p><a href="http://obensonne.bitbucket.org/images/colog-after.fs.png"><img alt="%s" src="http://obensonne.bitbucket.org/images/colog-after.png" /></a></p>
+<h2><code>colog</code> ..</h2>
+<p>.. is a simple Python script, ready for your customization:</p>
+<script src="https://gist.github.com/2629510.js?file=colog.py"></script>
+
+<p>Adjust it to your needs and save it as <code>colog</code> (or any other name you like)
+somewhere in your path. Probably you want to tune the pattern matching and
+color codes.</p>
+<h2>Examples</h2>
+<h3>Watch log output from running programs</h3>
+<pre><code>$ a-very-verbose-program 2&gt;&amp;1 | python colog.py
+</code></pre>
+<h3>Watch a log file with <code>tail</code></h3>
+<pre><code>$ tail -f /path/to/some/logfile | python colog.py
+</code></pre>
+<h3>Read a log file colored in <code>less</code></h3>
+<pre><code>$ cat /path/to/some/logfile | python colog.py | less -FRS
+</code></pre>
+<h2>Need more?</h2>
+<p>If this simple solution does not solve your log file reading problems, have a
+try with a more powerful tool like <a href="http://www.vanheusden.com/multitail/">MultiTail</a>.</p>
+<p><a class="FlattrButton" style="display:none;" rev="flattr;button:compact;"
+href="http://obensonne.bitbucket.org/blog.html"></a>
+<g:plusone size="medium"></g:plusone>
+<hr/>
+<h2>Comments</h2>
+<div id="disqus_thread"></div>
+<script type="text/javascript" src="http://disqus.com/forums/obensonne/embed.js"></script>
+<noscript>
+  <p><a href="http://disqus.com/forums/obensonne/?url=ref">View the discussion thread.</a></p>
+</noscript>
+<a href="http://disqus.com" class="dsq-brlink">blog comments powered by <span class="logo-disqus">Disqus</span></a></p>
+    </div>
+  </div>
+  <div id="footer" class="prefix_2 grid_8 suffix_2">
+    A site by <a href="http://obensonne.bitbucket.org/">Oben Sonne</a>
+    &middot;
+    Licensed as <a href="http://creativecommons.org/licenses/by-sa/3.0">CC-by-SA</a>
+    &middot;
+    Built with <a href="http://bitbucket.org/obensonne/poole">Poole</a>
+    &middot;
+    <a href="http://validator.w3.org/check?uri=referer">Validate me</a>
+  </div>
+  <div class="clear"></div>
+</div>
+
+<!-- analytics -->
+<script type="text/javascript">
+var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
+document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
+</script>
+<script type="text/javascript">
+try {
+var pageTracker = _gat._getTracker("UA-10517530-5");
+pageTracker._trackPageview();
+} catch(err) {}</script>
+<!-- end: analytics -->
+<!-- plusone -->
+<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>
+<!-- end: plusone -->
+<!-- disqus -->
+<script type="text/javascript">
+//<![CDATA[
+(function() {
+    var links = document.getElementsByTagName('a');
+    var query = '?';
+    for(var i = 0; i < links.length; i++) {
+    if(links[i].href.indexOf('#disqus_thread') >= 0) {
+        query += 'url' + i + '=' + encodeURIComponent(links[i].href) + '&';
+    }
+    }
+    document.write('<script charset="utf-8" type="text/javascript" src="http://disqus.com/forums/obensonne/get_num_replies.js' + query + '"></' + 'script>');
+})();
+//]]>
+</script>
+<!-- end: disqus -->
+</body>
+</html>

File images/colog-after.fs.png

Added
New image

File images/colog-after.png

Added
New image

File images/colog-before.fs.png

Added
New image

File images/colog-before.png

Added
New image
 </div>
 
 <h2>Latest blog posts</h2>
+<p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20120510-colorized-log-output.html">Do your eyes a favor with colored log output</a> <span>May 10, 2012</span></p>
+
+<p class="post-summary">A simple solution to make log files more readable.</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20110315-what-the-merge.html">What the merge</a> <span>March 15, 2011</span></p>
+
 <p class="post-summary">Analyze merges in Mercurial to see what a colleague did with your changes</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20100130-encfs-keyring.html">Dropbox, EncFS and mounting pain</a> <span>January 30, 2010</span></p>
+
 <p class="post-summary">Painlessly mount EncFS encrypted folders with strong passwords using Gnome's keyring manager</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20091127-synchronize-files-with-mercurial.html">Automatically synchronize files with Mercurial</a> <span>November 27, 2009</span></p>
+
 <p class="post-summary">How to use Mercurial to keep files in sync across work stations</p>
+
 <p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20091122-using-a-free-css-templates-in-poole.html">Pimp your Poole site with a free CSS template</a> <span>November 22, 2009</span></p>
+
 <p class="post-summary">Tutorial for applying a free CSS template to a Poole site</p>
-<p class="post-title"><a href="http://obensonne.bitbucket.org/blog/20091118-ant-property-filesets.html">Specifying Ant file sets with properties</a> <span>November 18, 2009</span></p>
-<p class="post-summary">How to get a file set by a comma separated list of directories in Ant</p>
     </div>
   </div>
   <div id="footer" class="prefix_2 grid_8 suffix_2">
 <link>http://obensonne.bitbucket.org/blog.html</link>
 <description>My name is dragonforce. You killed my dragons. Prepare to scream.</description>
 <language>en-us</language>
-<pubDate>Wed, 29 Jun 2011 20:46:39 -0000</pubDate>
-<lastBuildDate>Wed, 29 Jun 2011 20:46:39 -0000</lastBuildDate>
+<pubDate>Thu, 10 May 2012 16:01:17 -0000</pubDate>
+<lastBuildDate>Thu, 10 May 2012 16:01:17 -0000</lastBuildDate>
 <docs>http://blogs.law.harvard.edu/tech/rss</docs>
 <generator>Poole</generator>
 
 <item>
+    <title>Do your eyes a favor with colored log output</title>
+    <link>http://obensonne.bitbucket.org/blog/20120510-colorized-log-output.html</link>
+    <description>A simple solution to make log files more readable.</description>
+    <pubDate>Thu, 10 May 2012 10:00:00 -0000</pubDate>
+    <guid>http://obensonne.bitbucket.org/blog/20120510-colorized-log-output.html</guid>
+</item>
+
+<item>
     <title>What the merge</title>
     <link>http://obensonne.bitbucket.org/blog/20110315-what-the-merge.html</link>
     <description>Analyze merges in Mercurial to see what a colleague did with your changes</description>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.8</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/projects.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.9</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/about.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.2</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/index.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>1.0</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog/20110127-python-not-all-strings.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.0</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog/20090915-remuco-migration.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.8</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog/20100130-encfs-keyring.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.8</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog/20091118-ant-property-filesets.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.8</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog/20110315-what-the-merge.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
+    <changefreq>monthly</changefreq>
+    <priority>0.8</priority>
+</url>
+
+<url>
+    <loc>http://obensonne.bitbucket.org/blog/20120510-colorized-log-output.html</loc>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.8</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog/20091122-using-a-free-css-templates-in-poole.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.8</priority>
 </url>
 
 <url>
     <loc>http://obensonne.bitbucket.org/blog/20091127-synchronize-files-with-mercurial.html</loc>
-    <lastmod>2011-06-29</lastmod>
+    <lastmod>2012-05-10</lastmod>
     <changefreq>monthly</changefreq>
     <priority>0.8</priority>
 </url>