<?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>Giordano Scalzo&#039;s Personal Blog &#187; vim</title>
	<atom:link href="http://giordano.scalzo.biz/tag/vim/feed/" rel="self" type="application/rss+xml" />
	<link>http://giordano.scalzo.biz</link>
	<description>Just another useless weblog</description>
	<lastBuildDate>Fri, 09 Jul 2010 09:41:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>What I learned doing a Katacast</title>
		<link>http://giordano.scalzo.biz/2009/12/23/what-i-learned-doing-a-katacast/</link>
		<comments>http://giordano.scalzo.biz/2009/12/23/what-i-learned-doing-a-katacast/#comments</comments>
		<pubDate>Wed, 23 Dec 2009 09:32:36 +0000</pubDate>
		<dc:creator>giordano scalzo</dc:creator>
				<category><![CDATA[me]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[kata]]></category>
		<category><![CDATA[scala]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://giordano.scalzo.biz/?p=258</guid>
		<description><![CDATA[As said before, last week at Milan Xpug meeting, we organized a kata evening, with the same challenge done with different language.
During the practice to reach a quite well solution, I publicized my attempts through Twiiter gaining attention from Corey Haines hinself who asked me if I was interested to appear on katakasts.com as a [...]]]></description>
			<content:encoded><![CDATA[<p>As <a href="http://giordano.scalzo.biz/2009/12/17/stringcalculator-kata-at-xpug/">said before</a>, last week at <a href="http://milano-xpug.pbworks.com/">Milan Xpug</a> meeting, we organized a kata evening, with the same challenge done with different language.<br />
During the practice to reach a quite well solution, I publicized my attempts through Twiiter gaining attention from <a href="http://www.coreyhaines.com/">Corey Haines</a> hinself who asked me if I was interested to appear on <a href="http://www.katacasts.com/">katakasts.com</a> as a guest: wow, I felt like a teenage U2 fan who, while playing in garage, receive a call from The Edge asked him if interest to play some concerts with them!</p>
<p>Anyway, I tried to record a good enough kata, that means without compilation error, in resonable time and typed in smooth way.<br />
That could sound as a straightforward thing to do (I thought it that way), but I invite everyone tho give it a try: I did almost 10 complete recording, not counting all false starts or big mistakes near the end of kata.<br />
I noticed how often I did errors in first steps, I think while I&#8217;m not into the &#8220;flow&#8221;, or at the end, when I start to relax.</p>
<p>Anyway, the only way to perform a Kata in a acceptable time for <a href="http://www.katacasts.com/">katakasts.com</a> (less than 15 minutes) is to master the editor of choice.<br />
I use <a href="http://www.vim.org/">vim </a>for kata, but I&#8217;m far to be &#8216;fluent&#8217; on it! Anyway, to save precious time, I learned a few usefu thricks.</p>
<p>First of all, we need to forget to navigate the text throught <code>'hjkl'</code> or arrows keys, and use the line numbers features of vim.<br />
With this command:</p>
<pre class="brush ruby">
:set number
</pre>
<p>every line will appear with its number.<br />
Almost every command of vim should be applied to a range of rows.<br />
For example with this:</p>
<pre class="brush ruby">
:20,30 co 35
</pre>
<p>we copy the block from line 20 to line 30 to line 35.<br />
Or with this:</p>
<pre class="brush ruby">
:20,30s/java/scala/g
</pre>
<p>we change word <code>java</code> with <code>scala</code> in previous code.<br />
A little variant is</p>
<pre class="brush ruby">
:20,30 co .
</pre>
<p>that copies the block at the current cursor position.</p>
<p>Anyway, you can enjoy these and other basic vim tricks in my Katacast:</p>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8326880&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8326880&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object>
<p><a href="http://vimeo.com/8326880">KataCast: StringCalculator in Scala</a> from <a href="http://vimeo.com/user2802092">giordano scalzo</a> on <a href="http://vimeo.com">Vimeo</a>.</p>

<!-- start wp-tags-to-technorati 1.01 -->

<p class='technorati-tags'>Technorati Tags: <a class='technorati-link' href='http://technorati.com/tag/kata' rel='tag' target='_self'>kata</a>, <a class='technorati-link' href='http://technorati.com/tag/scala' rel='tag' target='_self'>scala</a>, <a class='technorati-link' href='http://technorati.com/tag/vim' rel='tag' target='_self'>vim</a></p>

<!-- end wp-tags-to-technorati -->
]]></content:encoded>
			<wfw:commentRss>http://giordano.scalzo.biz/2009/12/23/what-i-learned-doing-a-katacast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
