SMW Japanese Transcriber

by Neito

HTML

<textarea id="input" rows=8 cols=52>
                        
!GJ\35\37\61\9D\A7T               
                        
AOdS\79AI\79P(\5EgZ           
                        
EBLOCUq(l\79c\35\362P         
                        
                  
                  
</textarea>

<div id="output"></div>

CSS

#output {
  background-color: black;
  color: white;
  line-height: 1em;
  height: 8em;
  width: 18em;
  padding: 3px;
  border: 1px solid gray;
}

JavaScript

const regChar = /(?:\\([0-9A-F]{2}))|\n|./g;

const lookup = [
  "あ", "い", "う", "え", "お", "か", "き", "く", "け", "こ", "さ", "し", "す", "せ", "そ", "た",
  "ち", "つ", "て", "と", "な", "に", "ぬ", "ね", "の", "は", "ひ", "ふ", "へ", "ほ", "ま", " ",
  ",", "ゃ", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "B", "C", ">", "T",
  "ウ", "S", "み", "む", "め", "も", "ら", "り", "る", "れ", "ろ", "や", "ゆ", "?", "0", "!",
  "よ", "わ", "を", "ん", "ア", "イ", "オ", "カ", "キ", "ク", "ケ", "コ", "シ", "ス", "セ", "ソ",
  "タ", "チ", "ツ", "テ", "ト", "ナ", "ニ", "ネ", "ハ", "ヒ", "ホ", "マ", "ム", "ラ", "リ", "エ",
  "ル", "レ", "ロ", "ヨ", "ワ", "っ", "ゅ", "ょ", "ィ", "ャ", "ョ", "ッ", "サ", "1", "2", "P",
  "L", "A", "Y", "E", "R", "G", "M", "ヌ", "。", "゙", "゚", "T", "M", " ", " ", " ",
  " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
  " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "ミ", " ", " ",
  "左", "ァ", "ゥ", "ェ", "ォ", "ュ", "\"", "-", "₀", "メ", " ", " ", " ", " ", " ", " ",
  "中", "🠉", "🠊", "🠋", "🠈", "A", "B", "C", "D", " ", "E", "F", "G", " ", " ", " ",
  "右", "H", "I", "J", "K", " ", " ", "L", "M", " ", " ", " ", "N", "O", "P", "Q",
  "出", "R", "S", "T", "モ", "U", "V", "W", "X", "Y", " ", "Z", "?", " ", " ", " ",
  "ヤ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "ユ",
  "ヲ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "ン"
]

const origLookup = [
  "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P",
  "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "!", ".", "-", ",", "?", " ",
  " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
  " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
  "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p",
  "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "#", "(", ")", "'", " ", " ",
  " ", " ", " ", " ", "1", "2", "3", "4", "5", "6", "7", "0", " ", " ", " ", " ",
  " ", " ", " ", " ", "...