lib/fast_gettext/translation.rb in grosser-fast_gettext-0.2.10 vs lib/fast_gettext/translation.rb in grosser-fast_gettext-0.2.11

- old
+ new

@@ -1,6 +1,11 @@ module FastGettext + # this module should be included + # Responsibility: + # - direct translation queries to the current repository + # - handle untranslated values + # - understand / enforce namespaces module Translation extend self #make it usable in class definition, e.g. # class Y @@ -10,25 +15,27 @@ def self.included(klas) #:nodoc: klas.extend self end def _(translate) - FastGettext.current_translations[translate] || translate + found = FastGettext.current_cache[translate] and return found + FastGettext.current_cache[translate] = FastGettext.current_repository[translate] || translate end #translate pluralized def n_(singular,plural,count) - if translation = FastGettext.current_translations.plural(singular,plural,count) + if translation = FastGettext.current_repository.plural(singular,plural,count) translation else + #TODO remove this repeated logic, e.g. return :plural / :singular or raise an exception ? count == 1 ? singular : plural end end #translate, but discard namespace if nothing was found # Car|Tire -> Tire if no translation could be found def s_(translate,seperator=nil) - if translation = FastGettext.current_translations[translate] + if translation = FastGettext.current_repository[translate] translation else translate.split(seperator||NAMESPACE_SEPERATOR).last end end \ No newline at end of file