Top Level Namespace

Includes:
ActionView::Helpers::TextHelper

Defined Under Namespace

Modules: Translighterate

Instance Method Summary collapse

Instance Method Details

#transliterate_char(ch) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/translighterate.rb', line 42

def transliterate_char(ch)
  raise if ch.length != 1
  original_char = ch

  mappings = {
    "ł" => "l",
    "Ł" => "L",
  }

  ch = if mappings.key?(ch)
         mappings[ch]
       else
         ch.mb_chars.unicode_normalize(:nfkd).gsub(/[\p{Mn}]/, '').unicode_normalize(:nfc).to_s
       end
  if ch.length != 1
    original_char
  else
    ch
  end
end