Module: Translit

Defined in:
lib/translit.rb

Class Method Summary collapse

Class Method Details

.convert(text, enforce_language = nil) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/translit.rb', line 4

def self.convert(text, enforce_language = nil)
  language = detect_input_language(text.split(/\s+/).first)

  return text if language == enforce_language

  map = self.send(language.to_s).sort_by {|k,v| v.length <=>  k.length}
  map.each do |translit_key, translit_value|
    text.gsub!(translit_key.capitalize, translit_value.first)
    text.gsub!(translit_key, translit_value.last)
  end
  text
end