<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tyler Weir &#187; lift</title>
	<atom:link href="http://www.praytothemachine.com/evil/tag/lift/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.praytothemachine.com/evil</link>
	<description>If it don&#039;t make dollars, then it don&#039;t make sense...</description>
	<lastBuildDate>Mon, 23 Jan 2012 16:13:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>I wrote a friggin book:  &#8230;</title>
		<link>http://www.praytothemachine.com/evil/2009/07/06/i-wrote-a-friggin-book/</link>
		<comments>http://www.praytothemachine.com/evil/2009/07/06/i-wrote-a-friggin-book/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 17:50:03 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[LiftWeb]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/2009/07/06/i-wrote-a-friggin-book/</guid>
		<description><![CDATA[I wrote a friggin book:]]></description>
			<content:encoded><![CDATA[<p>I wrote a friggin book:</p>
<p><a href="http://www.flickr.com/photos/tylerweir/3694206711/" title="I wrote a friggin book by tylerweir, on Flickr" onclick="pageTracker._trackPageview('/outgoing/www.flickr.com/photos/tylerweir/3694206711/?referer=');"><img src="http://farm3.static.flickr.com/2558/3694206711_203311c2dc.jpg" width="500" height="375" alt="I wrote a friggin book" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2009/07/06/i-wrote-a-friggin-book/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Exploring Lift: Scala-based Web Framework</title>
		<link>http://www.praytothemachine.com/evil/2009/03/20/exploring-lift-scala-based-web-framework/</link>
		<comments>http://www.praytothemachine.com/evil/2009/03/20/exploring-lift-scala-based-web-framework/#comments</comments>
		<pubDate>Fri, 20 Mar 2009 18:54:41 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[LiftWeb]]></category>
		<category><![CDATA[Scala]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=1868</guid>
		<description><![CDATA[Lift is an exciting new framework that leverages the Scala programming language to offer an innovative approach to creating web applications. Lift provides enormous flexibility and functionality while keeping your code simple. Exploring Lift is brought to you by Derek Chen-Becker, Marius Danciu, and Tyler Weir, three committers on the Lift project. The book not [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.liftweb.net/" onclick="pageTracker._trackPageview('/outgoing/www.liftweb.net/?referer=');">Lift</a> is an exciting new framework that leverages the <a href="http://www.scala-lang.org/" onclick="pageTracker._trackPageview('/outgoing/www.scala-lang.org/?referer=');">Scala programming language</a> to offer an innovative approach to creating web applications. Lift provides enormous flexibility and functionality while keeping your code simple.</p>
<p><a href="http://www.apress.com/book/view/1430224215" onclick="pageTracker._trackPageview('/outgoing/www.apress.com/book/view/1430224215?referer=');"><b>Exploring Lift</b></a> is brought to you by Derek Chen-Becker, Marius Danciu, and Tyler Weir, three committers on the Lift project. The book not only covers the fundamentals of building a comprehensive Lift-based application, but contains multiple chapters on advanced functionality such as AJAX, Comet and custom URL rewriting. Extensive code samples are given throughout the book to demonstrate practical application, and a complete demo app is built from the ground up to reinforce the information presented.<br />
What you&#8217;ll learn:</p>
<ul>
<li>How to get a basic Lift application up and running quickly using Maven&#8217;s archetypes</li>
<li>How to generate and process forms, including file uploads</li>
<li>How to use the SiteMap framework to provide a custom site menu and programmatic access control to your application&#8217;s pages</li>
<li>Database access using Lift&#8217;s Mapper framework as well as how to integrate the Java Persistence Architecture</li>
<li>How to use custom URL rewriting and request dispatch to easily provide user-friendly URLs and powerful servlet-like functionality</li>
<li>How to easily internationalized (I18N) your application</li>
<li>And much more!</li>
</ul>
<h3>Who this book is for?</h3>
<p>Anyone interested in getting the most out of their web applications and who appreciates the power and flexibility of the Scala programming language. A basic understanding of Scala is assumed, so if you&#8217;re not familiar with it we would suggest reading <a href="http://blog.lostlake.org/" onclick="pageTracker._trackPageview('/outgoing/blog.lostlake.org/?referer=');">David Pollak&#8217;s</a> excellent book, <a href="http://apress.com/book/view/1430219890" onclick="pageTracker._trackPageview('/outgoing/apress.com/book/view/1430219890?referer=');">Beginning Scala.</a></p>
<h3>Reviews</h3>
<p>Lift was created by David Pollak, an industry veteran who has repeatedly pushed the boundaries of what is possible with programming. Here is what people are saying about Lift:</p>
<p>    &#8220;Lift is the only new framework in the last four years to offer fresh and innovative approaches to web development. It&#8217;s not just some incremental improvements over the status quo, it redefines the state of the art. If you are a web developer, you should learn Lift. Even if you don&#8217;t wind up using it everyday, it will change the way you approach web applications.&#8221;</p>
<p>—Michael Galpin, Developer, eBay</p>
<p>    &#8220;Lift is an expressive and elegant framework for writing web applications. Lift stresses the importance of security, maintainability, scalability and performance, while allowing for high levels of developer productivity.&#8221;</p>
<p>—Lee Mighdoll, CTO, Digiting, Inc.</p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2009/03/20/exploring-lift-scala-based-web-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lift 1.0 has been released!</title>
		<link>http://www.praytothemachine.com/evil/2009/02/26/lift-10-has-been-released/</link>
		<comments>http://www.praytothemachine.com/evil/2009/02/26/lift-10-has-been-released/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 20:39:34 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[LiftWeb]]></category>
		<category><![CDATA[Scala]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=1786</guid>
		<description><![CDATA[Read Dave&#8217;s announcement and check out the site. Lift is an expressive elegant web framework based on the Scala programming language and released under an an Apache 2.0 license. Lift provides developers the best way to build interactive, high performance web applications. Lift based applications are deployed as WAR files into J2EE containers such as [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://scala-blogs.org/2009/02/lift-10-released.html" onclick="pageTracker._trackPageview('/outgoing/scala-blogs.org/2009/02/lift-10-released.html?referer=');">Read Dave&#8217;s announcement</a> and <a href="http://liftweb.net/" onclick="pageTracker._trackPageview('/outgoing/liftweb.net/?referer=');">check out the site.</a></p>
<blockquote><p>
Lift is an expressive elegant web framework based on the Scala programming language and released under an an Apache 2.0 license. Lift provides developers the best way to build interactive, high performance web applications. Lift based applications are deployed as WAR files into J2EE containers such as Jetty, Tomcat, and WebLogic. Lift based applications are high performance and can make use of your existing Java libraries.</p></blockquote>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2009/02/26/lift-10-has-been-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lift Book</title>
		<link>http://www.praytothemachine.com/evil/2009/01/04/lift-book/</link>
		<comments>http://www.praytothemachine.com/evil/2009/01/04/lift-book/#comments</comments>
		<pubDate>Sun, 04 Jan 2009 20:10:09 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[Scala]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/2009/01/04/lift-book/</guid>
		<description><![CDATA[Book for the Lift Web Framework Derek, Marius and I, with the help of the community, will be putting together a comprehensive book for using Lift. We have set up a Google Group for topic discussion here: http://groups.google.com/group/the-lift-book The work will be licensed under the Creative Commons Attribution-No Derivatives found here: http://creativecommons.org/license/results-one?licensecode=by-nd Works 3.0 Unported [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://farm4.static.flickr.com/3529/3217216663_a18ef4c944.jpg?v=0" /><br />
<a href="http://github.com/tjweir/liftbook/tree/master" onclick="pageTracker._trackPageview('/outgoing/github.com/tjweir/liftbook/tree/master?referer=');">Book for the Lift Web Framework</a></p>
<p>Derek, Marius and I, with the help of the community, will be putting together a comprehensive book for using Lift.</p>
<p>We have set up a Google Group for topic discussion here: <a href="http://groups.google.com/group/the-lift-book" onclick="pageTracker._trackPageview('/outgoing/groups.google.com/group/the-lift-book?referer=');">http://groups.google.com/group/the-lift-book</a></p>
<p>The work will be licensed under the Creative Commons Attribution-No Derivatives found here: <a href="http://creativecommons.org/license/results-one?licensecode=by-nd" onclick="pageTracker._trackPageview('/outgoing/creativecommons.org/license/results-one?licensecode=by-nd&amp;referer=');">http://creativecommons.org/license/results-one?licensecode=by-nd</a>  Works 3.0 Unported License. To view a copy of this license, visit <a href="http://creativecommons.org/licenses/by-nd/3.0/" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/creativecommons.org/licenses/by-nd/3.0/?referer=');">http://creativecommons.org/licenses/by-nd/3.0/</a> or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.</p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2009/01/04/lift-book/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubiquity command to search the Lift API.</title>
		<link>http://www.praytothemachine.com/evil/2008/12/31/ubiquity-command-to-search-the-lift-api/</link>
		<comments>http://www.praytothemachine.com/evil/2008/12/31/ubiquity-command-to-search-the-lift-api/#comments</comments>
		<pubDate>Wed, 31 Dec 2008 12:54:33 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[ubiquity]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/2008/12/31/ubiquity-command-to-search-the-lift-api/</guid>
		<description><![CDATA[Ubiquity 0.1.3 came out, so I bashed together a command to search the Snapshot API. http://gist.github.com/42049 It performs a site-specific Google search of http://scala-tools.org/mvnsites-snapshots/liftweb/lift-webkit/scaladocs/ And you can learn about Ubiquity here: https://wiki.mozilla.org/Labs/Ubiquity And I jacked the code from http://jonhnny-weslley.blogspot.com/2008/09/scala-api-lookup-with-ubiquity.html Happy New Year :) Here&#8217;s the code inline:]]></description>
			<content:encoded><![CDATA[<p>Ubiquity 0.1.3 came out, so I bashed together a command to search the<br />
Snapshot API.<br />
<a href="http://gist.github.com/42049" onclick="pageTracker._trackPageview('/outgoing/gist.github.com/42049?referer=');">http://gist.github.com/42049</a></p>
<p>It performs a site-specific Google search of</p>
<p><a href="http://scala-tools.org/mvnsites-snapshots/liftweb/lift-webkit/scaladocs/" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/scala-tools.org/mvnsites-snapshots/liftweb/lift-webkit/scaladocs/?referer=');">http://scala-tools.org/mvnsites-snapshots/liftweb/lift-webkit/scaladocs/</a></p>
<p>And you can learn about Ubiquity here: <a href="https://wiki.mozilla.org/Labs/Ubiquity" onclick="pageTracker._trackPageview('/outgoing/wiki.mozilla.org/Labs/Ubiquity?referer=');">https://wiki.mozilla.org/Labs/Ubiquity</a></p>
<p>And I jacked the code from <a href="http://jonhnny-weslley.blogspot.com/2008/09/scala-api-lookup-with-ubiquity.html" onclick="pageTracker._trackPageview('/outgoing/jonhnny-weslley.blogspot.com/2008/09/scala-api-lookup-with-ubiquity.html?referer=');">http://jonhnny-weslley.blogspot.com/2008/09/scala-api-lookup-with-ubiquity.html</a></p>
<p>Happy New Year :)</p>
<p>Here&#8217;s the code inline:<br />
<script src="http://gist.github.com/42049.js"></script></p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/12/31/ubiquity-command-to-search-the-lift-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I printed out a copy to edit.</title>
		<link>http://www.praytothemachine.com/evil/2008/12/15/i-printed-out-a-copy-to-edit/</link>
		<comments>http://www.praytothemachine.com/evil/2008/12/15/i-printed-out-a-copy-to-edit/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 22:19:11 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[lift]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=1267</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/tylerweir/3111490803/" title="The Lift Book by tylerweir, on Flickr" onclick="pageTracker._trackPageview('/outgoing/www.flickr.com/photos/tylerweir/3111490803/?referer=');"><img src="http://farm4.static.flickr.com/3228/3111490803_fa68821db3.jpg" width="500" height="331" alt="The Lift Book" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/12/15/i-printed-out-a-copy-to-edit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lift and Configgy</title>
		<link>http://www.praytothemachine.com/evil/2008/11/19/lift-and-configgy/</link>
		<comments>http://www.praytothemachine.com/evil/2008/11/19/lift-and-configgy/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 15:25:00 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[configgy]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[logging]]></category>
		<category><![CDATA[Scala]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=1153</guid>
		<description><![CDATA[Robey wrote Configgy, and summarizes it as: Configgy is a library for handling config files and logging for a scala daemon. The idea is that it should be simple and straightforward, allowing you to plug it in and get started quickly, writing small useful daemons without entering the shadowy world of java frameworks. Simple and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lag.net/" onclick="pageTracker._trackPageview('/outgoing/www.lag.net/?referer=');">Robey</a> wrote <a href="http://www.lag.net/configgy/" onclick="pageTracker._trackPageview('/outgoing/www.lag.net/configgy/?referer=');">Configgy</a>, and summarizes it as:</p>
<blockquote><p>Configgy is a library for handling config files and logging for a scala daemon. The idea is that it should be simple and straightforward, allowing you to plug it in and get started quickly, writing small useful daemons without entering the shadowy world of java frameworks. </p></blockquote>
<p>Simple and straight forward indeed.  To add it to my Lift app I did the following:<br />
1. Added this to my pom.xml<br />
<code><br />
&lt;repository&gt;<br />
      &lt;id&gt;<a href="http://www.lag.net/repo/&lt;/id&gt;" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/www.lag.net/repo/_lt_/id_gt?referer=');">http://www.lag.net/repo/&lt;/id&gt;</a><br />
      &lt;name&gt;<a href="http://www.lag.net/repo/&lt;/name&gt;" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/www.lag.net/repo/_lt_/name_gt?referer=');">http://www.lag.net/repo/&lt;/name&gt;</a><br />
      &lt;url&gt;<a href="http://www.lag.net/repo/&lt;/url&gt;" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/www.lag.net/repo/_lt_/url_gt?referer=');">http://www.lag.net/repo/&lt;/url&gt;</a><br />
    &lt;/repository&gt;<br />
</code><br />
And<br />
<code>    &lt;dependency&gt;<br />
      &lt;groupid&gt;net.lag&lt;/groupid&gt;<br />
      &lt;artifactid&gt;configgy&lt;/artifactid&gt;<br />
      &lt;version&gt;1.2&lt;/version&gt;<br />
    &lt;/dependency&gt;<br />
 </code></p>
<p>2. Wrote this conf file (it&#8217;s in the same dir as the pom.xml file and so is the log directory which you&#8217;ll need permissions on)<br />
<code>&lt;log&gt;<br />
        filename = "log/pca.log"<br />
        roll = "daily"<br />
        level = "debug"<br />
&lt;/log&gt;<br />
hostname = "localhost"<br />
port = 8080<br />
</code></p>
<p>3. Added this to Boot.scala<br />
<code><br />
...<br />
import net.lag.configgy.Configgy<br />
import net.lag.logging.Logger<br />
...<br />
    Configgy.configure("pca.conf")<br />
    val log = Logger.get<br />
    log.info("Configgy up")<br />
    log.info("Bootstrap up")<br />
 </code></p>
<p>4.  And a quick test, in one of my snippets I added:<br />
<code><br />
...<br />
 import net.lag.logging.Logger<br />
...<br />
    log.info("Super Awesome Form rendered")<br />
</code><br />
5.  The output is:<br />
<code><br />
INF [20081119-14:11:15.085] liftweb: Configgy up<br />
INF [20081119-14:11:15.088] liftweb: Bootstrap up<br />
INF [20081119-14:11:22.144] snippet: Super Awesome Form rendered<br />
</code></p>
<p>Make with the nice nice.</p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/11/19/lift-and-configgy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Logo Contest for Lift</title>
		<link>http://www.praytothemachine.com/evil/2008/08/05/logo-contest-for-lift/</link>
		<comments>http://www.praytothemachine.com/evil/2008/08/05/logo-contest-for-lift/#comments</comments>
		<pubDate>Tue, 05 Aug 2008 21:09:05 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[logo]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=855</guid>
		<description><![CDATA[We kicked off a logo contest for lift. You can find it here: http://99designs.com/contests/10209]]></description>
			<content:encoded><![CDATA[<p>We kicked off a logo contest for <a href="http://www.liftweb.com/" onclick="pageTracker._trackPageview('/outgoing/www.liftweb.com/?referer=');">lift.</a></p>
<p>You can find it here: <a href="http://99designs.com/contests/10209" onclick="pageTracker._trackPageview('/outgoing/99designs.com/contests/10209?referer=');">http://99designs.com/contests/10209</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/08/05/logo-contest-for-lift/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Liftweb + ctags + vim</title>
		<link>http://www.praytothemachine.com/evil/2008/05/16/liftweb-ctags-vim/</link>
		<comments>http://www.praytothemachine.com/evil/2008/05/16/liftweb-ctags-vim/#comments</comments>
		<pubDate>Fri, 16 May 2008 14:12:09 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[ctags]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=706</guid>
		<description><![CDATA[[Updated: 2008/12/10] This is how I set up /Lift/, ctags, and vim (on OS X and Ubuntu): Add some scala definition to ctags: ty@Astra:~$ cat /home/ty/.ctags --langdef=scala --langmap=scala:.scala --regex-scala=/^[ \t]*class[ \t]+([a-zA-Z0-9_]+)/\1/c,classes/ --regex-scala=/^[ \t]*trait[ \t]+([a-zA-Z0-9_]+)/\1/t,traits/ --regex-scala=/^[ \t]*type[ \t]+([a-zA-Z0-9_]+)/\1/T,types/ --regex-scala=/^[ \t]*def[ \t]+([a-zA-Z0-9_\?]+)/\1/m,methods/ --regex-scala=/^[ \t]*val[ \t]+([a-zA-Z0-9_]+)/\1/C,constants/ --regex-scala=/^[ \t]*var[ \t]+([a-zA-Z0-9_]+)/\1/l,local variables/ --regex-scala=/^[ \t]*package[ \t]+([a-zA-Z0-9_.]+)/\1/p,packages/ --regex-scala=/^[ \t]*case class[ \t]+([a-zA-Z0-9_]+)/\1/c,case classes/ [...]]]></description>
			<content:encoded><![CDATA[<h2>[Updated: 2008/12/10]</h2>
<p>This is how I set up /Lift/, ctags, and vim (on OS X and Ubuntu):</p>
<p>Add some scala definition to ctags:</p>
<pre>
ty@Astra:~$ cat /home/ty/.ctags
--langdef=scala
--langmap=scala:.scala
--regex-scala=/^[ \t]*class[ \t]+([a-zA-Z0-9_]+)/\1/c,classes/
--regex-scala=/^[ \t]*trait[ \t]+([a-zA-Z0-9_]+)/\1/t,traits/
--regex-scala=/^[ \t]*type[ \t]+([a-zA-Z0-9_]+)/\1/T,types/
--regex-scala=/^[ \t]*def[ \t]+([a-zA-Z0-9_\?]+)/\1/m,methods/
--regex-scala=/^[ \t]*val[ \t]+([a-zA-Z0-9_]+)/\1/C,constants/
--regex-scala=/^[ \t]*var[ \t]+([a-zA-Z0-9_]+)/\1/l,local variables/
--regex-scala=/^[ \t]*package[ \t]+([a-zA-Z0-9_.]+)/\1/p,packages/
--regex-scala=/^[ \t]*case class[ \t]+([a-zA-Z0-9_]+)/\1/c,case classes/
--regex-scala=/^[ \t]*final case class[ \t]+([a-zA-Z0-9_]+)/\1/c,case classes/
--regex-scala=/^[ \t]*object[ \t]+([a-zA-Z0-9_]+)/\1/o,objects/
--regex-scala=/^[ \t]*private def[ \t]+([a-zA-Z0-9_]+)/\1/pd,defs/
</pre>
<p>Build the tags file:</p>
<pre>
ty@Astra:~$ /opt/local/bin/ctags -h ".scala" -R --exclude=*.js -f liftags /Users/tjweir/g/clean/liftweb/
</pre>
<p>I prefer to keep the tags file, in this case liftags, in the root of home.  Put it where you want.</p>
<p>Add the tags location to ~/.vimrc</p>
<pre>
set tags=/home/ty/liftags
</pre>
<p>Now you can open a file and execute
<pre>:tag LiftSession</pre>
<p> and jump to the file.</p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/05/16/liftweb-ctags-vim/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting my nerd on.</title>
		<link>http://www.praytothemachine.com/evil/2008/04/22/getting-my-nerd-on/</link>
		<comments>http://www.praytothemachine.com/evil/2008/04/22/getting-my-nerd-on/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 00:46:39 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[LiftWeb]]></category>
		<category><![CDATA[Scala]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=664</guid>
		<description><![CDATA[I will be attending ScalaLiftOff on Saturday May 10th, 2008 from 9am to 5pm. What&#8217;s ScalaLiftOff? The Scala lift off is a great place for members of the Scala and lift communities to get together, learn about Scala, learn about lift and get to know each other face to face. There will be Scala tracks [...]]]></description>
			<content:encoded><![CDATA[<p>I will be attending <a href="http://www.scalaliftoff.com/" onclick="pageTracker._trackPageview('/outgoing/www.scalaliftoff.com/?referer=');">ScalaLiftOff</a> on Saturday May 10th, 2008 from 9am to 5pm.</p>
<p>What&#8217;s ScalaLiftOff?</p>
<blockquote><p>The Scala lift off is a great place for members of the Scala and lift  communities to get together, learn about Scala, learn about lift and get to know each other face to face.  There will be Scala tracks going all day long and lift tracks to suits everyones interests.</p></blockquote>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/04/22/getting-my-nerd-on/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Lift App</title>
		<link>http://www.praytothemachine.com/evil/2008/04/15/new-lift-app/</link>
		<comments>http://www.praytothemachine.com/evil/2008/04/15/new-lift-app/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 00:42:34 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[LiftWeb]]></category>
		<category><![CDATA[lift]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=656</guid>
		<description><![CDATA[Working on another /lift/ app for fun.]]></description>
			<content:encoded><![CDATA[<p>Working on another <a href="http://www.liftweb.net/" onclick="pageTracker._trackPageview('/outgoing/www.liftweb.net/?referer=');">/lift/</a> app for fun.<br />
<a href="http://www.flickr.com/photos/tylerweir/2415415454/" title="itwasbetter by tylerweir, on Flickr" onclick="pageTracker._trackPageview('/outgoing/www.flickr.com/photos/tylerweir/2415415454/?referer=');"><img src="http://farm4.static.flickr.com/3256/2415415454_80f1f1e1ac_t.jpg" width="100" height="96" alt="itwasbetter" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/04/15/new-lift-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gravatars and Liftweb.</title>
		<link>http://www.praytothemachine.com/evil/2008/03/11/gravatars-and-liftweb/</link>
		<comments>http://www.praytothemachine.com/evil/2008/03/11/gravatars-and-liftweb/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 20:03:05 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[gravatars]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[LiftWeb]]></category>
		<category><![CDATA[Scala]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=606</guid>
		<description><![CDATA[Liftweb and Gravatars together at last. Here&#8217;s the snippet: package net.liftweb.example.snippet import net.liftweb.example.model._ import scala.xml.{NodeSeq, Text, Group, Node, Elem} import net.liftweb.http._ import net.liftweb.http.S import net.liftweb.mapper._ import net.liftweb.http.S._ import net.liftweb.util.Helpers._ import net.liftweb.util._ import java.util.Locale import net.liftweb.sitemap._ import net.liftweb.sitemap.Loc._ import java.security._ // gravatar_id - MD5 sum of your email address // size - image size // rating [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.liftweb.net" onclick="pageTracker._trackPageview('/outgoing/www.liftweb.net?referer=');">Liftweb</a> and <a href="http://www.gravatar.com/" onclick="pageTracker._trackPageview('/outgoing/www.gravatar.com/?referer=');">Gravatars</a> together at last.</p>
<p>Here&#8217;s the snippet:<br />
<code>package net.liftweb.example.snippet</p>
<p>import net.liftweb.example.model._<br />
import scala.xml.{NodeSeq, Text, Group, Node, Elem}<br />
import net.liftweb.http._<br />
import net.liftweb.http.S<br />
import net.liftweb.mapper._<br />
import net.liftweb.http.S._<br />
import net.liftweb.util.Helpers._<br />
import net.liftweb.util._<br />
import java.util.Locale<br />
import net.liftweb.sitemap._<br />
import net.liftweb.sitemap.Loc._<br />
import java.security._</p>
<p>// gravatar_id - MD5 sum of your email address<br />
// size - image size<br />
// rating - rating of the image, let's start with "G" which is also the default</p>
<p>class Gravatar {<br />
  val theUser: User = User.currentUser.openOr(new User)</p>
<p>  private def getMD5(s: String): String = {<br />
    val m = MessageDigest.getInstance("MD5")<br />
    m.update(s.getBytes(),0,s.length())<br />
    BigInt(1,m.digest()).toString(16)<br />
  }</p>
<p>  def getGravatar(xhtml: NodeSeq): NodeSeq = {<br />
    var src = "http://www.gravatar.com/avatar.php?gravatar_id=" + getMD5(S.attr("e").openOr(theUser.email))<br />
    src = src + "&#038;size=" + S.attr("s").openOr("42")<br />
    src = src + "&#038;rating=" + S.attr("r").openOr("G")</p>
<p>    &lt;img src={src}/&gt;<br />
  }<br />
</code></p>
<p>And here&#8217;s how to use it in your templates:<br />
<code><br />
   &lt;lift :Gravatar.getGravatar e="email address" s="80" r="G" /&gt;<br />
</code></p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/03/11/gravatars-and-liftweb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lift and BlueprintCSS</title>
		<link>http://www.praytothemachine.com/evil/2008/01/29/lift-and-blueprintcss/</link>
		<comments>http://www.praytothemachine.com/evil/2008/01/29/lift-and-blueprintcss/#comments</comments>
		<pubDate>Wed, 30 Jan 2008 03:08:53 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[blueprintCSS]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[LiftWeb]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=534</guid>
		<description><![CDATA[I mooshed BluePrintCSS into /lift/ as you can see here: It was ridiculously easy using this tutorial.]]></description>
			<content:encoded><![CDATA[<p>I mooshed <a href="http://code.google.com/p/blueprintcss/" onclick="pageTracker._trackPageview('/outgoing/code.google.com/p/blueprintcss/?referer=');">BluePrintCSS</a> into <a href="http://www.liftweb.net/" onclick="pageTracker._trackPageview('/outgoing/www.liftweb.net/?referer=');">/lift/</a> as you can see here:<br />
<a href="http://www.flickr.com/photos/tylerweir/2229557064/" title="lift + blueprintCSS by tylerweir, on Flickr" onclick="pageTracker._trackPageview('/outgoing/www.flickr.com/photos/tylerweir/2229557064/?referer=');"><img src="http://farm3.static.flickr.com/2169/2229557064_6faa6caf50.jpg" width="500" height="406" alt="lift + blueprintCSS" /></a></p>
<p>It was <a href="http://www.blueflavor.com/blog/design/blueprintcss_101.php" onclick="pageTracker._trackPageview('/outgoing/www.blueflavor.com/blog/design/blueprintcss_101.php?referer=');">ridiculously easy using this tutorial.</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2008/01/29/lift-and-blueprintcss/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using MySql with Lift</title>
		<link>http://www.praytothemachine.com/evil/2007/11/24/using-mysql-with-lift/</link>
		<comments>http://www.praytothemachine.com/evil/2007/11/24/using-mysql-with-lift/#comments</comments>
		<pubDate>Sat, 24 Nov 2007 19:05:24 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[LiftWeb]]></category>
		<category><![CDATA[Scala]]></category>
		<category><![CDATA[lift]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.praytothemachine.com/evil/?p=428</guid>
		<description><![CDATA[I need to use MySQL with my Lift webapp and here&#8217;s how I did it. In Boot.scala I replaced the Derby DBVendor object with a MySQL object. Hope that helps. Add this to your pom.xml: &#60;dependency&#62; &#60;groupid&#62;mysql&#60;/groupid&#62; &#60;artifactid&#62;mysql-connector-java&#60;/artifactid&#62; &#60;version&#62;5.0.41&#60;/version&#62; &#60;/dependency&#62; object DBVendor extends ConnectionManager { def newConnection(name: ConnectionIdentifier): Can[Connection] = { try { Class.forName("com.mysql.jdbc.Driver") val [...]]]></description>
			<content:encoded><![CDATA[<p>I need to use <a href="http://www.mysql.org/" onclick="pageTracker._trackPageview('/outgoing/www.mysql.org/?referer=');">MySQL</a> with my <a href="http://www.liftcode.com/" onclick="pageTracker._trackPageview('/outgoing/www.liftcode.com/?referer=');">Lift webapp</a> and here&#8217;s how I did it.  In Boot.scala I replaced the Derby DBVendor object with a MySQL object.  Hope that helps.</p>
<p>Add this to your pom.xml:</p>
<pre>
        &lt;dependency&gt;
          &lt;groupid&gt;mysql&lt;/groupid&gt;
          &lt;artifactid&gt;mysql-connector-java&lt;/artifactid&gt;
          &lt;version&gt;5.0.41&lt;/version&gt;
        &lt;/dependency&gt;
</pre>
<p><code>object DBVendor extends ConnectionManager {<br />
  def newConnection(name: ConnectionIdentifier): Can[Connection] = {<br />
    try<br />
    {<br />
      Class.forName("com.mysql.jdbc.Driver")<br />
      val dm = DriverManager.getConnection("jdbc:mysql://localhost:3306/database_name", "user", "password")<br />
      Full(dm)<br />
    }<br />
    catch<br />
    {<br />
      case e : Exception => e.printStackTrace; Empty<br />
    }<br />
  }<br />
  def releaseConnection(conn: Connection)<br />
  {<br />
    conn.close<br />
  }<br />
}<br />
</code></p>
<p>Next up is learning how to set up my domain objects properly.</p>]]></content:encoded>
			<wfw:commentRss>http://www.praytothemachine.com/evil/2007/11/24/using-mysql-with-lift/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

