<?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>Software Configuration Management and Agile Software Development &#187; SCM systems</title>
	<atom:link href="http://accurev.com/blog/tag/scm-systems/feed/" rel="self" type="application/rss+xml" />
	<link>http://accurev.com/blog</link>
	<description>SCM and Agile Software Development Blog</description>
	<lastBuildDate>Fri, 03 Feb 2012 19:28:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Agile Programmable Completion &#8211; AccuRev + GNU Bash</title>
		<link>http://accurev.com/blog/2007/10/18/agile-programmable-completion-accurev-gnu-bash/</link>
		<comments>http://accurev.com/blog/2007/10/18/agile-programmable-completion-accurev-gnu-bash/#comments</comments>
		<pubDate>Thu, 18 Oct 2007 19:59:02 +0000</pubDate>
		<dc:creator>dave</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Agile SCM]]></category>
		<category><![CDATA[command line]]></category>
		<category><![CDATA[GNU Bash]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[programmable completion]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[SCM systems]]></category>
		<category><![CDATA[shell facility]]></category>
		<category><![CDATA[Software Configuration Management]]></category>
		<category><![CDATA[Stream-based]]></category>
		<category><![CDATA[TAB Completion]]></category>
		<category><![CDATA[Windows users]]></category>

		<guid isPermaLink="false">http://accurev.wordpress.com/2007/10/18/agile-programmable-completion-accurev-gnu-bash/</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/18/agile-programmable-completion-accurev-gnu-bash/' addthis:title='Agile Programmable Completion &#8211; AccuRev + GNU Bash ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>When at the command line (CLI), productivity means keeping your hands on the keyboard. But once your fingers have memorized all the commands, flags, static arguments, and common usage patterns &#8212; can you still get faster? Yes. Programmable completion is a shell facility that allows for customizing the command line in real-time as it is [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/18/agile-programmable-completion-accurev-gnu-bash/' addthis:title='Agile Programmable Completion &#8211; AccuRev + GNU Bash '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/18/agile-programmable-completion-accurev-gnu-bash/' addthis:title='Agile Programmable Completion &#8211; AccuRev + GNU Bash ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p>When at the <a href="http://en.wikipedia.org/wiki/Command_line_interface" target="_blank">command line</a> (CLI), productivity means keeping your hands on the keyboard. But once your fingers have memorized all the commands, flags, static arguments, and common usage patterns &#8212; can you still get faster?</p>
<p><span style="font-weight:bold">Yes</span>.</p>
<p>Programmable completion is a shell facility that allows for customizing the command line in real-time as it is typed. Also referred to as &#8220;TAB Completion&#8221;, many shells in both Linux and Windows have a default implementation that support completion on filenames and directories. If you&#8217;re lucky, you&#8217;ll even get environment variables and functions.</p>
<p>Let&#8217;s move to software configuration management (SCM). Various branch and label-based SCM systems like CVS have basic tab completion for commands and flags. Thats a good start. But an <span style="font-style:italic">agile </span>user needs a context-sensitive, custom-data completion facility. What you ~really~ want is completion on your own data &#8212; branch names, labels, usernames, etc.</p>
<p>Users of stream-based AccuRev are in luck.</p>
<p>Do you use AccuRev on Linux? If so, <a href="http://www.fepus.net/software/accurev-tools/accurev-bash-completion-3.0.tar.gz">download </a>the latest GNU Bash (2.05+) completion for AccuRev 4.5.x. Here is the <a href="http://www.fepus.net/software/accurev-tools/accurev-bash-completion-3_0/README" target="_blank">README</a>. You&#8217;ll never have to memorize flags or type stream names again.</p>
<p>Coming in Part 2 &#8212; Support for Windows users.</p>
<p>/happy tabbing/ &#8211; dave</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/18/agile-programmable-completion-accurev-gnu-bash/' addthis:title='Agile Programmable Completion &#8211; AccuRev + GNU Bash '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2007/10/18/agile-programmable-completion-accurev-gnu-bash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

