<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>Tools/capp/Configuration.j</filename>
    </added>
    <added>
      <filename>Tools/capp/Generate.j</filename>
    </added>
    <added>
      <filename>Tools/capp/Templates/Application/Rakefile</filename>
    </added>
    <added>
      <filename>Tools/capp/Templates/NibApplication/Rakefile</filename>
    </added>
    <added>
      <filename>Tools/capp/Templates/ThemeDescriptor/Rakefile</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -67,7 +67,7 @@ file_d $STARTER_DOWNLOAD_APPLICATION =&gt; [$TOOLS_DOWNLOAD_ENV] do
 
     rm_rf($STARTER_DOWNLOAD_APPLICATION)
     mkdir_p($STARTER_DOWNLOAD)
-    system %{capp #{$STARTER_DOWNLOAD_APPLICATION} -t Application }
+    system %{capp gen #{$STARTER_DOWNLOAD_APPLICATION} -t Application --noconfig }
 
 end
 </diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
 /*
  * AppController.j
- * __Product__
+ * __project.name__
  *
- * Created by __Me__ on __Date__.
- * Copyright 2008 __MyCompanyName__. All rights reserved.
+ * Created by __user.name__ on __project.date__.
+ * Copyright __project.year__, __organization.name__ All rights reserved.
  */
 
 @import &lt;Foundation/CPObject.j&gt;</diff>
      <filename>Tools/capp/Templates/Application/AppController.j</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@
 	&lt;key&gt;CPApplicationDelegateClass&lt;/key&gt;
 	&lt;string&gt;AppController&lt;/string&gt;
 	&lt;key&gt;CPBundleName&lt;/key&gt;
-	&lt;string&gt;__Product__&lt;/string&gt;
+	&lt;string&gt;__project.name__&lt;/string&gt;
 	&lt;key&gt;CPPrincipalClass&lt;/key&gt;
 	&lt;string&gt;CPApplication&lt;/string&gt;
 &lt;/dict&gt;</diff>
      <filename>Tools/capp/Templates/Application/Info.plist</filename>
    </modified>
    <modified>
      <diff>@@ -4,18 +4,16 @@
     &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
 &lt;html xmlns = &quot;http://www.w3.org/1999/xhtml&quot; xml:lang = &quot;en&quot; lang = &quot;en&quot;&gt;
 &lt;!--
-//
-//  index-debug.html
-//  __Product__
-//
-//  Created by __Me__ on __Date__.
-//  Copyright 2008 __MyCompanyName__. All rights reserved.
-//
+ index-debug.html
+ __project.name__
+
+ Created by __user.name__ on __project.date__.
+ Copyright __project.year__, __organization.name__ All rights reserved.
 --&gt;
     &lt;head&gt;
         &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=EmulateIE7&quot; /&gt;
 
-        &lt;title&gt;__Product__&lt;/title&gt;
+        &lt;title&gt;__project.name__&lt;/title&gt;
 
         &lt;script type = &quot;text/javascript&quot;&gt;
             OBJJ_MAIN_FILE = &quot;main.j&quot;;
@@ -44,7 +42,7 @@
         &lt;script type = &quot;text/javascript&quot;&gt;
             document.write(&quot;&lt;div id='container'&gt;&lt;p id='content'&gt;&quot; +
                            &quot;&lt;img id='loadgraphic' width='16' height='16' src='Resources/spinner.gif' /&gt; &quot; +
-                           &quot;Loading __Product__...&lt;/p&gt;&lt;/div&gt;&quot;);
+                           &quot;Loading __project.name__...&lt;/p&gt;&lt;/div&gt;&quot;);
         &lt;/script&gt;
 
         &lt;noscript&gt;</diff>
      <filename>Tools/capp/Templates/Application/index-debug.html</filename>
    </modified>
    <modified>
      <diff>@@ -4,18 +4,16 @@
     &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
 &lt;html xmlns = &quot;http://www.w3.org/1999/xhtml&quot; xml:lang = &quot;en&quot; lang = &quot;en&quot;&gt;
 &lt;!--
-//
-//  index-debug.html
-//  __Product__
-//
-//  Created by __Me__ on __Date__.
-//  Copyright 2008 __MyCompanyName__. All rights reserved.
-//
+ index.html
+ __project.name__
+
+ Created by __user.name__ on __project.date__.
+ Copyright __project.year__, __organization.name__ All rights reserved.
 --&gt;
     &lt;head&gt;
         &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=EmulateIE7&quot; /&gt;
 
-        &lt;title&gt;__Product__&lt;/title&gt;
+        &lt;title&gt;__project.name__&lt;/title&gt;
 
         &lt;script type = &quot;text/javascript&quot;&gt;
             OBJJ_MAIN_FILE = &quot;main.j&quot;;
@@ -43,7 +41,7 @@
         &lt;script type = &quot;text/javascript&quot;&gt;
             document.write(&quot;&lt;div id='container'&gt;&lt;p id='content'&gt;&quot; +
                            &quot;&lt;img id='loadgraphic' width='16' height='16' src='Resources/spinner.gif' /&gt; &quot; +
-                           &quot;Loading __Product__...&lt;/p&gt;&lt;/div&gt;&quot;);
+                           &quot;Loading __project.name__...&lt;/p&gt;&lt;/div&gt;&quot;);
         &lt;/script&gt;
 
         &lt;noscript&gt;</diff>
      <filename>Tools/capp/Templates/Application/index.html</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
 /*
- * main.j
- * __Product__
+ * AppController.j
+ * __project.name__
  *
- * Created by __Me__ on __Date__.
- * Copyright 2008 __MyCompanyName__. All rights reserved.
+ * Created by __user.name__ on __project.date__.
+ * Copyright __project.year__, __organization.name__ All rights reserved.
  */
 
 @import &lt;Foundation/Foundation.j&gt;</diff>
      <filename>Tools/capp/Templates/Application/main.j</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,10 @@
+/*
+ * AppController.j
+ * __project.name__
+ *
+ * Created by __user.name__ on __project.date__.
+ * Copyright __project.year__, __organization.name__ All rights reserved.
+ */
 
 @import &lt;Foundation/CPObject.j&gt;
 </diff>
      <filename>Tools/capp/Templates/NibApplication/AppController.j</filename>
    </modified>
    <modified>
      <diff>@@ -4,18 +4,16 @@
     &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
 &lt;html xmlns = &quot;http://www.w3.org/1999/xhtml&quot; xml:lang = &quot;en&quot; lang = &quot;en&quot;&gt;
 &lt;!--
-//
-//  index-debug.html
-//  __Product__
-//
-//  Created by __Me__ on __Date__.
-//  Copyright 2008 __MyCompanyName__. All rights reserved.
-//
+ index-debug.html
+ __project.name__
+
+ Created by __user.name__ on __project.date__.
+ Copyright __project.year__, __organization.name__ All rights reserved.
 --&gt;
     &lt;head&gt;
         &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=EmulateIE7&quot; /&gt;
 
-        &lt;title&gt;__Product__&lt;/title&gt;
+        &lt;title&gt;__project.name__&lt;/title&gt;
 
         &lt;script type = &quot;text/javascript&quot;&gt;
             OBJJ_MAIN_FILE = &quot;main.j&quot;;
@@ -44,7 +42,7 @@
         &lt;script type = &quot;text/javascript&quot;&gt;
             document.write(&quot;&lt;div id='container'&gt;&lt;p id='content'&gt;&quot; +
                            &quot;&lt;img id='loadgraphic' width='16' height='16' src='Resources/spinner.gif' /&gt; &quot; +
-                           &quot;Loading __Product__...&lt;/p&gt;&lt;/div&gt;&quot;);
+                           &quot;Loading __project.name__...&lt;/p&gt;&lt;/div&gt;&quot;);
         &lt;/script&gt;
 
         &lt;noscript&gt;</diff>
      <filename>Tools/capp/Templates/NibApplication/index-debug.html</filename>
    </modified>
    <modified>
      <diff>@@ -4,18 +4,16 @@
     &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
 &lt;html xmlns = &quot;http://www.w3.org/1999/xhtml&quot; xml:lang = &quot;en&quot; lang = &quot;en&quot;&gt;
 &lt;!--
-//
-//  index-debug.html
-//  __Product__
-//
-//  Created by __Me__ on __Date__.
-//  Copyright 2008 __MyCompanyName__. All rights reserved.
-//
+ index.html
+ __project.name__
+
+ Created by __user.name__ on __project.date__.
+ Copyright __project.year__, __organization.name__ All rights reserved.
 --&gt;
     &lt;head&gt;
         &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=EmulateIE7&quot; /&gt;
 
-        &lt;title&gt;__Product__&lt;/title&gt;
+        &lt;title&gt;__project.name__&lt;/title&gt;
 
         &lt;script type = &quot;text/javascript&quot;&gt;
             OBJJ_MAIN_FILE = &quot;main.j&quot;;
@@ -43,7 +41,7 @@
         &lt;script type = &quot;text/javascript&quot;&gt;
             document.write(&quot;&lt;div id='container'&gt;&lt;p id='content'&gt;&quot; +
                            &quot;&lt;img id='loadgraphic' width='16' height='16' src='Resources/spinner.gif' /&gt; &quot; +
-                           &quot;Loading __Product__...&lt;/p&gt;&lt;/div&gt;&quot;);
+                           &quot;Loading __project.name__...&lt;/p&gt;&lt;/div&gt;&quot;);
         &lt;/script&gt;
 
         &lt;noscript&gt;</diff>
      <filename>Tools/capp/Templates/NibApplication/index.html</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
 /*
- * main.j
- * __Product__
+ * AppController.j
+ * __project.name__
  *
- * Created by __Me__ on __Date__.
- * Copyright 2008 __MyCompanyName__. All rights reserved.
+ * Created by __user.name__ on __project.date__.
+ * Copyright __project.year__, __organization.name__ All rights reserved.
  */
 
 @import &lt;Foundation/Foundation.j&gt;
@@ -12,9 +12,7 @@
 @import &quot;AppController.j&quot;
 
 
-CPLogRegister(CPLogPopup);
-
 function main(args, namedArgs)
 {
     CPApplicationMain(args, namedArgs);
-}
\ No newline at end of file
+}</diff>
      <filename>Tools/capp/Templates/NibApplication/main.j</filename>
    </modified>
    <modified>
      <diff>@@ -1,33 +1,36 @@
 /*
  * ThemeDescriptors.j
- * __Product__
+ * __project.name__
  *
- * Created by __Me__ on __Date__.
- * Copyright 2008 __MyCompanyName__. All rights reserved.
+ * Created by __user.name__ on __project.date__.
+ * Copyright __project.year__, __organization.name__ All rights reserved.
  */
 
 @import &lt;Foundation/CPObject.j&gt;
 
 
-@implementation __Product__ThemeDescriptor : CPObject
+@implementation __project.nameasidentifier__ThemeDescriptor : CPObject
 {
 }
 
 + (CPString)themeName
 {
-    return @&quot;__Product__&quot;;
+    return @&quot;__project.name__&quot;;
 }
 
-+ (CPTextField)themedTextField
++ (CPButton)themedStandardButton
 {
-    var textField = [[CPTextField alloc] initWithFrame:CGRectMake(0.0, 0.0, 200.0, 20.0)];
+    var button = [[CPButton alloc] initWithFrame:CGRectMake(0.0, 0.0, 100.0, 20.0)];
     
-    [textField setValue:[CPColor blueColor] forThemedAttributeName:@&quot;bezel-color&quot;];
-    [textField setValue:[CPColor redColor] forThemedAttributeName:@&quot;text-color&quot;];
-    
-    [textField setStringValue:@&quot;Yikes!&quot;];
+    [button setValue:[CPColor blueColor] forThemeAttribute:@&quot;bezel-color&quot;];
+    [button setValue:[CPColor greenColor] forThemeAttribute:@&quot;bezel-color&quot; inState:CPThemeStateHighlighted];
+
+    [button setValue:[CPColor redColor] forThemeAttribute:@&quot;text-color&quot;];
+    [button setValue:[CPColor yellowColor] forThemeAttribute:@&quot;text-color&quot; inState:CPThemeStateHighlighted];
+
+    [button setTitle:@&quot;Yikes!&quot;];
     
-    return textField;
+    return button;
 }
 
 @end</diff>
      <filename>Tools/capp/Templates/ThemeDescriptor/ThemeDescriptors.j</filename>
    </modified>
    <modified>
      <diff>@@ -4,18 +4,16 @@
     &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
 &lt;html xmlns = &quot;http://www.w3.org/1999/xhtml&quot; xml:lang = &quot;en&quot; lang = &quot;en&quot;&gt;
 &lt;!--
-//
-//  index-debug.html
-//  __Product__
-//
-//  Created by __Me__ on __Date__.
-//  Copyright 2008 __MyCompanyName__. All rights reserved.
-//
+ index-debug.html
+ __project.name__
+
+ Created by __user.name__ on __project.date__.
+ Copyright __project.year__, __organization.name__ All rights reserved.
 --&gt;
     &lt;head&gt;
         &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=EmulateIE7&quot; /&gt;
 
-        &lt;title&gt;__Product__&lt;/title&gt;
+        &lt;title&gt;__project.name__&lt;/title&gt;
 
         &lt;script type = &quot;text/javascript&quot;&gt;
             OBJJ_MAIN_FILE = &quot;main.j&quot;;
@@ -44,7 +42,7 @@
         &lt;script type = &quot;text/javascript&quot;&gt;
             document.write(&quot;&lt;div id='container'&gt;&lt;p id='content'&gt;&quot; +
                            &quot;&lt;img id='loadgraphic' width='16' height='16' src='Resources/spinner.gif' /&gt; &quot; +
-                           &quot;Loading __Product__...&lt;/p&gt;&lt;/div&gt;&quot;);
+                           &quot;Loading __project.name__...&lt;/p&gt;&lt;/div&gt;&quot;);
         &lt;/script&gt;
 
         &lt;noscript&gt;</diff>
      <filename>Tools/capp/Templates/ThemeDescriptor/index-debug.html</filename>
    </modified>
    <modified>
      <diff>@@ -4,18 +4,16 @@
     &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
 &lt;html xmlns = &quot;http://www.w3.org/1999/xhtml&quot; xml:lang = &quot;en&quot; lang = &quot;en&quot;&gt;
 &lt;!--
-//
-//  index-debug.html
-//  __Product__
-//
-//  Created by __Me__ on __Date__.
-//  Copyright 2008 __MyCompanyName__. All rights reserved.
-//
+ index.html
+ __project.name__
+
+ Created by __user.name__ on __project.date__.
+ Copyright __project.year__, __organization.name__ All rights reserved.
 --&gt;
     &lt;head&gt;
         &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=EmulateIE7&quot; /&gt;
 
-        &lt;title&gt;__Product__&lt;/title&gt;
+        &lt;title&gt;__project.name__&lt;/title&gt;
 
         &lt;script type = &quot;text/javascript&quot;&gt;
             OBJJ_MAIN_FILE = &quot;main.j&quot;;
@@ -43,7 +41,7 @@
         &lt;script type = &quot;text/javascript&quot;&gt;
             document.write(&quot;&lt;div id='container'&gt;&lt;p id='content'&gt;&quot; +
                            &quot;&lt;img id='loadgraphic' width='16' height='16' src='Resources/spinner.gif' /&gt; &quot; +
-                           &quot;Loading __Product__...&lt;/p&gt;&lt;/div&gt;&quot;);
+                           &quot;Loading __project.name__...&lt;/p&gt;&lt;/div&gt;&quot;);
         &lt;/script&gt;
 
         &lt;noscript&gt;</diff>
      <filename>Tools/capp/Templates/ThemeDescriptor/index.html</filename>
    </modified>
    <modified>
      <diff>@@ -5,129 +5,56 @@ importClass(java.io.OutputStreamWriter);
 
 @import &lt;Foundation/Foundation.j&gt;
 
+@import &quot;Configuration.j&quot;
+@import &quot;Generate.j&quot;
+
+
 function main()
 {
     if (system.args.length &lt; 1)
         return printUsage();
 
     var index = 0,
-        count = system.args.length,
-        
-        shouldSymbolicallyLink = false,
-        justFrameworks = false,
-        
-        template = &quot;Application&quot;,
-        destination = &quot;&quot;;
+        count = system.args.length;
 
     for (; index &lt; count; ++index)
     {
         var argument = system.args[index];
         
-        switch (system.args[index])
-        {
-            case &quot;-l&quot;:              shouldSymbolicallyLink = true;
-                                    break;
-                                    
-            case &quot;-h&quot;:
-            case &quot;--help&quot;:          printUsage();
-                                    return;
-            
-            case &quot;-t&quot;:
-            case &quot;--template&quot;:      template = system.args[++index];
-                                    break;
-                                
-            case &quot;-f&quot;:
-            case &quot;--frameworks&quot;:    justFrameworks = true;
-                                    break;
-                                
-            default:                destination = argument;
-        }
-    }
-
-    var sourceTemplate = new java.io.File(OBJJ_HOME + &quot;/lib/capp/Resources/Templates/&quot; + template),
-        destinationProject = new java.io.File(destination);
-    
-    if (!destinationProject.exists())
-    {
-        if (!justFrameworks)
+        switch (argument)
         {
-            exec([&quot;cp&quot;, &quot;-vR&quot;, sourceTemplate.getCanonicalPath(), destinationProject.getCanonicalPath()], true);
-
-            var files = getFiles(destinationProject, ['j', &quot;plist&quot;, &quot;html&quot;]),
-                index = 0,
-                count = files.length;
+            case &quot;version&quot;:
+            case &quot;--version&quot;:   return print(&quot;capp version 0.7.0&quot;);
 
-            for (; index &lt; count; ++index)
-            {
-                var file = files[index],
-                    contents = readFile(file);
+            case &quot;-h&quot;:
+            case &quot;--help&quot;:      return printUsage();
 
-                contents = contents.replace(/__Product__/g, destinationProject.getName());
+            case &quot;config&quot;:      return config.apply(this, system.args.slice(index + 1));
 
-                writeContentsToFile(contents, file);
-            }
+            case &quot;gen&quot;:         return gen.apply(this, system.args.slice(index + 1));
+            
+            default:            print(&quot;unknown command &quot; + argument);
         }
-        
-        createFrameworksInFile(destinationProject, shouldSymbolicallyLink);
     }
-    else
-        print(&quot;Directory already exists&quot;);
-}
-
-function createFrameworksInFile(/*File*/ aFile, /*Boolean*/ shouldSymbolicallyLink)
-{
-        var destinationFrameworks = new java.io.File(aFile.getCanonicalPath()+ &quot;/Frameworks&quot;),
-            destinationDebugFrameworks = new java.io.File(aFile.getCanonicalPath() + &quot;/Frameworks/Debug&quot;);
-
-        if (!shouldSymbolicallyLink)
-        {
-            var sourceFrameworks = new java.io.File(OBJJ_HOME + &quot;/lib/Frameworks&quot;);
-        
-            exec([&quot;cp&quot;, &quot;-vR&quot;, sourceFrameworks.getCanonicalPath(), destinationFrameworks.getCanonicalPath()], true);
-
-            return true;
-        }
-        
-        var BUILD = system.env[&quot;CAPP_BUILD&quot;] || system.env[&quot;STEAM_BUILD&quot;];
-        
-        if (!BUILD)
-            throw &quot;CAPP_BUILD or STEAM_BUILD must be defined&quot;;
-        
-        // Release Frameworks
-        new java.io.File(destinationFrameworks).mkdir();
-        
-        exec([&quot;ln&quot;, &quot;-s&quot;,   new java.io.File(BUILD + &quot;/Release/Objective-J&quot;).getCanonicalPath(),
-                            new java.io.File(aFile.getCanonicalPath() + &quot;/Frameworks/Objective-J&quot;).getCanonicalPath()], true);
-
-        exec([&quot;ln&quot;, &quot;-s&quot;,   new java.io.File(BUILD + &quot;/Release/Foundation&quot;).getCanonicalPath(),
-                            new java.io.File(aFile.getCanonicalPath() + &quot;/Frameworks/Foundation&quot;).getCanonicalPath()], true);
-
-        exec([&quot;ln&quot;, &quot;-s&quot;,   new java.io.File(BUILD + &quot;/Release/AppKit&quot;).getCanonicalPath(),
-                            new java.io.File(aFile.getCanonicalPath() + &quot;/Frameworks/AppKit&quot;).getCanonicalPath()], true);
-
-        // Debug Frameworks
-        new java.io.File(destinationDebugFrameworks).mkdir();
-        
-        exec([&quot;ln&quot;, &quot;-s&quot;,   new java.io.File(BUILD + &quot;/Debug/Objective-J&quot;).getCanonicalPath(),
-                            new java.io.File(aFile.getCanonicalPath() + &quot;/Frameworks/Debug/Objective-J&quot;).getCanonicalPath()], true);
-
-        exec([&quot;ln&quot;, &quot;-s&quot;,   new java.io.File(BUILD + &quot;/Debug/Foundation&quot;).getCanonicalPath(),
-                            new java.io.File(aFile.getCanonicalPath() + &quot;/Frameworks/Debug/Foundation&quot;).getCanonicalPath()], true);
-
-        exec([&quot;ln&quot;, &quot;-s&quot;,   new java.io.File(BUILD + &quot;/Debug/AppKit&quot;).getCanonicalPath(),
-                            new java.io.File(aFile.getCanonicalPath() + &quot;/Frameworks/Debug/AppKit&quot;).getCanonicalPath()], true);
 }
 
 function printUsage()
 {
-    print(&quot;capp /path/to/your/app [options]&quot;);
+    print(&quot;capp [--version] COMMAND [ARGS]&quot;);
+    print(&quot;    --version         Print version&quot;);
+    print(&quot;    -h, --help        Print usage&quot;);
+    print(&quot;&quot;);
+    print(ANSITextApplyProperties(&quot;    gen&quot;, ANSI_BOLD) + &quot; PATH          Generate new project at PATH from a predefined template&quot;);
     print(&quot;    -l                Symlink the Frameworks folder to your $CAPP_BUILD or $STEAM_BUILD directory&quot;);
     print(&quot;    -t, --template    Specify the template name to use (listed in capp/Resources/Templates)&quot;);
     print(&quot;    -f, --frameworks  Create only frameworks, not a full application&quot;);
-    print(&quot;    -h, --help        Print usage&quot;);
+    print(&quot;&quot;);
+    print(ANSITextApplyProperties(&quot;    config &quot;, ANSI_BOLD));
+    print(&quot;    name value        Set a value for a given key&quot;);
+    print(&quot;    -l, --list        List all variables set in config file.&quot;);
+    print(&quot;    --get name        Get the value for a given key&quot;);
 }
 
-
 function writeContentsToFile(/*String*/ aString, /*File*/ aFile)
 {
     var writer = new BufferedWriter(new FileWriter(aFile));
@@ -207,11 +134,10 @@ function getFiles(/*File*/ sourceDirectory, /*nil|String|Array&lt;String&gt;*/ extensi
                 else if (name.substring(name.length - extensions.length - 1) === (&quot;.&quot; + extensions))
                     isValidExtension = true;
                 
-            if (isValidExtension)
-                matches.push(file);
-            
             if (file.isDirectory())
                 matches = matches.concat(getFiles(file, extensions, exclusions));
+            else if (isValidExtension)
+                matches.push(file);
         }
     }
     </diff>
      <filename>Tools/capp/main.j</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>45e3f776cf5157d37575b382903f20f83822ac67</id>
    </parent>
  </parents>
  <author>
    <name>Francisco Tolmasky</name>
    <email>francisco@280north.com</email>
  </author>
  <url>http://github.com/280north/cappuccino/commit/a0cd03caa439f10f07e7853a632132351f22e12f</url>
  <id>a0cd03caa439f10f07e7853a632132351f22e12f</id>
  <committed-date>2009-05-18T15:57:39-07:00</committed-date>
  <authored-date>2009-05-18T15:57:39-07:00</authored-date>
  <message>Added config option to capp and default Rakefiles for new projects.

Reviewed by me.</message>
  <tree>3261b6f5536112ae4934b48e42112ac05e6f62c1</tree>
  <committer>
    <name>Francisco Tolmasky</name>
    <email>francisco@280north.com</email>
  </committer>
</commit>
