Permalink
Browse files

Make I18n::Backend::Simple reload its translations in development mod…

…e [DHH]
  • Loading branch information...
1 parent a61c4df commit d5b0ba66323062b54974fc224a909ffabf400a13 @dhh dhh committed Oct 28, 2008
View
@@ -1,3 +1,8 @@
+*2.2.1 [RC2 or 2.2 final]*
+
+* Make I18n::Backend::Simple reload its translations in development mode [DHH]
+
+
*2.2.0 [RC1] (October 24th, 2008)*
* TimeWithZone#freeze: preload instance variables so that we can actually freeze [Geoff Buesing]
@@ -6,6 +6,10 @@ class Simple
INTERPOLATION_RESERVED_KEYS = %w(scope default)
MATCH = /(\\\\)?\{\{([^\}]+)\}\}/
+ def initialize
+ Dispatcher.to_prepare { reload }
+ end
+
# Accepts a list of paths to translation files. Loads translations from
# plain Ruby (*.rb) or YAML files (*.yml). See #load_rb and #load_yml
# for details.
@@ -69,8 +73,11 @@ def initialized?
@initialized ||= false
end
- protected
+ def reload
+ @initialized = false
+ end
+ protected
def init_translations
load_translations(*I18n.load_path)
@initialized = true
@@ -88,7 +95,7 @@ def translations
def lookup(locale, key, scope = [])
return unless key
init_translations unless initialized?
- keys = I18n.send :normalize_translation_keys, locale, key, scope
+ keys = I18n.send(:normalize_translation_keys, locale, key, scope)
keys.inject(translations) do |result, k|
if (x = result[k.to_sym]).nil?
return nil

0 comments on commit d5b0ba6

Please sign in to comment.