class String
Public Instance Methods
to_cuneiform()
click to toggle source
# File lib/kusabi/translator.rb, line 3 def to_cuneiform # TODO add alphabet hash = { # Alphabet a: ['12000'], b: ['1204D'], c: ['122EB'], d: ['12072'], e: ['1208A'], f: ['12137'], g: ['12116'], h: ['12129'], i: ['1213F'], j: ['12363'], k: ['121A0'], l: ['12292'], m: ['1222C'], n: ['12261'], o: ['120F0'], p: ['1204D'], q: ['122E1'], r: ['12292'], s: ['122E2'], t: ['122FC'], u: ['1230B'], v: ['1240A'], w: ['1227E'], x: ['1230B'], y: ['1227E'], z: ['1236A'], # Japanese Hiragana あ: ['12000'], い: ['1213F'], う: ['1230B'], え: ['1208A'], お: ['120F0'], か: ['12157'], き: ['121A0'], く: ['121AA'], け: ['121A0'], こ: ['120F0'], さ: ['12293'], し: ['122EB'], す: ['122E2'], せ: ['122EB'], そ: %w[12047 1202D], た: ['122EB'], ち: ['122FE'], つ: ['12305'], て: ['122FC'], と: ['12317'], な: ['1223E'], に: ['1224C'], ぬ: ['12261'], ね: ['12248'], の: ['12056'], は: ['12129'], ひ: ['1212D'], ふ: ['12137'], へ: ['1212D'], ほ: ['1219D'], ま: ['12220'], み: ['1222A'], む: ['1222C'], め: ['12228'], も: ['12172'], や: ['1227E'], ゆ: ['1227E'], よ: ['1227E'], ら: ['1228E'], り: ['12291'], る: ['12292'], れ: ['12291'], ろ: ['12112'], わ: ['1227E'], を: ['12240'], ん: ['12158'], が: ['120B5'], ぎ: ['12100'], ぐ: ['12116'], げ: ['12100'], ご: ['12038'], ざ: ['1235D'], じ: ['12363'], ず: ['1236A'], ぜ: ['12363'], ぞ: ['1202D'], だ: ['12055'], ぢ: ['12072'], づ: ['1207A'], で: ['12072'], ど: ['12054'], ば: ['12040'], び: ['12049'], ぶ: ['1204D'], べ: ['12041'], ぼ: ['12054'], ぱ: ['1227A'], ぴ: ['1227E'], ぷ: ['1204D'], ぺ: ['1227E'], ぽ: ['1209C'], # Japanese Katakana ア: ['12000'], イ: ['1213F'], ウ: ['1230B'], エ: ['1208A'], オ: ['120F0'], カ: ['12157'], キ: ['121A0'], ク: ['121AA'], ケ: ['121A0'], コ: ['120F0'], サ: ['12293'], シ: ['122EB'], ス: ['122E2'], セ: ['122EB'], ソ: %w[12047 1202D], タ: ['122EB'], チ: ['122FE'], ツ: ['12305'], テ: ['122FC'], ト: ['12317'], ナ: ['1223E'], ニ: ['1224C'], ヌ: ['12261'], ネ: ['12248'], ノ: ['12056'], ハ: ['12129'], ヒ: ['1212D'], フ: ['12137'], ヘ: ['1212D'], ホ: ['1219D'], マ: ['12220'], ミ: ['1222A'], ム: ['1222C'], メ: ['12228'], モ: ['12172'], ヤ: ['1227E'], ユ: ['1227E'], ヨ: ['1227E'], ラ: ['1228E'], リ: ['12291'], ル: ['12292'], レ: ['12291'], ロ: ['12112'], ワ: ['1227E'], ヲ: ['12240'], ン: ['12158'], ガ: ['120B5'], ギ: ['12100'], グ: ['12116'], ゲ: ['12100'], ゴ: ['12038'], ザ: ['1235D'], ジ: ['12363'], ズ: ['1236A'], ゼ: ['12363'], ゾ: ['1202D'], ダ: ['12055'], ヂ: ['12072'], ヅ: ['1207A'], デ: ['12072'], ド: ['12054'], バ: ['12040'], ビ: ['12049'], ブ: ['1204D'], ベ: ['12041'], ボ: ['12054'], パ: ['1227A'], ピ: ['1227E'], プ: ['1204D'], ペ: ['1227E'], ポ: ['1209C'], # TODO add number } result = [] strings = downcase.split('') strings.each do |str| hash[str.to_sym] ? temp = hash[str.to_sym].join : temp = nil temp ? result << [temp.hex].pack("U") : result << str end result.join end