<?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>Yan Pritzker &#187; productivity</title>
	<atom:link href="http://yanpritzker.com/category/productivity/feed/" rel="self" type="application/rss+xml" />
	<link>http://yanpritzker.com</link>
	<description>photographer, entrepreneur, software engineer, musician, skier</description>
	<lastBuildDate>Sat, 21 Jan 2012 01:18:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<atom:link rel="next" href="http://yanpritzker.com/category/productivity/feed/?page=2" />

		<item>
		<title>Vim demystified: ten commands you can start using today</title>
		<link>http://yanpritzker.com/2011/11/30/vim-demystified-ten-commands-you-can-start-using-today/</link>
		<comments>http://yanpritzker.com/2011/11/30/vim-demystified-ten-commands-you-can-start-using-today/#comments</comments>
		<pubDate>Wed, 30 Nov 2011 15:01:38 +0000</pubDate>
		<dc:creator>yan</dc:creator>
				<category><![CDATA[productivity]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://yanpritzker.com/?p=375</guid>
		<description><![CDATA[.vimtable { text-align: left; width: 600px; border: 1px solid #aaa; margin-bottom: 1em } .vimtable td,th { padding: 1em; } .vimtable tr td {border-bottom: 1px solid #ddd } .vimtable tr.last td { border-bottom: none} .vimtable td.first { font-weight: bold; font-size: 120%; } .vimtable strong { font-size: 120%; background: lightyellow; } .vimtable tr.warning td { background: #ffffcc; [...]]]></description>
			<content:encoded><![CDATA[<style type="text/css" media="screen">
  .vimtable { text-align: left; width: 600px; border: 1px solid #aaa; margin-bottom: 1em }
  .vimtable td,th { padding: 1em; }
  .vimtable tr td {border-bottom: 1px solid #ddd  }
  .vimtable tr.last td { border-bottom: none}
  .vimtable td.first { font-weight: bold; font-size: 120%; }
  .vimtable strong { font-size: 120%; background: lightyellow; }
  .vimtable tr.warning td { background: #ffffcc; color: #1E1E1A}
  .vimtable code { background: #eee; padding: 0.5em; margin-top:1em; display:block }
</style>
<p>These commands are not only extremely useful but also mnemonic and easy to learn for a huge payoff in keystroke savings. These are the common compound commands I use every day, and I think it&#8217;s easier to dive in this way than to try to learn vim key by key. </p>
<table class="vimtable">
<tr class='warning'>
<td colspan='100%'>Read Me First! <a href='http://dailyvim.blogspot.com/2008/04/ways-to-avoid-esc-key.html'>Save your wrists, stop using ESC in vim</a></td>
</tr>
<tr>
<td class="first">yaw</td>
<td>
    <strong>y</strong>ank <strong>a</strong>round <strong>w</strong>ord &#8211; copy the current word, no matter where your cursor is inside the word</p>
</td>
</tr>
<tr>
<td class="first">ci&#8221;</td>
<td><strong>c</strong>hange <strong>i</strong>nside quote (or any other enclosure). Example: <strong>ci(</strong> to change something surrounded by parentheses. But what&#8217;s <em>really cool</em> is that you can invoke this from anywhere inside a line of code, so even if the string you want to change is far away, typing <strong>ci&#8221;</strong> will put your right inside the string, ready to change it.</td>
</tr>
<tr>
<td class="first">ctX</td>
<td>
      <strong>c</strong>hange <strong>t</strong>ill <strong>X</strong> (any character); and in general the use of <strong>tX</strong> where X is any character, to move to that character. You can combine the motion with another command such as <strong>dtX</strong> (delete till X), <strong>ytX</strong> (yank till X), or <strong>vtX</strong> (visually select till X).</p>
</td>
</tr>
<tr>
<td class="first">gf</td>
<td>
<p>      <strong>g</strong>o to <strong>f</strong>ile &#8211; open the file under the cursor (useful for traversing file references inside codebases)
    </td>
</tr>
<tr>
<td class="first">* (Shift-8)</td>
<td>Takes you to the next occurrance of the word you&#8217;re currently looking at (often the best way to navigate to the definition of a method, if witin the same file)</td>
</tr>
<tr>
<td class="first">Ctrl-6</td>
<td>Jumps you back to the previous file you were editing. I use this so often I remapped it to just the capital letter Z:<br />
      <code> nnoremap &lt;silent&gt; Z &lt;C-^&gt;</code>
    </td>
</tr>
<tr>
<td class="first">Ctrl-]</td>
<td>
<p>
        Again, immensly useful for traversing codebases, this command relies on exuberant ctags (<a href="http://www.thegeekstuff.com/2009/04/ctags-taglist-vi-vim-editor-as-sourece-code-browser/">set up ctags</a>) to take you to method and class definitions. I remap this to simply capital <strong>F</strong>:
      </p>
<p>      <code>nnoremap &lt;silent&gt; F &lt;C-]&gt;</code></p>
<p>
        I believe all highly used commands should be a single letter, as close as possible to home row.
    </p>
</td>
</tr>
<td class="first">mX<br/>&#8216;X</td>
<td>
<p>
        You can bookmark a file very quickly by using <strong>m</strong> plus any capital letter. Then to go back to the file at any time, hit <strong>&#8216;</strong> and the same letter again.
      </p>
</td>
<tr class='warning'>
<td colspan='100%'>The commands in this section are based on custom aliases. Please check that the alias doesn&#8217;t overload a key you&#8217;re used to.</td>
</tr>
<tr>
<td class="first">K</td>
<td>
      For super fast code navigation, nothing beats the <A href="https://github.com/tjennings/git-grep-vim">git grep </a>plugin combined with an alias to grep the <strong>K</strong>urrent word under the cursor:</p>
<p>          <code>nnoremap &lt;silent&gt; K :GitGrep &lt;cword&gt;&lt;CR&gt;</code>
    </td>
</tr>
<tr>
<td class="first">vv<br/>ss</td>
<td>
      Splitting windows is a common and every day task, so you shouldn&#8217;t spend extra time typing to do so. Just double tap <strong>vv</strong> or <strong>ss</strong>:<br />
      <code>nnoremap &lt;silent&gt; vv &lt;C-w&gt;v<br/>nnoremap &lt;silent&gt; ss &lt;C-w&gt;s</code>
    </td>
</tr>
<tr class='last'>
<td class="first">Window navigation using J,K,I,M</td>
<td><em>Bonus:</em> A very common task for which the default key bindings involve way too many keystrokes. Use directional style keys to move between windows:<br />
      <code>nnoremap &lt;silent&gt; H &lt;C-w&gt;h<br />
      nnoremap &lt;silent&gt; L &lt;C-w&gt;l<br />
      nnoremap &lt;silent&gt; I &lt;C-w&gt;k<br />
      nnoremap &lt;silent&gt; M &lt;C-w&gt;j</code>
    </td>
</tr>
</table>
<div style='background:#eee; width:600px; margin-top:1em; margin-bottom:1em'>
<p style='margin: 1em;'>
If you liked this post, you might want to watch <a href="http://github.com/skwp/dotfiles">my dotfiles repo on github</a>. My dotfiles follow a keystroke minimizing principle where all common tools are only a few characters long, and are in the process of being cleaned up in order to release as a product targeting keystroke saving enthusiasts (this is especially important for those concerned with RSI prevention).
</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://yanpritzker.com/2011/11/30/vim-demystified-ten-commands-you-can-start-using-today/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why you should be napping right now</title>
		<link>http://yanpritzker.com/2008/06/17/why-you-should-be-napping-right-now/</link>
		<comments>http://yanpritzker.com/2008/06/17/why-you-should-be-napping-right-now/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 20:00:57 +0000</pubDate>
		<dc:creator>yan</dc:creator>
				<category><![CDATA[lifehack]]></category>
		<category><![CDATA[nap]]></category>
		<category><![CDATA[productivity]]></category>
		<category><![CDATA[sleep]]></category>
		<category><![CDATA[thoughts]]></category>

		<guid isPermaLink="false">http://skwpspace.com/?p=170</guid>
		<description><![CDATA[More and more studies are published every day on the exceptional benefits of napping. Today I found a great link on del.icio.us that gives a great overview of different lengths of nap times and their benefits on cognition. Naps reduce stress, increase alertness and productivity, boost memory and learning, stimulate creativity, and boost the immune [...]]]></description>
			<content:encoded><![CDATA[<p>More and more studies are published every day on the exceptional benefits of napping. Today I found a great link on del.icio.us that gives a <a href="http://www.boston.com/bostonglobe/ideas/naps/">great overview of different lengths of nap times</a> and their benefits on cognition. Naps reduce stress, increase alertness and productivity, boost memory and learning, stimulate creativity, and boost the immune system, among other things.</p>
<p>It&#8217;s too bad that so much productivity in America is lost due to under sleeping. If only we could nap at work. What if every office had a room full of beds that could be used for 20-45 minutes for an afternoon nap? How much productivity would we gain? How much happier would people be? These are interesting questions to ask, and difficult results to measure. </p>
<p>A while ago, I read about a company called <a href="http://www.metronaps.com/mn/metronaps_in_the_workplace/offices">MetroNaps</a> that provided sleep furniture for offices. On their website, they quote the medical director of Proctor &#038; Gamble with a positive review of their service. While the MetroNaps pods cost around $8000, a much cheaper solution can be implemented with a simple bed or couch, and perhaps a free laundry service that provided clean sheets. </p>
<p>Of course, having a place to sleep is one thing, but getting acceptance from your colleagues that you will be taking a nap, something that may be judged as lazy, is quite another. For that we need a culture shift, not easy to achieve, but it has to start with education about the benefits of napping. I look forward to more studies that better quantify the productivity hours gained from a simple mid-day nap.</p>
<p>More links on napping:</p>
<ul>
<li><a href="http://www.sleepfoundation.org/site/c.huIXKjM0IxF/b.2419153/k.8430/The_Short_Story_on_Napping.htm">sleepfoundation.org</a></li>
<li><a href="http://www.talkaboutsleep.com/sleep-disorders/archives/insomnia_drjacobs_benefits_of_naps.htm">talkaboutsleep.com</a></li>
<li><a href="http://ririanproject.com/2007/09/05/10-benefits-of-power-napping-and-how-to-do-it/">riranproject.com</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://yanpritzker.com/2008/06/17/why-you-should-be-napping-right-now/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

