Add rake task to help migrate existing locale files to new structure

This commit is contained in:
Bertocq
2017-07-03 01:00:50 +02:00
parent 6f01db0245
commit 0740c3bc26

22
lib/tasks/locales.rake Normal file
View File

@@ -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