<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Nifty tidbits</title>
	<atom:link href="http://niftybits.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://niftybits.wordpress.com</link>
	<description>Nifty tidbits and random thoughts on technology and anything else that catches my fancy</description>
	<lastBuildDate>Fri, 27 Jan 2012 20:38:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='niftybits.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Nifty tidbits</title>
		<link>http://niftybits.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://niftybits.wordpress.com/osd.xml" title="Nifty tidbits" />
	<atom:link rel='hub' href='http://niftybits.wordpress.com/?pushpress=hub'/>
		<item>
		<title>IOS-no previous simulator versions!</title>
		<link>http://niftybits.wordpress.com/2012/01/27/ios-no-multiple-simulators/</link>
		<comments>http://niftybits.wordpress.com/2012/01/27/ios-no-multiple-simulators/#comments</comments>
		<pubDate>Fri, 27 Jan 2012 20:33:40 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Rant]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=335</guid>
		<description><![CDATA[Ran into a situation today where we had a mobile web app that was reported to be misbehaving on iOS 3.2. The Mac at work has the latest XCode and IOS 5 simulator loaded on it. So we thought it would be quite routine to just start a simulator running IOS 3.2 &#8211; after all [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=335&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Ran into a situation today where we had a mobile web app that was reported to be misbehaving on iOS 3.2. The Mac at work has the latest XCode and IOS 5 simulator loaded on it. So we thought it would be quite routine to just start a simulator running IOS 3.2 &#8211; after all this having simulators of different versions of the OS is pretty routine. Android makes it trivial and before that, Blackberry has always had different simulator versions for different versions of their OS. Truth be told, RIM probably overdid it. They had too many versions, a developer website that would drive even the most persistent BB fanboys to stark raving madness and documentation that took great pains to suck! Hell, its a separate rant altogether <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Anyway, after clicking around Xcode for a bit, imagine our surprise when we found that only a device debugging package for iOS 3.2 was available as an updated package for Xcode. That didnt seem right &#8211; so off to Google and there&#8217;s a post on SE http://apple.stackexchange.com/questions/14128/how-do-i-install-the-3-0-iphone-simulator-on-xcode-4 </p>
<p>Apparently, Apple doesn&#8217;t want you to test on previous versions (or atleast &#8211; 2 major versions before. Testing on last major version IOS4 is ok though). Now isn&#8217;t that absolutely ridiculous? Sure, Apple wants people to upgrade their phones to the latest OS versions and they&#8217;ve done a great job of ensuring that later versions of the OS work on older generation phones &#8211; but from a development tool standpoint, making tools to test your app unavailable is taking things too far. So tomorrow if my site/app doesnt work properly on a iOS 3 device, the user isnt going to blame Apple. Its the app developer who gets the bug report <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> .</p>
<p>So once I&#8217;d made my peace with Apple&#8217;s decisions and diktats on what simulators I was allowed to play with, I reflected on it a bit. I think the key is that that IOS&#8217;s simulator is really just a simulator (ie software running on the host machine but mimicking a device). On the other hand, the Android emulator is actually a full qnx VM that&#8217;s totally isolated from the host machine. In IOS&#8217;s case, the simulator is sharing libraries and tools installed on the base OS &#8211; and as such, it would be quite hard to simulate older versions. In Android&#8217;s case, since each emulator is really like running a VM, you can have all the different versions at your beck and call. On the flip side of things, the emulator approach really slows things down &#8211; everything from booting up the VM to actually running code inside it whereas IOS simulator positively zips around. I&#8217;m not sure if this is indeed the case &#8211; it&#8217;s just my theory. Looking around on the net, I couldnt find a solid reference &#8211; so if you know of one, drop it in the comments.. I did find a few on SE/SO &#8211; but they were by no means conclusive http://stackoverflow.com/questions/4544588/difference-between-iphone-simulator-and-android-emulator </p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/vimpress_4f230a22_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/vimpress_4f230a22_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/335/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=335&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/27/ios-no-multiple-simulators/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>VIM macro super powers</title>
		<link>http://niftybits.wordpress.com/2012/01/27/vim-macro-super-powers/</link>
		<comments>http://niftybits.wordpress.com/2012/01/27/vim-macro-super-powers/#comments</comments>
		<pubDate>Fri, 27 Jan 2012 19:58:46 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=331</guid>
		<description><![CDATA[So my affair with Vim continues &#8211; and I seem to have discovered VIM&#8217;s macro super powers. The obvious next step is to shout from the rooftops and hence this blog post (and there&#8217;s hardly anything original &#8211; apart from the fact that I&#8217;ve just had a &#8216;aha&#8217; moment when it comes to macros and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=331&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So my affair with Vim continues &#8211; and I seem to have discovered VIM&#8217;s macro super powers. The obvious next step is to shout from the rooftops and hence this blog post (and there&#8217;s hardly anything original &#8211; apart from the fact that I&#8217;ve just had a &#8216;aha&#8217; moment when it comes to macros and thought it might help other budding vimmers out there&#8230;</p>
<p>A little primer &#8211; Macros let you repeat a set of commands. The way to go about it is to press <code>q&lt;macro_letter&gt;</code> where <code>&lt;macro_letter&gt;</code> is between lowercase a-z. This starts recording a macro in Vim (and you see a <code>recording</code> message at the bottom). Now hit commands you want to repeat later and press <code>q</code> when done to finish recording. VIM records all the keystrokes you enter in the register you specified as the macro name. To now execute the macro, position the macro on the line and then hit <code>@&lt;macro_letter&gt;</code> and Vim will faithfully replay your commands.</p>
<p>Its a great time saver &#8211; especially for complex editing tasks where search/replace doesn&#8217;t cut it. But, if you&#8217;re feeling a dissappointed after coming this far (after all, I promised a aha moment), then hang on.</p>
<p>Today&#8217;s discovery was that you can edit macros that you&#8217;ve recorded quite easily and save them back!!! <strong><em>THIS IS HUGE</em></strong>. Why so? Because when you record a macro, its quite normal to jump around quite a bit or get one or two keystrokes wrong. In fact, its for this reason that I could never use Emacs&#8217;s macro facility and failed to just &#8216;get it&#8217;. However, in VIM, you could just open a scratch pad editor and hit <code>"&lt;macro_letter&gt;p</code> &#8211; that&#8217;s double quote-letter-p to paste the contents of register containing your macro. You see your macro keystrokes &#8211; so go ahead and edit them and then use <code>"&lt;register&gt;y&lt;movement&gt;</code> to save your edits back to the register. You can now execute the macro with a <code>@&lt;macro_letter&gt;</code> as if that&#8217;s the way it was recorded in the first place.</p>
<p>Another obvious tip &#8211; you can <code>execute</code> the contents of any register as if it were a macro with a @. Not sure when that could be helpful &#8211; but knowing that its possible is good.</p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/vimpress_4f2301f3_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/vimpress_4f2301f3_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/331/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/331/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/331/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/331/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/331/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/331/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/331/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/331/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/331/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/331/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/331/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/331/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/331/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/331/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=331&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/27/vim-macro-super-powers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>Yoohooo!! Successfully compiled Android from source</title>
		<link>http://niftybits.wordpress.com/2012/01/17/successfully-compiled-android-from-source/</link>
		<comments>http://niftybits.wordpress.com/2012/01/17/successfully-compiled-android-from-source/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 18:08:07 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[HOWTO]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[virtualbox]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=328</guid>
		<description><![CDATA[Finally!!! So my last weekend project had been to compile Android ICS from source. Given that the size of the repo itself is in excess of 6Gigs, just getting it down itself took the better part of Friday night and Saturday night. When I got down to running make on it, it was Sunday afternoon. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=328&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Finally!!!</p>
<p>So my last weekend project had been to compile Android ICS from source. Given that the size of the repo itself is in excess of 6Gigs, just getting it down itself took the better part of Friday night and Saturday night. When I got down to running make on it, it was Sunday afternoon.</p>
<p>Needless to say, things didn&#8217;t work too well. I&#8217;m running this on a 32 bit Ubuntu 10.04 Virtualbox with a piddly 1GB RAM. When <code>make</code> failed the first time, realized that swap was a measly 300Mb. First steps first, went on to increase memory to 2GB (that&#8217;s all I can spare) and increased swap to 2Gs.</p>
<p>Compilation next round started and that failed too &#8211; ran out of disk space &#8211; and this was Sunday night. Things kind of stayed there and finally this evening, resized the disk in virtualbox to 50Gigs. Again started the compilation and this time ran into linker errors when building webcore. One more round of troubleshooting involved deleting the previously built static library and then running make again. Surprisingly, this time make completed successfully &#8211; to the point where I wasn&#8217;t sure if it had succeeded or just failed silently on something else. </p>
<p>The next step was to run the emulator to see if it really would boot up. Over at source.android.com, they oversimplify it when they say that you just run <code>emulator</code> from the android root folder. That didn&#8217;t work for me &#8211; and this time it was because I hadn&#8217;t sourced the envSetup.sh file&#8230; this thread http://groups.google.com/group/android-platform/browse_thread/thread/91ff18e034acf951 helped in tracking that one down.</p>
<p><strong>So finally, after all that trouble, I have  my very own ICS build running!!!!</strong></p>
<p>For now, its onward ahoy to setting up Eclipse and starting with a fix I&#8217;ve been mulling about for sometime now..</p>
<p>Signing off from cloud nine<br />
R</p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/vimpress_4f15b902_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/vimpress_4f15b902_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/328/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=328&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/17/successfully-compiled-android-from-source/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>Ubuntu, Console VIM &#8211; weird characters in insert mode</title>
		<link>http://niftybits.wordpress.com/2012/01/16/ubuntu-console-vim-weird-characters-in-insert-mode/</link>
		<comments>http://niftybits.wordpress.com/2012/01/16/ubuntu-console-vim-weird-characters-in-insert-mode/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 16:23:01 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=324</guid>
		<description><![CDATA[Now that I feel quite comfy with VIM, over the weekend I needed to edit a config file in my Ubuntu 10.10 Virtualbox machine quickly. Instead of GVim, I just opened the file in console VIM. As I hit i to get into insert mode, a bunch of weird character boxes were inserted. That was [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=324&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Now that I feel quite comfy with VIM, over the weekend I needed to edit a config file in my Ubuntu 10.10 Virtualbox machine quickly. Instead of GVim, I just opened the file in console VIM. As I hit i to get into insert mode, a bunch of weird character boxes were inserted. That was not good at all <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  &#8211; just when you think you&#8217;re comfortable with something if it does something totally weird. In any case, I was in too much of a hurry to bother and went about editing my file with gVim. Also, backspace was wonky (same weird characters) &#8211; so I felt better. For some reason that I fail to understand, why must Linux make proper backspace and delete handling such a pain! In any case, it&#8217;s something that I&#8217;ve dealt with enough times to know that there&#8217;ll be something on Google. </p>
<p>Later on, tried to see what all the fuss was about. Googling around, I found <code>:help :fixdel</code> and that seemed simple enough. Alas, when I tried it out, it didn&#8217;t fix the issue at all. Also, I seemed to be getting weird characters just pressing <code>i</code> to get into insert mode &#8211; and the VIM wiki page didn&#8217;t have anything about that. Neither did Google turn up anything that seemed related.</p>
<p>So today early morning, on a whim, read up a little on VIm terminal handling. I have the following in my .vimrc<br />
<pre class="brush: plain;">
set t_Co=256
</pre><br />
Maybe it was the color escape code that was coming in &#8211; so checked out <code>:echoe &amp;term</code> which returned <code>xterm</code> under gnome-console and <code>builtin_gui</code> under gvim. So I&#8217;ve put the following bit in my .vimrc and it seems to have fixed things nicely:<br />
<pre class="brush: plain;">
if &amp;term == "xterm"
    set term=xterm-256color
endif
</pre></p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/vimpress_4f144ee2_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/vimpress_4f144ee2_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/324/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=324&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/16/ubuntu-console-vim-weird-characters-in-insert-mode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>Android Annoyances</title>
		<link>http://niftybits.wordpress.com/2012/01/11/android-annoyances/</link>
		<comments>http://niftybits.wordpress.com/2012/01/11/android-annoyances/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 17:48:51 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=319</guid>
		<description><![CDATA[So yesterday and today while driving back from work, I&#8217;ve had to join conference calls. The conference call provider we use at work has 10 digit passcode numbers. Usually, I have a few bridge numbers with the DTMF codes saved in my contacts so I can just click on the contact to get dialled to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=319&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So yesterday and today while driving back from work, I&#8217;ve had to join conference calls. The conference call provider we use at work has 10 digit passcode numbers. Usually, I have a few bridge numbers with the DTMF codes saved in my contacts so I can just click on the contact to get dialled to the access number and have the participant passcode typed in for me. However, yesterday and today&#8217;s calls were on a different bridge and I had to try to remember a 10 digit number after dialling the access code &#8211; and all that while driving. Needless to say, it took a few attempts and I&#8217;m sure at that time my attention wasn&#8217;t where it should have been &#8211; ie on the road and on the traffic. Besides being thoroughly unsafe on Bangalore roads, its just frustrating(thankfully  &#8211; better sense prevailed today and I pulled over, dialled into the bridge and then started driving again). </p>
<p>So the issue really is that the native parser that parses out email and calendar invites doesn&#8217;t understand access codes and passcodes. It shouldn&#8217;t be too hard to do &#8211; but then I started digging a bit deeper this evening. Granted that the parser isn&#8217;t smart enough, at the very minimum if it handles <code>tel:</code> links properly, then its just a matter of educating folks who set up meetings to set them up so that you can click to call with something like <code>&lt;a href="tel:23423432233,,9230233#"&gt;</code> &#8211; in fact, in Outlook if you type TEL: and then the number, it will automatically be parsed as a tel: hyperlink. Turns out that its a massive fail &#8211; if I click the link, Android will show me the dialler but without the DTMF codes (basically, only the number upto the first comma). TOTAL FAIL.</p>
<p>So, Isn&#8217;t this something that should have been brain dead simple to do? I mean &#8211; this is 2012 after all &#8211; and I&#8217;m not asking much. All I&#8217;m asking is that the tel: url parsing/handling be done in such a way that we can use our phones properly!!! Turns out that there&#8217;s an <a href="http://code.google.com/p/android/issues/detail?id=4575">open ticket 4575</a> since Nov 09. And its marked as an enhancement &#8211; I find that laughable since its a bug and definitely something that can  be done quite easily (esp since a contact that has DTMF codes is dialled properly). However, for the 2 years that the ticket has languished, there have been 73 comments and not a single response from big GOOG <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>At the moment, doesnt look like this is going to be fixed &#8211; so I started browsing thru the Android source tree to see if I can find where the implementation for tel: urls &#8211; however, given the size of the android source, that&#8217;s like trying to find a needle in a haystack. Guess I&#8217;ll have better luck with seeing if CyanogenMod folks can fix this in CM9.</p>
<p>So about that, the other thing that has confounded me is why in the world can&#8217;t Android bundle a decent T9 dialer/smart dialer out of the box. I know there are tons of apps on the market that do that &#8211; but seriously, is smart dialing something so out of the world that I need an app for it? As expected, there&#8217;s <a href="http://code.google.com/p/android/issues/detail?id=8612"> a ticket </a> but no action.</p>
<p>I think its safe to assume that Google isn&#8217;t interested in fixing these issues as there&#8217;s no &#8216;benefit&#8217; in doing so &#8211; though for the life of me, I can&#8217;t imagine either of them being particularly hard. In any case, I&#8217;m eagerly awaiting a CM9 build for the Nexus One (right now, am running an ICS build from XDA).</p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/vimpress_4f0dcbf3_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/vimpress_4f0dcbf3_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/319/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=319&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/11/android-annoyances/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>Facebook publicize is driving me nuts!</title>
		<link>http://niftybits.wordpress.com/2012/01/10/facebook-publicize-is-driving-me-nuts/</link>
		<comments>http://niftybits.wordpress.com/2012/01/10/facebook-publicize-is-driving-me-nuts/#comments</comments>
		<pubDate>Tue, 10 Jan 2012 16:21:26 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[rants]]></category>
		<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=316</guid>
		<description><![CDATA[I&#8217;m thoroughly frustrated with WordPress.com&#8217;s facebook publicize feature. In theory, its supposed to post to your facebook wall whenever you publish a new post and that way publicize your post among your friend circle&#8230;..if it ever works. I&#8217;ve done all the resets, disconnects and reconnects and it just doesn&#8217;t. Now, this could very well be [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=316&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m thoroughly frustrated with WordPress.com&#8217;s facebook publicize feature. In theory, its supposed to post to your facebook wall whenever you publish a new post and that way publicize your post among your friend circle&#8230;..if it ever works. I&#8217;ve done all the resets, disconnects and reconnects and it just doesn&#8217;t. Now, this could very well be a facebook problem rather than a wordpress.com problem &#8211; so while my rant might be misdirected, its a rant anyway against the thoroughly frustrating experience. Its like a bucket of cold water on my enthusiasm to be more active on my blog.</p>
<p>You see, with having posted rarely to this blog, I get a measly 70/80 page views per day (yeah &#8211; there&#8217;s no need for the snide looks); So one part of actively persisting on the blog has been to see if I can get to 100+ page views per day. Modest goals, I admit &#8211; and getting the linky to a new post on the FB wall is a big part of it. If only it worked as it says on the tin <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>Anyway, this post is a test in itself &#8211; I&#8217;ve just jumped through the <a href="http://en.support.wordpress.com/publicize/#reconnecting-facebook"> said hoops </a>, mumbled the magic incantations and in other words, followed every bit of direction available to make this work right. And if this post shows up on my FB wall, well and good. If not, then I&#8217;m done with trying to get this to work.</p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/vimpress_4f0c657d_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/vimpress_4f0c657d_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/316/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=316&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/10/facebook-publicize-is-driving-me-nuts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>A syntax highlighter extension for Deck.js</title>
		<link>http://niftybits.wordpress.com/2012/01/09/a-syntax-highlighter-extension-for-deck-js/</link>
		<comments>http://niftybits.wordpress.com/2012/01/09/a-syntax-highlighter-extension-for-deck-js/#comments</comments>
		<pubDate>Mon, 09 Jan 2012 16:31:02 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[deck.js]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=298</guid>
		<description><![CDATA[So for the past few hours, have been playing with Deck.js . I like the idea of a web based presentation format rather than a blob like powerpoint. At the same time, I&#8217;m a bit circumspect too &#8211; given the state of the tools. At least for my use, there&#8217;s really no burning need that [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=298&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So for the past few hours, have been playing with <a href="http://imakewebthings.github.com/deck.js/"> Deck.js </a>. I like the idea of a web based presentation format rather than a blob like powerpoint. At the same time, I&#8217;m a bit circumspect too &#8211; given the state of the tools. At least for my use, there&#8217;s really no burning need that powerpoint can&#8217;t solve (though I get the shivers everytime I have to do a presentation). All the web based/HTML5 seem raw at the moment on some much needed features (slide notes, slide prints, scaling issues etc).</p>
<p>Anyway, after a few minutes on Google and StackOverflow, decided to give Deck.js a spin. Deck.js is really nice and you should take a tour if you haven&#8217;t done so. So finally, after giving the online presentation and the introduction a try, downloaded the latest to give it a more thorough spin. As usual, one of the first things was embedding code snippets and I thought it would be nice to integrate Alex Gorbatchev&#8217;s <a href="http://alexgorbatchev.com/SyntaxHighlighter/"> SyntaxHighlighter </a> into this. Turned out really simple to do (I&#8217;m sure there are other syntax highlighter extensions to deck.js out there) &#8211; but since I got something working pretty easily, here it is:</p>
<p>Create a file called deck.syntaxhighlighter.js with code below:</p>
<p><pre class="brush: jscript;">
(function ($) {
    $(&quot;head&quot;).append(
    '&lt;link href=&quot;http://alexgorbatchev.com/pub/sh/current/styles/shCore.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; /&gt;'
    ).append(
    '&lt;link href=&quot;http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; /&gt;'
    );
    function setupSyntaxHighlighterAutoloads() {
        console.log(&quot;calling SyntaxHighlighter&quot;);
        SyntaxHighlighter.autoloader(
              'applescript            http://alexgorbatchev.com/pub/sh/current/scripts/shBrushAppleScript.js',
              'actionscript3 as3      http://alexgorbatchev.com/pub/sh/current/scripts/shBrushAS3.js',
              'bash shell             http://alexgorbatchev.com/pub/sh/current/scripts/shBrushBash.js',
              'coldfusion cf          http://alexgorbatchev.com/pub/sh/current/scripts/shBrushColdFusion.js',
              'cpp c                  http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCpp.js',
              'c# c-sharp csharp      http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCSharp.js',
              'css                    http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCss.js',
              'delphi pascal          http://alexgorbatchev.com/pub/sh/current/scripts/shBrushDelphi.js',
              'diff patch pas         http://alexgorbatchev.com/pub/sh/current/scripts/shBrushDiff.js',
              'erl erlang             http://alexgorbatchev.com/pub/sh/current/scripts/shBrushErlang.js',
              'groovy                 http://alexgorbatchev.com/pub/sh/current/scripts/shBrushGroovy.js',
              'java                   http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJava.js',
              'jfx javafx             http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJavaFX.js',
              'js jscript javascript  http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJScript.js',
              'perl pl                http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPerl.js',
              'php                    http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPhp.js',
              'text plain             http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPlain.js',
              'py python              http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPython.js',
              'ruby rails ror rb      http://alexgorbatchev.com/pub/sh/current/scripts/shBrushRuby.js',
              'sass scss              http://alexgorbatchev.com/pub/sh/current/scripts/shBrushSass.js',
              'scala                  http://alexgorbatchev.com/pub/sh/current/scripts/shBrushScala.js',
              'sql                    http://alexgorbatchev.com/pub/sh/current/scripts/shBrushSql.js',
              'vb vbnet               http://alexgorbatchev.com/pub/sh/current/scripts/shBrushVb.js',
              'xml xhtml xslt html    http://alexgorbatchev.com/pub/sh/current/scripts/shBrushXml.js'
       );
       SyntaxHighlighter.all();
    }
    $.getScript(&quot;http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js&quot;,
        function () {
            $.getScript(&quot;http://alexgorbatchev.com/pub/sh/current/scripts/shAutoloader.js&quot;,setupSyntaxHighlighterAutoloads);
    });
})(jQuery);
</pre></p>
<p>Throw that in your deck.js/extensions folder. IN the slide deck you want to use this extension, include a script line before the end of the body tag:</p>
<p><pre class="brush: xml;">
&lt;script src=&quot;../extensions/deck.syntaxhighlighter.js&quot;&gt;&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre></p>
<p>And you&#8217;re done. Now to include any code snippets in your deck, just use either of the methods specified in the <a href="http://alexgorbatchev.com/SyntaxHighlighter/manual/installation.html"> SyntaxHighlighter page </a> (snippet for the script tag below)</p>
<p><pre class="brush: xml;">
    &lt;script type=&quot;syntaxhighlighter&quot; class=&quot;brush: js&quot;&gt;
        $(document).ready(function () {
            //this is the function body
        });
    &lt;/script&gt;
</pre></p>
<p>That&#8217;s all there is to it. Code above can do with some improvements (conditionally load local copies if the remote loading fails etc) &#8211; but this is just a quickie script &#8211; so feel free to modify this to your heart&#8217;s content.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/298/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=298&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/09/a-syntax-highlighter-extension-for-deck-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>Vim &#8211; unmap Esc!!</title>
		<link>http://niftybits.wordpress.com/2012/01/05/vim-unmap-esc/</link>
		<comments>http://niftybits.wordpress.com/2012/01/05/vim-unmap-esc/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 03:43:40 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=294</guid>
		<description><![CDATA[So I had the bright idea (by no means original, though, as I later figured out) that it&#8217;d be great to avoid the Esc key on Vim as its so far away from the home row. The alternative to pressing Esc is Ctrl-[ which, even though I&#8217;ve mapped CapsLock to control, I still find hard. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=294&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So I had the bright idea (by no means original, though, as I later figured out) that it&#8217;d be great to avoid the <kbd>Esc</kbd> key on Vim as its so far away from the home row. The alternative to pressing <code>Esc</code> is <code>Ctrl-[</code> which, even though I've mapped CapsLock to control, I still find hard. So then, after some more googling around I've settled down on mapping <code>jk</code> to <code>Esc</code>. Its been a few hours with this setup and while its been an absolute pain till now, I think its a great way to avoid the Esc key jump. I can already feel my finger muscle memory relearning and my hand jumps instinctively for the Esc  key much less now.</p>
<p>Here's my setup in case  you want to try this out. Bung the following into your <code>.vimrc</code> or <code>_vimrc</code> as the case may be:<br />
<pre class="brush: plain;">
    inoremap  :echoe "use jk"
    inoremap jk 
</pre><br />
The first mapping makes VIM echo a reminder. Its not friendly since it introduces a pause. However, the idea is to make the Esc so painful that you will shy away from hitting it.</p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/vimpress_4f066de8_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/vimpress_4f066de8_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/294/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=294&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/05/vim-unmap-esc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>Upgraded to XBMC 11.0 Eden beta</title>
		<link>http://niftybits.wordpress.com/2012/01/05/upgraded-to-xbmc-11-0-eden-beta-2/</link>
		<comments>http://niftybits.wordpress.com/2012/01/05/upgraded-to-xbmc-11-0-eden-beta-2/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 03:30:48 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[Random Rambling]]></category>
		<category><![CDATA[general]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[XBMC]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=287</guid>
		<description><![CDATA[So I upgraded the good ole&#8217; media center machine at home to XBMC 11.0 Beta . XBMC has been one of those software finds that has been just marvellous &#8211; to the point where I can&#8217;t imagine the telly at home without XBMC. I&#8217;ve pretty much stopped watching regular tv/cable and almost exclusively on XBMC. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=287&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So I upgraded the good ole&#8217; media center machine at home to <a href="http://xbmc.org/natethomas/2011/12/24/xbmc-11-0-eden-beta-available-now/"> XBMC 11.0 Beta<br />
 </a>. XBMC has been one of those software finds that has been just marvellous &#8211; to the point where I can&#8217;t imagine the telly at home without XBMC. I&#8217;ve pretty much stopped watching regular tv/cable and almost exclusively on XBMC.<br />
Also, its been a great way to keep the aging laptop (circa 2006 &#8211; core2Duo 1.6 Ghz, 2 Gb RAM and a piddling ATI Radeon X1600) in active duty.<br />
Here&#8217;s a hat-tip to all the XBMC guys and gals. And if you&#8217;re not running a media center at home, you should give it a spin &#8211; XBMC makes your idiot box smart!</p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2012/01/wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201201vimpress_4f066ab2_mkd.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2012/01/wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201201vimpress_4f066ab2_mkd.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/287/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=287&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2012/01/05/upgraded-to-xbmc-11-0-eden-beta-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
		<item>
		<title>Unit testing Apache CXF RESTful services &#8211; code available</title>
		<link>http://niftybits.wordpress.com/2011/12/30/unit-testing-apache-cxf-restful-services-code-available/</link>
		<comments>http://niftybits.wordpress.com/2011/12/30/unit-testing-apache-cxf-restful-services-code-available/#comments</comments>
		<pubDate>Sat, 31 Dec 2011 06:25:10 +0000</pubDate>
		<dc:creator>Raghu</dc:creator>
				<category><![CDATA[HOWTO]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[cxf]]></category>

		<guid isPermaLink="false">http://niftybits.wordpress.com/?p=233</guid>
		<description><![CDATA[So, the original post on the topic written about two and a half years ago had code snippets, but there&#8217;s been comments and PMs for the complete code. So last week, as I resurrected this blog, decided to get that code out on github. Unfortunately, that was easier said than done; it has been quite [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=233&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So, the <a href="http://niftybits.wordpress.com/2009/08/26/recipe-unit-testing-apache-cxf-restful-services/"> original post on the topic </a> written about two and a half years ago had code snippets, but there&#8217;s been comments and PMs for the complete code. So last week, as I resurrected this blog, decided to get that code out on github. Unfortunately, that was easier said than done; it has been quite some time and frankly, I&#8217;d lost the code. I must&#8217;ve switched machines about 3 times in the interim and gone from SVN to github for personal projects. Some hunting around ensued and thankfully, I was able to find the actual code we wrote based on the sample I&#8217;d posted. So cleaned that up &#8211; and just extracted the unit testing example out of it and pushed it to github &#8211; get it <a href="https://github.com/raghur/cxf-junit-jetty">here</a>. I haven&#8217;t updated any of the dependencies &#8211; so this is still running against spring 2.5 and cxf 2.2.3 (I think) and things might&#8217;ve changed quite a bit since then (I haven&#8217;t used the JAXRS bits of CXF much after that)</p>
<p>Running tests:<br />
<pre class="brush: bash;">
        mvn test
</pre><br />
Running the server:<br />
<pre class="brush: bash;">
        mvn jetty:run
</pre></p>
<p><!-- #VIMPRESS_TAG# http://niftybits.files.wordpress.com/2011/12/wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201112wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201112wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201112vimpress3.odt /home/wpcom/public_html/wp-content/blogs.dir/8fe/814317/files/2011/12/wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201112wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201112wpid-homewpcompublic_htmlwp-contentblogs-dir8fe814317files201112vimpress3.odt --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/niftybits.wordpress.com/233/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/niftybits.wordpress.com/233/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/niftybits.wordpress.com/233/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/niftybits.wordpress.com/233/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/niftybits.wordpress.com/233/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/niftybits.wordpress.com/233/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/niftybits.wordpress.com/233/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/niftybits.wordpress.com/233/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/niftybits.wordpress.com/233/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/niftybits.wordpress.com/233/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/niftybits.wordpress.com/233/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/niftybits.wordpress.com/233/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/niftybits.wordpress.com/233/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/niftybits.wordpress.com/233/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=niftybits.wordpress.com&amp;blog=814317&amp;post=233&amp;subd=niftybits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://niftybits.wordpress.com/2011/12/30/unit-testing-apache-cxf-restful-services-code-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b0f94048aec1ef594f7c5e929e3f86ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Raghu</media:title>
		</media:content>
	</item>
	</channel>
</rss>
