class Pseudolocalization::I18n::Pseudolocalizer
Constants
- ESCAPED_REGEX
- LETTERS
- VOWELS
Public Class Methods
pseudolocalize(object)
click to toggle source
# File lib/pseudolocalization/pseudolocalizer.rb, line 72 def pseudolocalize(object) translate_object(object) end
Private Class Methods
translate_object(object)
click to toggle source
# File lib/pseudolocalization/pseudolocalizer.rb, line 78 def translate_object(object) if object.is_a?(Hash) object.transform_values { |value| translate_object(value) } elsif object.is_a?(Array) object.map { |value| translate_object(value) } elsif object.is_a?(String) translate_string(object) else object end end
translate_string(string)
click to toggle source
# File lib/pseudolocalization/pseudolocalizer.rb, line 90 def translate_string(string) string.split(ESCAPED_REGEX).map do |part| if part =~ ESCAPED_REGEX part else part.chars.map do |char| if LETTERS.key?(char) value = LETTERS[char] value = value * 2 if VOWELS.include?(char) value else char end end.join end end.join end