<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -2,37 +2,34 @@ module GettextToI18n
   
   class Base
     attr_reader :translations
+    LOCALE_DIR = RAILS_ROOT + '/config/locales/'
+    STANDARD_LOCALE_FILE = LOCALE_DIR + 'template.yml'
+    DEFAULT_LANGUAGE = 'some-LAN'
     
     def initialize
       @translations = {}
       transform_files!(Files.controller_files, :controller)
       transform_files!(Files.view_files, :view)
       transform_files!(Files.helper_files, :helper)
-      puts @translations.to_yaml
+      transform_files!(Files.lib_files, :lib)
     end
     
-    
+    # Walks all files and converts them all to the new format
     def transform_files!(files, type)  
-     
       files.each do |file|
         alternative_filename = Base.get_name(file, type)
-        n = Namespace.new(['txt', type, alternative_filename])
+        n = Namespace.new([DEFAULT_LANGUAGE, 'txt', type, alternative_filename])
         File.read(file).each do |line|
-          
           tr_str = GettextI18nConvertor.string_to_i18n(line, n)
-          
         end
         n.merge(@translations)
       end
-    
-      
     end
     
-    
-    
-    
-    def dump_yaml
-      YAML::dump(@translations)
+    # Dumps the translation strings into config/locales/template.yml
+    def dump_yaml!
+      FileUtils.mkdir_p LOCALE_DIR
+      File.open(STANDARD_LOCALE_FILE,'w+') { |f| YAML::dump(@translations, f) } 
     end
     
     
@@ -58,6 +55,9 @@ module GettextToI18n
        when :view
          result = /views\/([\_a-zA-Z]+)\//.match(file)
          return result[1]
+        when :lib
+          result = /([a-zA-Z]+).rb/.match(file)
+          return result[1]
      end
     end
     </diff>
      <filename>lib/base.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,22 +4,28 @@ module GettextToI18n
     
     # all files that contain some gettext methods
     def self.all_files
-      self.controller_files + self.view_files + self.helper_files
+      self.controller_files + self.view_files + self.helper_files + self.lib_files
     end
     
     # All controller files
     def self.controller_files
-      self.get_files('controllers', '*.rb')
+      self.get_files('app/controllers', '*.rb')
     end
     
     # All view files
     def self.view_files
-      self.get_files('views', '**/*.erb')
+      self.get_files('app/views', '**/*.erb')
     end
     
     # All view files
+    def self.lib_files
+      self.get_files('lib', '**/*.rb')
+    end
+  
+    
+    # All view files
     def self.helper_files
-      self.get_files('helpers', '*.rb')
+      self.get_files('app/helpers', '*.rb')
     end
     
     
@@ -34,7 +40,7 @@ module GettextToI18n
     # All files we need to walk
     def self.get_files(filter = '**', types='*.{erb,rb}')
       self.chdir
-      Dir.glob(&quot;app/#{filter}/#{types}&quot;)
+      Dir.glob(&quot;#{filter}/#{types}&quot;)
     end
   end
 end
\ No newline at end of file</diff>
      <filename>lib/files.rb</filename>
    </modified>
    <modified>
      <diff>@@ -29,15 +29,16 @@ module GettextToI18n
     end
     
     def i18n_namespace
-      a = @namespace
-      a.delete(&quot;txt&quot;)
-      a
+      @cached_i18n_namespace ||= begin
+        a = @namespace.dup
+        a.delete(&quot;txt&quot;)
+        a
+      end
     end
     
     
     def to_i18n_scope
-      
-      &quot;:scope =&gt; [%s]&quot; % i18n_namespace.collect {|x| &quot;:#{x}&quot;}.join(&quot;, &quot;)
+      @cached_i18n_scope ||= &quot;:scope =&gt; [%s]&quot; % i18n_namespace.collect {|x| &quot;:#{x}&quot;}.join(&quot;, &quot;)
     end
     
     
@@ -48,8 +49,6 @@ module GettextToI18n
         arr = 'base' + loc 
         eval  arr + ' = {} if ' + arr + '.nil?' 
       end
-      
-  
       eval 'base' + loc + ' = @ids'
       
     end</diff>
      <filename>lib/namespace.rb</filename>
    </modified>
    <modified>
      <diff>@@ -10,7 +10,7 @@ namespace :gettext_to_i18n do
   desc 'Transforms all of your files into the new I18n api format'
   task :transform do
     a = GettextToI18n::Base.new
-    puts a.dump_yaml
+    a.dump_yaml!
   end
   
   </diff>
      <filename>tasks/gettext_to_i18n_tasks.rake</filename>
    </modified>
    <modified>
      <diff>@@ -33,6 +33,13 @@ class GettextToI18nTest &lt; Test::Unit::TestCase
     assert files.size &gt; 0
   end
   
+  def test_lib_files
+    files = GettextToI18n::Files.lib_files
+    assert_not_nil files, &quot;no files available&quot;
+    assert files.size &gt; 0
+  end
+  
+  
   def test_get_filename
     assert_equal 'apidoc', GettextToI18n::Base.get_name('/controllers/apidoc_controller.rb', :controller)
     assert_equal 'application', GettextToI18n::Base.get_name('/controllers/application.rb', :controller)</diff>
      <filename>test/gettext_to_i18n_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>ad11c2dcbe2aa0c10fc9eea6ddc474c572108aa6</id>
    </parent>
  </parents>
  <author>
    <name>Jaap van der Meer</name>
    <email>jaapvandermeer@gmail.com</email>
  </author>
  <url>http://github.com/japetheape/gettext_to_i18n/commit/ed45ce348d81d668458472ef90e3948a7da51df2</url>
  <id>ed45ce348d81d668458472ef90e3948a7da51df2</id>
  <committed-date>2008-09-15T06:49:53-07:00</committed-date>
  <authored-date>2008-09-15T06:49:53-07:00</authored-date>
  <message>Writing YAML file to config/locales/standard.yml</message>
  <tree>56a82d08dbeffce6646521df9a5a4308313f9281</tree>
  <committer>
    <name>Jaap van der Meer</name>
    <email>jaapvandermeer@gmail.com</email>
  </committer>
</commit>
