From 9cb73757009dab8c71c9a374c935cd50fa38094f Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Thu, 2 Feb 2012 14:41:30 +0000 Subject: New improved find-msgids-and-make-pot-file rake task: (a) it doesn't do fuzzy matches (apparently Transifex does that for you) (b) it doesn't update all the PO files too (which certainly Transifex does for you) --- lib/tasks/gettext.rake | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'lib/tasks/gettext.rake') diff --git a/lib/tasks/gettext.rake b/lib/tasks/gettext.rake index 017e7c837..8ffd5ce1b 100644 --- a/lib/tasks/gettext.rake +++ b/lib/tasks/gettext.rake @@ -1,5 +1,23 @@ namespace :gettext do + + desc "Update pot file only, without fuzzy guesses (these are done by Transifex)" + task :findpot => :environment do + load_gettext + $LOAD_PATH << File.join(File.dirname(__FILE__),'..','..','lib') + require 'gettext_i18n_rails/haml_parser' + files = files_to_translate + + #write found messages to tmp.pot + temp_pot = "tmp.pot" + GetText::rgettext(files, temp_pot) + + #merge tmp.pot and existing pot + FileUtils.mkdir_p('locale') + GetText::msgmerge("locale/app.pot", temp_pot, "version 0.0.1", :po_root => 'locale', :msgmerge=>[ :no_fuzzy_matching, :sort_output ]) + File.delete(temp_pot) + end + def files_to_translate Dir.glob("{app,lib,config,locale}/**/*.{rb,erb,haml,rhtml}") end -end \ No newline at end of file +end -- cgit v1.2.3