<?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>Casey Watson &#187; Linux</title>
	<atom:link href="http://casedogdesigns.com/wordpress/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://casedogdesigns.com/wordpress</link>
	<description>Outdated Thoughts</description>
	<lastBuildDate>Tue, 01 Dec 2009 22:08:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>CVS Shortcuts in Vim</title>
		<link>http://casedogdesigns.com/wordpress/cvs-shortcuts-in-vim/</link>
		<comments>http://casedogdesigns.com/wordpress/cvs-shortcuts-in-vim/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 19:42:20 +0000</pubDate>
		<dc:creator>Casey</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://casedogdesigns.com/wordpress/?p=27</guid>
		<description><![CDATA[Vim is an incredibly flexible text editor. I continue to be surprised by the number of strange things it&#8217;s capable of doing. For example, there is a crude Tetris clone available for Vim.
A bit more useful, though, is the cvsmenu script for Vim. This is a fairly polished plug-in that will allow you to do [...]]]></description>
			<content:encoded><![CDATA[<p>Vim is an incredibly flexible text editor. I continue to be surprised by the number of strange things it&#8217;s capable of doing. For example, there is a crude Tetris clone available for Vim.</p>
<p>A bit more useful, though, is the cvsmenu script for Vim. This is a fairly polished plug-in that will allow you to do all of the basic CVS tasks from inside your text editor. The supported CVS commands are: add, diff, commit, update, status, shortstatus, localstatus, and revertchanges.</p>
<p>Since the plug-in is poorly documented, I thought that I would take this opportunity to explain how to use it.</p>
<p><strong>Installation</strong></p>
<p>In Ubuntu, this is pretty simple.</p>
<blockquote><p>% sudo aptitude install vim-scripts</p>
<p>% vim-addons install cvsmenu</p></blockquote>
<p>This will install the package and enable the plugin for your user.</p>
<p><strong>Usage</strong></p>
<p>I will assume that you already have a versioned source tree checked out on your system. Start by opening a file in this tree. You can open a diff view by typing &#8220;,cd&#8221;. <em>Note: that&#8217;s comma, C, D.</em></p>
<p><a href="http://casedogdesigns.com/wordpress/wp-content/uploads/2008/06/cvs-diff.png"><img class="alignnone size-medium wp-image-29" title="cvs-diff" src="http://casedogdesigns.com/wordpress/wp-content/uploads/2008/06/cvs-diff-300x166.png" alt="" width="300" height="166" /></a></p>
<p style="clear:left;">
<p>The local revision is shown on the right, the remote revision is on the left. This is a bit backwards from the Eclipse and Netbeans way of doing things. Typing CTRL+W+W will move your cursor between the two revisions. <em>I haven&#8217;t found an easy way to move a change to the right, but I would be interested in reader comments.</em></p>
<p>Here is an index of the commands. They may be documentation somewhere but I was only able to find them by looking at the plug-in source code.</p>
<ul>
<li>,ca &#8211; Add</li>
<li>,cd &#8211; Diff</li>
<li>,ci &#8211; Commit</li>
<li>,cu &#8211; Update</li>
<li>,cs &#8211; Status</li>
<li>,ch &#8211; Short Status</li>
<li>,cc &#8211; Local Status</li>
<li>,cv &#8211; Revert Local Changes. The odd thing about this is that it only updates the file on disk. It doesn&#8217;t actually revert the changes in the open editor.</li>
</ul>
<p>Modern IDEs do ease the pain of performing mundane versioning tasks such as merging. But, this is a nice alternative to those heavy-weight tools.</p>
]]></content:encoded>
			<wfw:commentRss>http://casedogdesigns.com/wordpress/cvs-shortcuts-in-vim/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
