]> git.openstreetmap.org Git - rails.git/blobdiff - script/locale/yaml2po
Merge remote-tracking branch 'upstream/pull/4753'
[rails.git] / script / locale / yaml2po
diff --git a/script/locale/yaml2po b/script/locale/yaml2po
deleted file mode 100755 (executable)
index 7a1750d..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/usr/bin/env ruby
-# yaml2po, for converting RoR translation YAML to the standard gettext
-#          for eventual use with a translation site such as Transifex
-# Use:
-#  - To create a 'master' .pot
-#    yaml2po > translations.pot
-#  - To create a language's .po (includes from scratch)
-#    yaml2po de > de.po
-#  - To create all languages' .pos and a .pot (under /config/locales/po)
-#    yaml2po --all
-
-require "yaml"
-require "optparse"
-
-LOCALE_DIR = File.dirname(__FILE__) + '/../../config/locales/'
-EN = YAML::load_file(LOCALE_DIR+'en.yml')
-
-def iterate(hash, fhash={}, path='', outfile=$stdout)
-  postr = ''
-  hash.each {|key, val|
-    fhash[key] = {} unless fhash.has_key? key
-    if val.is_a? Hash
-      fhash[key] = {} unless fhash[key].is_a? Hash
-      iterate(val, fhash[key], path+key+':', outfile)
-    else
-      outfile.puts "msgctxt \"#{path}#{key}\""
-      outfile.puts "msgid \"#{val}\""
-      outfile.puts "msgstr \"#{fhash[key]}\""
-    end
-  }
-end
-
-def lang2po(lang, outfile=$stdout)
-  puts lang
-  oth = {}
-  infile = LOCALE_DIR+lang+'.yml'
-  if File.exists? infile
-    oth = YAML::load_file(infile)
-    oth = oth[lang]
-    iterate(EN['en'], oth, '', outfile)
-  else
-    iterate(EN['en'], {}, '', outfile)
-  end
-end
-
-opt = ARGV[0]
-if opt == '--all'
-  # Produce .po files for all langs, and a .pot template
-  PO_DIR = LOCALE_DIR+'po/'
-  Dir.mkdir(PO_DIR) unless File.directory?(PO_DIR)
-  Dir.glob(LOCALE_DIR+"*.yml") {|filename|
-    lang = File.basename(filename, '.yml')
-    outfile = File.new(PO_DIR+"#{lang}.po", 'w')
-    lang2po(lang, outfile)
-    outfile.close
-  }
-  outfile = File.new(PO_DIR+"rails_port.pot", 'w')
-  iterate(EN['en'], {}, '', outfile)
-  outfile.close
-elsif opt
-  lang2po(opt)
-else
-  iterate(EN['en'])
-end