Module: UaEnv::Transliteration::QWERTY

Defined in:
lib/uaenv/transliteration/qwertz.rb

Overview

Text is converted as if it typed with wrong language selected on en/ua qwerty winkeys keyboard. Non-cyrillic characters also converted.

Constant Summary collapse

UA_LOWER =
%w{ й ц у к е н г ш щ з х ї ф і в а п р о л д ж є я ч с м и т ь б ю . }
UA_UPPER =
%w{ Й Ц У К Е Н Г Ш Щ З Х Ї Ф І В А П Р О Л Д Ж Є Я Ч С М И Т Ь Б Ю , }
UA =
UA_LOWER + UA_UPPER
LAT_LOWER =
%w{ q w e r t y u i o p [ ] a s d f g h j k l ; ' z x c v b n m , . /  }
LAT_UPPER =
%w{ Q W E R T Y U I O P { } A S D F G H J K L : " Z X C V B N M < > ?  }
LAT =
LAT_LOWER + LAT_UPPER
TABLE_LAT_KEYS =
{}
TABLE_UA_KEYS =
{}

Class Method Summary collapse

Class Method Details

.decode_lat(str) ⇒ Object

Просто замінює символи набрані кирилицею у відповідні латинські символи



32
33
34
35
36
37
38
# File 'lib/uaenv/transliteration/qwertz.rb', line 32

def self.decode_lat(str)
  chars = str.split(//)
  result = ''
  chars.each { |char| result << ( UA.include?(char) ? TABLE_UA_KEYS[char] : char ) }
  
  return result
end

.decode_ua(str) ⇒ Object

Просто замінює символи набрані латиницею у відповідні кириличні символи



23
24
25
26
27
28
29
# File 'lib/uaenv/transliteration/qwertz.rb', line 23

def self.decode_ua(str)
  chars = str.split(//)
  result = ''
  chars.each{ |char| result << ( LAT.include?(char) ? TABLE_LAT_KEYS[char] : char ) }
  
  return result
end