class String

Constants

EN_LAYOUT
RU_LAYOUT

Public Instance Methods

convert_keyboard(options = nil) click to toggle source
# File lib/keyboard_convertor.rb, line 7
def convert_keyboard(options = nil)
  dir = ru_en?(options)

  wrong_chars = dir ? RU_LAYOUT : EN_LAYOUT
  right_chars = dir ? EN_LAYOUT : RU_LAYOUT

  new_word = self.each_char.map { |char| (i = wrong_chars.index(char)).nil? ? char : right_chars[i] }
  new_word.join('').force_encoding('UTF-8')
end

Private Instance Methods

ru_en?(options) click to toggle source
# File lib/keyboard_convertor.rb, line 19
def ru_en?(options)
  options && options[:from] == 'ru' && options[:to] == 'en'
end