From 0740c3bc26ce30b17c6b522ca3883eaa068d3471 Mon Sep 17 00:00:00 2001 From: Bertocq Date: Mon, 3 Jul 2017 01:00:50 +0200 Subject: [PATCH] Add rake task to help migrate existing locale files to new structure --- lib/tasks/locales.rake | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 lib/tasks/locales.rake diff --git a/lib/tasks/locales.rake b/lib/tasks/locales.rake new file mode 100644 index 000000000..8448b4003 --- /dev/null +++ b/lib/tasks/locales.rake @@ -0,0 +1,22 @@ +namespace :locales do + desc 'Migrate all localization files to new structure for a given locale name as argument' + task :migrate_structure, [:locale] => [:environment] do |_t, args| + locale = args[:locale] + puts "Moving files for locale: #{locale}" + + # This creates ./config/locales/en/ directory + system "mkdir ./config/locales/#{locale}" + + # This moves from ./config/locales/en.yml to ./config/locales/en/general.yml + system "mv ./config/locales/#{locale}.yml ./config/locales/#{locale}/general.yml" + + # This moves from ./config/locales/admin.en.yml to ./config/locales/en/admin.en.yml + system "mv ./config/locales/*.#{locale}.yml ./config/locales/#{locale}/" + + # This moves from ./config/locales/en/admin.en.yml to ./config/locales/en/admin.yml + system "find ./config/locales/ -name \"*.#{locale}.yml\" -exec sh -c 'mv \"$1\" \"${1%.#{locale}.yml}.yml\"' _ {} \\;" + + puts "Moved!" + end +end +