Module: ZhongwenTools::Romanization

Defined in:
lib/zhongwen_tools/romanization.rb,
lib/zhongwen_tools/romanization/mps2.rb,
lib/zhongwen_tools/romanization/yale.rb,
lib/zhongwen_tools/romanization/pinyin.rb,
lib/zhongwen_tools/romanization/wade_giles.rb,
lib/zhongwen_tools/romanization/pinyin_table.rb,
lib/zhongwen_tools/romanization/zhuyin_fuhao.rb,
lib/zhongwen_tools/romanization/tongyong_pinyin.rb,
lib/zhongwen_tools/romanization/romanization_table.rb

Overview

Public: Romanization converts to pinyin and pyn.

Defined Under Namespace

Modules: MPS2, Pinyin, TongyongPinyin, WadeGiles, Yale, ZhuyinFuhao

Constant Summary collapse

PYN_SYLLABIC_NASALS =
%w(ng m n)
PYN_PY =
{
  'A1' => 'Ā',
  'A2' => 'Á',
  'A3' => 'Ǎ',
  'A4' => 'À',
  'A5' => 'A',
  'Ai1' => 'Āi',
  'Ai2' => 'Ái',
  'Ai3' => 'Ǎi',
  'Ai4' => 'Ài',
  'Ai5' => 'Ai',
  'Ao1' => 'Ā',
  'Ao2' => 'Áo',
  'Ao3' => 'Ǎo',
  'Ao4' => 'Ào',
  'Ao5' => 'Ao',
  'a1' => 'ā',
  'a2' => 'á',
  'a3' => 'ǎ',
  'a4' => 'à',
  'a5' => 'a',
  'e1' => 'ē',
  'e2' => 'é',
  'e3' => 'ě',
  'e4' => 'è',
  'e5' => 'e',
  'i1' => 'ī',
  'i2' => 'í',
  'i3' => 'ǐ',
  'i4' => 'ì',
  'i5' => 'i',
  'O1' => 'Ō',
  'O2' => 'Ó',
  'O3' => 'Ǒ',
  'O4' => 'Ò',
  'O5' => 'O',
  'o1' => 'ō',
  'o2' => 'ó',
  'o3' => 'ǒ',
  'o4' => 'ò',
  'o5' => 'o',
  'u1' => 'ū',
  'u2' => 'ú',
  'u3' => 'ǔ',
  'u4' => 'ù',
  'u5' => 'u',
  'ai1' => 'āi',
  'ai2' => 'ái',
  'ai3' => 'ǎi',
  'ai4' => 'ài',
  'ai5' => 'ai',
  'ao1' => 'āo',
  'ao2' => 'áo',
  'ao3' => 'ǎo',
  'ao4' => 'ào',
  'ao5' => 'ao',
  'E1' => 'Ē',
  'E2' => 'É',
  'E3' => 'Ě',
  'E4' => 'È',
  'E5' => 'E',
  'Ei1' => 'Ēi',
  'Ei2' => 'Éi',
  'Ei3' => 'Ěi',
  'Ei4' => 'Èi',
  'Ei5' => 'Ei',
  'ei1' => 'ēi',
  'ei2' => 'éi',
  'ei3' => 'ěi',
  'ei4' => 'èi',
  'ei5' => 'ei',
  'ia1' => '',
  'ia2' => '',
  'ia3' => '',
  'ia4' => '',
  'ia5' => 'ia',
  'iao1' => 'iāo',
  'iao2' => 'iáo',
  'iao3' => 'iǎo',
  'iao4' => 'iào',
  'iao5' => 'iao',
  'ie1' => '',
  'ie2' => '',
  'ie3' => '',
  'ie4' => '',
  'ie5' => 'ie',
  'io1' => '',
  'io2' => '',
  'io3' => '',
  'io4' => '',
  'io5' => 'io',
  'iu1' => '',
  'iu2' => '',
  'iu3' => '',
  'iu4' => '',
  'iu5' => 'iu',
  'Ou1' => 'Ōu',
  'Ou2' => 'Óu',
  'Ou3' => 'Ǒu',
  'Ou4' => 'Òu',
  'Ou5' => 'Ou',
  'ou1' => 'ōu',
  'ou2' => 'óu',
  'ou3' => 'ǒu',
  'ou4' => 'òu',
  'ou5' => 'ou',
  'ua1' => '',
  'ua2' => '',
  'ua3' => '',
  'ua4' => '',
  'ua5' => 'ua',
  'uai1' => 'uāi',
  'uai2' => 'uái',
  'uai3' => 'uǎi',
  'uai4' => 'uài',
  'uai5' => 'uai',
  'ue1' => '',
  'ue2' => '',
  'ue3' => '',
  'ue4' => '',
  'ue5' => 'ue',
  'ui1' => '',
  'ui2' => '',
  'ui3' => '',
  'ui4' => '',
  'ui5' => 'ui',
  'uo1' => '',
  'uo2' => '',
  'uo3' => '',
  'uo4' => '',
  'uo5' => 'uo',
  'v1' => 'ǖ',
  'v2' => 'ǘ',
  'v3' => 'ǚ',
  'v4' => 'ǜ',
  'v5' => 'ü',
  've1' => 'üē',
  've2' => 'üé',
  've3' => 'üě',
  've4' => 'üè',
  've5' => 'üe',
  'm1' => '',
  'm2' => 'ḿ', # using combining diacritical marks
  'm3' => '', # using combining diacritical marks
  'm4' => '', # using combining diacritical marks
  'm5' => 'm',
  'n1' => '',
  'n2' => 'ń',
  'n3' => 'ň',
  'n4' => 'ǹ',
  'n5' => 'n',
  'Ng1' => 'N̄g', # using combining diacritical marks
  'Ng2' => 'Ńg',
  'Ng3' => 'Ňg', # using combining diacritical marks
  'Ng4' => 'Ǹg',
  'Ng5' => 'Ng',
  'ng1' => 'n̄g', # using combining diacritical marks
  'ng2' => 'ńg',
  'ng3' => 'ňg', # using combining diacritical marks
  'ng4' => 'ǹg',
  'ng5' => 'ng',
  'r5' => 'r',
  'ang1' => 'āng',
  'ang2' => 'áng',
  'ang3' => 'ǎng',
  'ang4' => 'àng',
  'ang5' => 'ang',
  'eng1' => 'ēng',
  'eng2' => 'éng',
  'eng3' => 'ěng',
  'eng4' => 'èng',
  'eng5' => 'eng',
  'ing1' => 'īng',
  'ing2' => 'íng',
  'ing3' => 'ǐng',
  'ing4' => 'ìng',
  'ing5' => 'ing',
  'ong1' => 'ōng',
  'ong2' => 'óng',
  'ong3' => 'ǒng',
  'ong4' => 'òng',
  'ong5' => 'ong',
}
ROMANIZATIONS_TABLE =

TODO: remove excess values, i.e. keys whose value == :pyn TODO: en.wikipedia.org/wiki/Jyutping TODO: en.wikipedia.org/wiki/Simplified_Wade

[
{ bpmf: '', wg: 'a', mps2: 'a', yale: 'a', typy: 'a', pyn: 'a' },
{ bpmf: '', wg: 'ai', mps2: 'ai', yale: 'ai', typy: 'ai', pyn: 'ai' },
{ bpmf: '', wg: 'an', mps2: 'an', yale: 'an', typy: 'an', pyn: 'an' },
{ bpmf: '', wg: 'ang', mps2: 'ang', yale: 'ang', typy: 'ang', pyn: 'ang' },
{ bpmf: '', wg: 'ao', mps2: 'au', yale: 'au', typy: 'ao', pyn: 'ao' },
{ bpmf: 'ㄅㄚ', wg: 'pa', mps2: 'ba', yale: 'ba', typy: 'ba', pyn: 'ba' },
{ bpmf: 'ㄅㄞ', wg: 'pai', mps2: 'bai', yale: 'bai', typy: 'bai', pyn: 'bai' },
{ bpmf: 'ㄅㄢ', wg: 'pan', mps2: 'ban', yale: 'ban', typy: 'ban', pyn: 'ban' },
{ bpmf: 'ㄅㄤ', wg: 'pang', mps2: 'bang', yale: 'bang', typy: 'bang', pyn: 'bang' },
{ bpmf: 'ㄅㄠ', wg: 'pao', mps2: 'bau', yale: 'bau', typy: 'bao', pyn: 'bao' },
{ bpmf: 'ㄅㄟ', wg: 'pei', mps2: 'bei', yale: 'bei', typy: 'bei', pyn: 'bei' },
{ bpmf: 'ㄅㄣ', wg: 'pen', mps2: 'ben', yale: 'ben', typy: 'ben', pyn: 'ben' },
{ bpmf: 'ㄅㄥ', wg: 'peng', mps2: 'beng', yale: 'beng', typy: 'beng', pyn: 'beng' },
{ bpmf: 'ㄅㄧ', wg: 'pi', mps2: 'bi', yale: 'bi', typy: 'bi', pyn: 'bi' },
{ bpmf: 'ㄅㄧㄢ', wg: 'pien', mps2: 'bian', yale: 'byan', typy: 'bian', pyn: 'bian' },
{ bpmf: 'ㄅㄧㄠ', wg: 'piao', mps2: 'biau', yale: 'byau', typy: 'biao', pyn: 'biao' },
{ bpmf: 'ㄅㄧㄝ', wg: 'pieh', mps2: 'bie', yale: 'bye', typy: 'bie', pyn: 'bie' },
{ bpmf: 'ㄅㄧㄣ', wg: 'pin', mps2: 'bin', yale: 'bin', typy: 'bin', pyn: 'bin' },
{ bpmf: 'ㄅㄧㄥ', wg: 'ping', mps2: 'bing', yale: 'bing', typy: 'bing', pyn: 'bing' },
{ bpmf: 'ㄅㄛ', wg: 'po', mps2: 'bo', yale: 'bwo', typy: 'bo', pyn: 'bo' },
{ bpmf: 'ㄅㄨ', wg: 'pu', mps2: 'bu', yale: 'bu', typy: 'bu', pyn: 'bu' },
{ bpmf: 'ㄘㄚ', wg: 'ts`a', mps2: 'tsa', yale: 'tsa', typy: 'ca', pyn: 'ca' },
{ bpmf: 'ㄘㄞ', wg: 'ts`ai', mps2: 'tsai', yale: 'tsai', typy: 'cai', pyn: 'cai' },
{ bpmf: 'ㄘㄢ', wg: 'ts`an', mps2: 'tsan', yale: 'tsan', typy: 'can', pyn: 'can' },
{ bpmf: 'ㄘㄤ', wg: 'ts`ang', mps2: 'tsang', yale: 'tsang', typy: 'cang', pyn: 'cang' },
{ bpmf: 'ㄘㄠ', wg: 'ts`ao', mps2: 'tsau', yale: 'tsau', typy: 'cao', pyn: 'cao' },
{ bpmf: 'ㄘㄜ', wg: 'ts`e', mps2: 'tse', yale: 'tse', typy: 'ce', pyn: 'ce' },
{ bpmf: 'ㄘㄣ', wg: 'ts`en', mps2: 'tsen', yale: 'tsen', typy: 'cen', pyn: 'cen' },
{ bpmf: 'ㄘㄥ', wg: 'ts`eng', mps2: 'tseng', yale: 'tseng', typy: 'ceng', pyn: 'ceng' },
{ bpmf: 'ㄔㄚ', wg: 'ch`a', mps2: 'cha', yale: 'cha', typy: 'cha', pyn: 'cha' },
{ bpmf: 'ㄔㄞ', wg: 'ch`ai', mps2: 'chai', yale: 'chai', typy: 'chai', pyn: 'chai' },
{ bpmf: 'ㄔㄢ', wg: 'ch`an', mps2: 'chan', yale: 'chan', typy: 'chan', pyn: 'chan' },
{ bpmf: 'ㄔㄤ', wg: 'ch`ang', mps2: 'chang', yale: 'chang', typy: 'chang', pyn: 'chang' },
{ bpmf: 'ㄔㄠ', wg: 'ch`ao', mps2: 'chau', yale: 'chau', typy: 'chao', pyn: 'chao' },
{ bpmf: 'ㄔㄜ', wg: 'ch`e', mps2: 'che', yale: 'che', typy: 'che', pyn: 'che' },
{ bpmf: 'ㄔㄣ', wg: 'ch`en', mps2: 'chen', yale: 'chen', typy: 'chen', pyn: 'chen' },
{ bpmf: 'ㄔㄥ', wg: 'ch`eng', mps2: 'cheng', yale: 'cheng', typy: 'cheng', pyn: 'cheng' },
{ bpmf: '', wg: 'ch`ih', mps2: 'chr', yale: 'chr', typy: 'chih', pyn: 'chi' },
{ bpmf: 'ㄔㄨㄥ', wg: 'ch`ung', mps2: 'chung', yale: 'chung', typy: 'chong', pyn: 'chong' },
{ bpmf: 'ㄔㄡ', wg: 'ch`ou', mps2: 'chou', yale: 'chou', typy: 'chou', pyn: 'chou' },
{ bpmf: 'ㄔㄨ', wg: 'ch`u', mps2: 'chu', yale: 'chu', typy: 'chu', pyn: 'chu' },
{ bpmf: 'ㄔㄨㄚ', wg: 'ch`ua', mps2: 'chua', yale: 'chwa', typy: 'chua', pyn: 'chua' },
{ bpmf: 'ㄔㄨㄞ', wg: 'ch`uai', mps2: 'chuai', yale: 'chwai', typy: 'chuai', pyn: 'chuai' },
{ bpmf: 'ㄔㄨㄢ', wg: 'ch`uan', mps2: 'chuan', yale: 'chwan', typy: 'chuan', pyn: 'chuan' },
{ bpmf: 'ㄔㄨㄤ', wg: 'ch`uang', mps2: 'chuang', yale: 'chwang', typy: 'chuang', pyn: 'chuang' },
{ bpmf: 'ㄔㄨㄟ', wg: 'ch`ui', mps2: 'chuei', yale: 'chwei', typy: 'chuei', pyn: 'chui' },
{ bpmf: 'ㄔㄨㄣ', wg: 'ch`un', mps2: 'chuen', yale: 'chwen', typy: 'chun', pyn: 'chun' },
{ bpmf: 'ㄔㄨㄛ', wg: 'ch`o', mps2: 'chuo', yale: 'chwo', typy: 'chuo', pyn: 'chuo' },
{ bpmf: '', wg: 'tz`u', mps2: 'tsz', yale: 'tsz', typy: 'cih', pyn: 'ci' },
{ bpmf: 'ㄘㄨㄥ', wg: 'ts`ung', mps2: 'tsung', yale: 'tsung', typy: 'cong', pyn: 'cong' },
{ bpmf: 'ㄘㄡ', wg: 'ts`ou', mps2: 'tsou', yale: 'tsou', typy: 'cou', pyn: 'cou' },
{ bpmf: 'ㄘㄨ', wg: 'ts`u', mps2: 'tsu', yale: 'tsu', typy: 'cu', pyn: 'cu' },
{ bpmf: 'ㄘㄨㄢ', wg: 'ts`uan', mps2: 'tsuan', yale: 'tswan', typy: 'cuan', pyn: 'cuan' },
{ bpmf: 'ㄘㄨㄟ', wg: 'ts`ui', mps2: 'tsuei', yale: 'tswei', typy: 'cuei', pyn: 'cui' },
{ bpmf: 'ㄘㄨㄣ', wg: 'ts`un', mps2: 'tsuen', yale: 'tswen', typy: 'cun', pyn: 'cun' },
{ bpmf: 'ㄘㄨㄛ', wg: 'ts`o', mps2: 'tsuo', yale: 'tswo', typy: 'cuo', pyn: 'cuo' },
{ bpmf: 'ㄉㄚ', wg: 'ta', mps2: 'da', yale: 'da', typy: 'da', pyn: 'da' },
{ bpmf: 'ㄉㄞ', wg: 'tai', mps2: 'dai', yale: 'dai', typy: 'dai', pyn: 'dai' },
{ bpmf: 'ㄉㄢ', wg: 'tan', mps2: 'dan', yale: 'dan', typy: 'dan', pyn: 'dan' },
{ bpmf: 'ㄉㄤ', wg: 'tang', mps2: 'dang', yale: 'dang', typy: 'dang', pyn: 'dang' },
{ bpmf: 'ㄉㄠ', wg: 'tao', mps2: 'dau', yale: 'dau', typy: 'dao', pyn: 'dao' },
{ bpmf: 'ㄉㄜ', wg: 'te', mps2: 'de', yale: 'de', typy: 'de', pyn: 'de' },
{ bpmf: 'ㄉㄟ', wg: 'tei', mps2: 'dei', yale: 'dei', typy: 'dei', pyn: 'dei' },
{ bpmf: 'ㄉㄣ', wg: 'ten', mps2: 'den', yale: 'den', typy: 'den', pyn: 'den' },
{ bpmf: 'ㄉㄥ', wg: 'teng', mps2: 'deng', yale: 'deng', typy: 'deng', pyn: 'deng' },
{ bpmf: 'ㄉㄧ', wg: 'ti', mps2: 'di', yale: 'di', typy: 'di', pyn: 'di' },
{ bpmf: 'ㄉㄧㄢ', wg: 'tien', mps2: 'dian', yale: 'dyan', typy: 'dian', pyn: 'dian' },
{ bpmf: 'ㄉㄧㄤ', wg: 'tiang', mps2: 'diang', yale: 'dyang', typy: 'diang', pyn: 'diang' },
{ bpmf: 'ㄉㄧㄠ', wg: 'tiao', mps2: 'diau', yale: 'dyau', typy: 'diao', pyn: 'diao' },
{ bpmf: 'ㄉㄧㄝ', wg: 'tieh', mps2: 'die', yale: 'dye', typy: 'die', pyn: 'die' },
{ bpmf: 'ㄉㄧㄥ', wg: 'ting', mps2: 'ding', yale: 'ding', typy: 'ding', pyn: 'ding' },
{ bpmf: 'ㄉㄧㄡ', wg: 'tiu', mps2: 'diou', yale: 'dyou', typy: 'diou', pyn: 'diu' },
{ bpmf: 'ㄉㄨㄥ', wg: 'tung', mps2: 'dung', yale: 'dung', typy: 'dong', pyn: 'dong' },
{ bpmf: 'ㄉㄡ', wg: 'tou', mps2: 'dou', yale: 'dou', typy: 'dou', pyn: 'dou' },
{ bpmf: 'ㄉㄨ', wg: 'tu', mps2: 'du', yale: 'du', typy: 'du', pyn: 'du' },
{ bpmf: 'ㄉㄨㄢ', wg: 'tuan', mps2: 'duan', yale: 'dwan', typy: 'duan', pyn: 'duan' },
{ bpmf: 'ㄉㄨㄟ', wg: 'tui', mps2: 'duei', yale: 'dwei', typy: 'duei', pyn: 'dui' },
{ bpmf: 'ㄉㄨㄣ', wg: 'tun', mps2: 'duen', yale: 'dwen', typy: 'dun', pyn: 'dun' },
{ bpmf: 'ㄉㄨㄛ', wg: 'to', mps2: 'duo', yale: 'dwo', typy: 'duo', pyn: 'duo' },
{ bpmf: '', wg: 'e', mps2: 'e', yale: 'e', typy: 'e', pyn: 'e' },
{ bpmf: '', wg: 'ei', mps2: 'ei', yale: 'ei', typy: 'ei', pyn: 'ei' },
{ bpmf: '', wg: 'en', mps2: 'en', yale: 'en', typy: 'en', pyn: 'en' },
{ bpmf: '', wg: 'erh', mps2: 'er', yale: 'er', typy: 'er', pyn: 'er' },
{ bpmf: 'ㄈㄚ', wg: 'fa', mps2: 'fa', yale: 'fa', typy: 'fa', pyn: 'fa' },
{ bpmf: 'ㄈㄢ', wg: 'fan', mps2: 'fan', yale: 'fan', typy: 'fan', pyn: 'fan' },
{ bpmf: 'ㄈㄤ', wg: 'fang', mps2: 'fang', yale: 'fang', typy: 'fang', pyn: 'fang' },
{ bpmf: 'ㄈㄟ', wg: 'fei', mps2: 'fei', yale: 'fei', typy: 'fei', pyn: 'fei' },
{ bpmf: 'ㄈㄣ', wg: 'fen', mps2: 'fen', yale: 'fen', typy: 'fen', pyn: 'fen' },
{ bpmf: 'ㄈㄥ', wg: 'feng', mps2: 'feng', yale: 'feng', typy: 'fong', pyn: 'feng' },
{ bpmf: 'ㄈㄛ', wg: 'fo', mps2: 'fo', yale: 'fwo', typy: 'fo', pyn: 'fo' },
{ bpmf: 'ㄈㄡ', wg: 'fou', mps2: 'fou', yale: 'fou', typy: 'fou', pyn: 'fou' },
{ bpmf: 'ㄈㄨ', wg: 'fu', mps2: 'fu', yale: 'fu', typy: 'fu', pyn: 'fu' },
{ bpmf: 'ㄍㄚ', wg: 'ka', mps2: 'ga', yale: 'ga', typy: 'ga', pyn: 'ga' },
{ bpmf: 'ㄍㄞ', wg: 'kai', mps2: 'gai', yale: 'gai', typy: 'gai', pyn: 'gai' },
{ bpmf: 'ㄍㄢ', wg: 'kan', mps2: 'gan', yale: 'gan', typy: 'gan', pyn: 'gan' },
{ bpmf: 'ㄍㄤ', wg: 'kang', mps2: 'gang', yale: 'gang', typy: 'gang', pyn: 'gang' },
{ bpmf: 'ㄍㄠ', wg: 'kao', mps2: 'gau', yale: 'gau', typy: 'gao', pyn: 'gao' },
{ bpmf: 'ㄍㄜ', wg: 'ko', mps2: 'ge', yale: 'ge', typy: 'ge', pyn: 'ge' },
{ bpmf: 'ㄍㄟ', wg: 'kei', mps2: 'gei', yale: 'gei', typy: 'gei', pyn: 'gei' },
{ bpmf: 'ㄍㄣ', wg: 'ken', mps2: 'gen', yale: 'gen', typy: 'gen', pyn: 'gen' },
{ bpmf: 'ㄍㄥ', wg: 'keng', mps2: 'geng', yale: 'geng', typy: 'geng', pyn: 'geng' },
{ bpmf: 'ㄍㄨㄥ', wg: 'kung', mps2: 'gung', yale: 'gung', typy: 'gong', pyn: 'gong' },
{ bpmf: 'ㄍㄡ', wg: 'kou', mps2: 'gou', yale: 'gou', typy: 'gou', pyn: 'gou' },
{ bpmf: 'ㄍㄨ', wg: 'ku', mps2: 'gu', yale: 'gu', typy: 'gu', pyn: 'gu' },
{ bpmf: 'ㄍㄨㄚ', wg: 'kua', mps2: 'gua', yale: 'gwa', typy: 'gua', pyn: 'gua' },
{ bpmf: 'ㄍㄨㄞ', wg: 'kuai', mps2: 'guai', yale: 'gwai', typy: 'guai', pyn: 'guai' },
{ bpmf: 'ㄍㄨㄢ', wg: 'kuan', mps2: 'guan', yale: 'gwan', typy: 'guan', pyn: 'guan' },
{ bpmf: 'ㄍㄨㄤ', wg: 'kuang', mps2: 'guang', yale: 'gwang', typy: 'guang', pyn: 'guang' },
{ bpmf: 'ㄍㄨㄟ', wg: 'kuei', mps2: 'guei', yale: 'gwei', typy: 'guei', pyn: 'gui' },
{ bpmf: 'ㄍㄨㄣ', wg: 'kun', mps2: 'guen', yale: 'gwun', typy: 'gun', pyn: 'gun' },
{ bpmf: 'ㄍㄨㄛ', wg: 'kuo', mps2: 'guo', yale: 'gwo', typy: 'guo', pyn: 'guo' },
{ bpmf: 'ㄏㄚ', wg: 'ha', mps2: 'ha', yale: 'ha', typy: 'ha', pyn: 'ha' },
{ bpmf: 'ㄏㄞ', wg: 'hai', mps2: 'hai', yale: 'hai', typy: 'hai', pyn: 'hai' },
{ bpmf: 'ㄏㄢ', wg: 'han', mps2: 'han', yale: 'han', typy: 'han', pyn: 'han' },
{ bpmf: 'ㄏㄤ', wg: 'hang', mps2: 'hang', yale: 'hang', typy: 'hang', pyn: 'hang' },
{ bpmf: 'ㄏㄠ', wg: 'hao', mps2: 'hau', yale: 'hau', typy: 'hao', pyn: 'hao' },
{ bpmf: 'ㄏㄜ', wg: 'ho', mps2: 'he', yale: 'he', typy: 'he', pyn: 'he' },
{ bpmf: 'ㄏㄟ', wg: 'hei', mps2: 'hei', yale: 'hei', typy: 'hei', pyn: 'hei' },
{ bpmf: 'ㄏㄣ', wg: 'hen', mps2: 'hen', yale: 'hen', typy: 'hen', pyn: 'hen' },
{ bpmf: 'ㄏㄥ', wg: 'heng', mps2: 'heng', yale: 'heng', typy: 'heng', pyn: 'heng' },
{ bpmf: 'ㄏㄨㄥ', wg: 'hung', mps2: 'hung', yale: 'hung', typy: 'hong', pyn: 'hong' },
{ bpmf: 'ㄏㄡ', wg: 'hou', mps2: 'hou', yale: 'hou', typy: 'hou', pyn: 'hou' },
{ bpmf: 'ㄏㄨ', wg: 'hu', mps2: 'hu', yale: 'hu', typy: 'hu', pyn: 'hu' },
{ bpmf: 'ㄏㄨㄚ', wg: 'hua', mps2: 'hua', yale: 'hwa', typy: 'hua', pyn: 'hua' },
{ bpmf: 'ㄏㄨㄞ', wg: 'huai', mps2: 'huai', yale: 'hwai', typy: 'huai', pyn: 'huai' },
{ bpmf: 'ㄏㄨㄢ', wg: 'huan', mps2: 'huan', yale: 'hwan', typy: 'huan', pyn: 'huan' },
{ bpmf: 'ㄏㄨㄤ', wg: 'huang', mps2: 'huang', yale: 'hwang', typy: 'huang', pyn: 'huang' },
{ bpmf: 'ㄏㄨㄟ', wg: 'hui', mps2: 'huei', yale: 'hwei', typy: 'huei', pyn: 'hui' },
{ bpmf: 'ㄏㄨㄣ', wg: 'hun', mps2: 'huen', yale: 'hwen', typy: 'hun', pyn: 'hun' },
{ bpmf: 'ㄏㄨㄛ', wg: 'huo', mps2: 'huo', yale: 'hwo', typy: 'huo', pyn: 'huo' },
{ bpmf: 'ㄐㄧ', wg: 'chi', mps2: 'ji', yale: 'ji', typy: 'ji', pyn: 'ji' },
{ bpmf: 'ㄐㄧㄚ', wg: 'chia', mps2: 'jia', yale: 'jya', typy: 'jia', pyn: 'jia' },
{ bpmf: 'ㄐㄧㄢ', wg: 'chien', mps2: 'jian', yale: 'jyan', typy: 'jian', pyn: 'jian' },
{ bpmf: 'ㄐㄧㄤ', wg: 'chiang', mps2: 'jiang', yale: 'jyang', typy: 'jiang', pyn: 'jiang' },
{ bpmf: 'ㄐㄧㄠ', wg: 'chiao', mps2: 'jiau', yale: 'jyau', typy: 'jiao', pyn: 'jiao' },
{ bpmf: 'ㄐㄧㄝ', wg: 'chieh', mps2: 'jie', yale: 'jye', typy: 'jie', pyn: 'jie' },
{ bpmf: 'ㄐㄧㄣ', wg: 'chin', mps2: 'jin', yale: 'jin', typy: 'jin', pyn: 'jin' },
{ bpmf: 'ㄐㄧㄥ', wg: 'ching', mps2: 'jing', yale: 'jing', typy: 'jing', pyn: 'jing' },
{ bpmf: 'ㄐㄩㄥ', wg: 'chiung', mps2: 'jiung', yale: 'jyung', typy: 'jyong', pyn: 'jiong' },
{ bpmf: 'ㄐㄧㄡ', wg: 'chiu', mps2: 'jiou', yale: 'jyou', typy: 'jiou', pyn: 'jiu' },
{ bpmf: 'ㄐㄩ', wg: 'chü', mps2: 'jiu', yale: 'jyu', typy: 'jyu', pyn: 'ju' },
{ bpmf: 'ㄐㄩㄢ', wg: 'chüan', mps2: 'jiuan', yale: 'jywan', typy: 'jyuan', pyn: 'juan' },
{ bpmf: 'ㄐㄩㄝ', wg: 'chüeh', mps2: 'jiue', yale: 'jywe', typy: 'jyue', pyn: 'jue' },
{ bpmf: 'ㄐㄩㄣ', wg: 'chün', mps2: 'jiun', yale: 'jyun', typy: 'jyun', pyn: 'jun' },
{ bpmf: 'ㄎㄚ', wg: 'k`a', mps2: 'ka', yale: 'ka', typy: 'ka', pyn: 'ka' },
{ bpmf: 'ㄎㄞ', wg: 'k`ai', mps2: 'kai', yale: 'kai', typy: 'kai', pyn: 'kai' },
{ bpmf: 'ㄎㄢ', wg: 'k`an', mps2: 'kan', yale: 'kan', typy: 'kan', pyn: 'kan' },
{ bpmf: 'ㄎㄤ', wg: 'k`ang', mps2: 'kang', yale: 'kang', typy: 'kang', pyn: 'kang' },
{ bpmf: 'ㄎㄠ', wg: 'k`ao', mps2: 'kau', yale: 'kau', typy: 'kao', pyn: 'kao' },
{ bpmf: 'ㄎㄜ', wg: 'k`o', mps2: 'ke', yale: 'ke', typy: 'ke', pyn: 'ke' },
{ bpmf: 'ㄎㄣ', wg: 'k`en', mps2: 'ken', yale: 'ken', typy: 'ken', pyn: 'ken' },
{ bpmf: 'ㄎㄥ', wg: 'k`eng', mps2: 'keng', yale: 'keng', typy: 'keng', pyn: 'keng' },
{ bpmf: 'ㄎㄨㄥ', wg: 'k`ung', mps2: 'kung', yale: 'kung', typy: 'kong', pyn: 'kong' },
{ bpmf: 'ㄎㄡ', wg: 'k`ou', mps2: 'kou', yale: 'kou', typy: 'kou', pyn: 'kou' },
{ bpmf: 'ㄎㄨ', wg: 'k`u', mps2: 'ku', yale: 'ku', typy: 'ku', pyn: 'ku' },
{ bpmf: 'ㄎㄨㄚ', wg: 'k`ua', mps2: 'kua', yale: 'kwa', typy: 'kua', pyn: 'kua' },
{ bpmf: 'ㄎㄨㄞ', wg: 'k`uai', mps2: 'kuai', yale: 'kwai', typy: 'kuai', pyn: 'kuai' },
{ bpmf: 'ㄎㄨㄢ', wg: 'k`uan', mps2: 'kuan', yale: 'kwan', typy: 'kuan', pyn: 'kuan' },
{ bpmf: 'ㄎㄨㄤ', wg: 'k`uang', mps2: 'kuang', yale: 'kwang', typy: 'kuang', pyn: 'kuang' },
{ bpmf: 'ㄎㄨㄟ', wg: 'k`uei', mps2: 'kuei', yale: 'kwei', typy: 'kuei', pyn: 'kui' },
{ bpmf: 'ㄎㄨㄣ', wg: 'k`un', mps2: 'kuen', yale: 'kwen', typy: 'kun', pyn: 'kun' },
{ bpmf: 'ㄎㄨㄛ', wg: 'k`uo', mps2: 'kuo', yale: 'kwo', typy: 'kuo', pyn: 'kuo' },
{ bpmf: 'ㄌㄚ', wg: 'la', mps2: 'la', yale: 'la', typy: 'la', pyn: 'la' },
{ bpmf: 'ㄌㄞ', wg: 'lai', mps2: 'lai', yale: 'lai', typy: 'lai', pyn: 'lai' },
{ bpmf: 'ㄌㄢ', wg: 'lan', mps2: 'lan', yale: 'lan', typy: 'lan', pyn: 'lan' },
{ bpmf: 'ㄌㄤ', wg: 'lang', mps2: 'lang', yale: 'lang', typy: 'lang', pyn: 'lang' },
{ bpmf: 'ㄌㄠ', wg: 'lao', mps2: 'lau', yale: 'lau', typy: 'lao', pyn: 'lao' },
{ bpmf: 'ㄌㄜ', wg: 'le', mps2: 'le', yale: 'le', typy: 'le', pyn: 'le' },
{ bpmf: 'ㄌㄟ', wg: 'lei', mps2: 'lei', yale: 'lei', typy: 'lei', pyn: 'lei' },
{ bpmf: 'ㄌㄥ', wg: 'leng', mps2: 'leng', yale: 'leng', typy: 'leng', pyn: 'leng' },
{ bpmf: 'ㄌㄧ', wg: 'li', mps2: 'li', yale: 'li', typy: 'li', pyn: 'li' },
{ bpmf: 'ㄌㄧㄚ', wg: 'lia', mps2: 'lia', yale: 'lya', typy: 'lia', pyn: 'lia' },
{ bpmf: 'ㄌㄧㄢ', wg: 'lien', mps2: 'lian', yale: 'lyan', typy: 'lian', pyn: 'lian' },
{ bpmf: 'ㄌㄧㄤ', wg: 'liang', mps2: 'liang', yale: 'lyang', typy: 'liang', pyn: 'liang' },
{ bpmf: 'ㄌㄧㄠ', wg: 'liao', mps2: 'liau', yale: 'lyau', typy: 'liao', pyn: 'liao' },
{ bpmf: 'ㄌㄧㄝ', wg: 'lieh', mps2: 'lie', yale: 'lye', typy: 'lie', pyn: 'lie' },
{ bpmf: 'ㄌㄧㄣ', wg: 'lin', mps2: 'lin', yale: 'lin', typy: 'lin', pyn: 'lin' },
{ bpmf: 'ㄌㄧㄥ', wg: 'ling', mps2: 'ling', yale: 'ling', typy: 'ling', pyn: 'ling' },
{ bpmf: 'ㄌㄧㄡ', wg: 'liu', mps2: 'liou', yale: 'lyou', typy: 'liou', pyn: 'liu' },
{ bpmf: 'ㄌㄛ', wg: 'lo', mps2: 'lo', yale: 'lo', typy: 'lo', pyn: 'lo' },
{ bpmf: 'ㄌㄨㄥ', wg: 'lung', mps2: 'lung', yale: 'lung', typy: 'long', pyn: 'long' },
{ bpmf: 'ㄌㄡ', wg: 'lou', mps2: 'lou', yale: 'lou', typy: 'lou', pyn: 'lou' },
{ bpmf: 'ㄌㄨ', wg: 'lu', mps2: 'lu', yale: 'lu', typy: 'lu', pyn: 'lu' },
{ bpmf: 'ㄌㄨㄢ', wg: 'luan', mps2: 'luan', yale: 'lwan', typy: 'luan', pyn: 'luan' },
{ bpmf: 'ㄌㄨㄣ', wg: 'lun', mps2: 'luen', yale: 'lwun', typy: 'lun', pyn: 'lun' },
{ bpmf: 'ㄌㄨㄛ', wg: 'lo', mps2: 'luo', yale: 'lwo', typy: 'luo', pyn: 'luo' },
{ bpmf: 'ㄌㄩ', wg: '', mps2: 'liu', yale: 'lyu', typy: 'lyu', pyn: '' },
{ bpmf: 'ㄌㄩㄝ', wg: 'lüeh', mps2: 'liue', yale: 'lywe', typy: 'lyue', pyn: 'lüe' },
{ bpmf: 'ㄌㄩㄣ', wg: 'lün', mps2: 'liun', yale: 'lyun', typy: 'lyun', pyn: 'lün' },
{ bpmf: 'ㄌㄩ', wg: '', mps2: 'liu', yale: 'lyu', typy: 'lyu', pyn: 'lv' },
{ bpmf: 'ㄌㄩㄝ', wg: 'lüeh', mps2: 'liue', yale: 'lywe', typy: 'lyue', pyn: 'lve' },
{ bpmf: 'ㄌㄩㄣ', wg: 'lün', mps2: 'liun', yale: 'lyun', typy: 'lyun', pyn: 'lvn' },
{ bpmf: 'ㄇㄚ', wg: 'ma', mps2: 'ma', yale: 'ma', typy: 'ma', pyn: 'ma' },
{ bpmf: 'ㄇㄞ', wg: 'mai', mps2: 'mai', yale: 'mai', typy: 'mai', pyn: 'mai' },
{ bpmf: 'ㄇㄢ', wg: 'man', mps2: 'man', yale: 'man', typy: 'man', pyn: 'man' },
{ bpmf: 'ㄇㄤ', wg: 'mang', mps2: 'mang', yale: 'mang', typy: 'mang', pyn: 'mang' },
{ bpmf: 'ㄇㄠ', wg: 'mao', mps2: 'mau', yale: 'mau', typy: 'mao', pyn: 'mao' },
{ bpmf: 'ㄇㄜ', wg: 'me', mps2: 'me', yale: 'me', typy: 'me', pyn: 'me' },
{ bpmf: 'ㄇㄟ', wg: 'mei', mps2: 'mei', yale: 'mei', typy: 'mei', pyn: 'mei' },
{ bpmf: 'ㄇㄣ', wg: 'men', mps2: 'men', yale: 'men', typy: 'men', pyn: 'men' },
{ bpmf: 'ㄇㄥ', wg: 'meng', mps2: 'meng', yale: 'meng', typy: 'meng', pyn: 'meng' },
{ bpmf: 'ㄇㄧ', wg: 'mi', mps2: 'mi', yale: 'mi', typy: 'mi', pyn: 'mi' },
{ bpmf: 'ㄇㄧㄢ', wg: 'mien', mps2: 'mian', yale: 'myan', typy: 'mian', pyn: 'mian' },
{ bpmf: 'ㄇㄧㄠ', wg: 'miao', mps2: 'miau', yale: 'myau', typy: 'miao', pyn: 'miao' },
{ bpmf: 'ㄇㄧㄝ', wg: 'mieh', mps2: 'mie', yale: 'mye', typy: 'mie', pyn: 'mie' },
{ bpmf: 'ㄇㄧㄣ', wg: 'min', mps2: 'min', yale: 'min', typy: 'min', pyn: 'min' },
{ bpmf: 'ㄇㄧㄥ', wg: 'ming', mps2: 'ming', yale: 'ming', typy: 'ming', pyn: 'ming' },
{ bpmf: 'ㄇㄧㄡ', wg: 'miu', mps2: 'miou', yale: 'myou', typy: 'miou', pyn: 'miu' },
{ bpmf: 'ㄇㄛ', wg: 'mo', mps2: 'mo', yale: 'mwo', typy: 'mo', pyn: 'mo' },
{ bpmf: 'ㄇㄡ', wg: 'mou', mps2: 'mou', yale: 'mou', typy: 'mou', pyn: 'mou' },
{ bpmf: 'ㄇㄨ', wg: 'mu', mps2: 'mu', yale: 'mu', typy: 'mu', pyn: 'mu' },
{ bpmf: 'ㄋㄚ', wg: 'na', mps2: 'na', yale: 'na', typy: 'na', pyn: 'na' },
{ bpmf: 'ㄋㄞ', wg: 'nai', mps2: 'nai', yale: 'nai', typy: 'nai', pyn: 'nai' },
{ bpmf: 'ㄋㄢ', wg: 'nan', mps2: 'nan', yale: 'nan', typy: 'nan', pyn: 'nan' },
{ bpmf: 'ㄋㄤ', wg: 'nang', mps2: 'nang', yale: 'nang', typy: 'nang', pyn: 'nang' },
{ bpmf: 'ㄋㄠ', wg: 'nao', mps2: 'nau', yale: 'nau', typy: 'nao', pyn: 'nao' },
{ bpmf: 'ㄋㄜ', wg: 'ne', mps2: 'ne', yale: 'ne', typy: 'ne', pyn: 'ne' },
{ bpmf: 'ㄋㄟ', wg: 'nei', mps2: 'nei', yale: 'nei', typy: 'nei', pyn: 'nei' },
{ bpmf: 'ㄋㄣ', wg: 'nen', mps2: 'nen', yale: 'nen', typy: 'nen', pyn: 'nen' },
{ bpmf: 'ㄋㄥ', wg: 'neng', mps2: 'neng', yale: 'neng', typy: 'neng', pyn: 'neng' },
{ bpmf: 'ㄋㄧ', wg: 'ni', mps2: 'ni', yale: 'ni', typy: 'ni', pyn: 'ni' },
{ bpmf: 'ㄋㄧㄚ', wg: 'nia', mps2: 'nia', yale: 'nya', typy: 'nia', pyn: 'nia' },
{ bpmf: 'ㄋㄧㄢ', wg: 'nien', mps2: 'nian', yale: 'nyan', typy: 'nian', pyn: 'nian' },
{ bpmf: 'ㄋㄧㄤ', wg: 'niang', mps2: 'niang', yale: 'nyang', typy: 'niang', pyn: 'niang' },
{ bpmf: 'ㄋㄧㄠ', wg: 'niao', mps2: 'niau', yale: 'nyau', typy: 'niao', pyn: 'niao' },
{ bpmf: 'ㄋㄧㄝ', wg: 'nieh', mps2: 'nie', yale: 'nye', typy: 'nie', pyn: 'nie' },
{ bpmf: 'ㄋㄧㄣ', wg: 'nin', mps2: 'nin', yale: 'nin', typy: 'nin', pyn: 'nin' },
{ bpmf: 'ㄋㄧㄥ', wg: 'ning', mps2: 'ning', yale: 'ning', typy: 'ning', pyn: 'ning' },
{ bpmf: 'ㄋㄧㄡ', wg: 'niu', mps2: 'niou', yale: 'nyou', typy: 'niou', pyn: 'niu' },
{ bpmf: 'ㄋㄨㄥ', wg: 'nung', mps2: 'nung', yale: 'nung', typy: 'nong', pyn: 'nong' },
{ bpmf: 'ㄋㄡ', wg: 'nou', mps2: 'nou', yale: 'nou', typy: 'nou', pyn: 'nou' },
{ bpmf: 'ㄋㄨ', wg: 'nu', mps2: 'nu', yale: 'nu', typy: 'nu', pyn: 'nu' },
{ bpmf: 'ㄋㄨㄢ', wg: 'nuan', mps2: 'nuan', yale: 'nwan', typy: 'nuan', pyn: 'nuan' },
{ bpmf: 'ㄋㄨㄣ', wg: 'nun', mps2: 'nuen', yale: 'nwen', typy: 'nun', pyn: 'nun' },
{ bpmf: 'ㄋㄨㄛ', wg: 'no', mps2: 'nuo', yale: 'nwo', typy: 'nuo', pyn: 'nuo' },
{ bpmf: 'ㄋㄩ', wg: '', mps2: 'niu', yale: 'nyu', typy: 'nyu', pyn: 'nv' },
{ bpmf: 'ㄋㄩ', wg: '', mps2: 'niu', yale: 'nyu', typy: 'nyu', pyn: '' },
{ bpmf: 'ㄋㄩㄝ', wg: 'nüeh', mps2: 'niue', yale: 'nywe', typy: 'nyue', pyn: 'nüe' },
{ bpmf: 'ㄋㄩㄝ', wg: 'nüeh', mps2: 'niue', yale: 'nywe', typy: 'nyue', pyn: 'nve' },
{ bpmf: '', wg: 'ou', mps2: 'ou', yale: 'ou', typy: 'ou', pyn: 'ou' },
{ bpmf: '', wg: 'ou', mps2: 'ou', yale: 'ou', typy: 'ou', pyn: 'o' },
{ bpmf: 'ㄆㄚ', wg: 'p`a', mps2: 'pa', yale: 'pa', typy: 'pa', pyn: 'pa' },
{ bpmf: 'ㄆㄞ', wg: 'p`ai', mps2: 'pai', yale: 'pai', typy: 'pai', pyn: 'pai' },
{ bpmf: 'ㄆㄢ', wg: 'p`an', mps2: 'pan', yale: 'pan', typy: 'pan', pyn: 'pan' },
{ bpmf: 'ㄆㄤ', wg: 'p`ang', mps2: 'pang', yale: 'pang', typy: 'pang', pyn: 'pang' },
{ bpmf: 'ㄆㄠ', wg: 'p`ao', mps2: 'pau', yale: 'pau', typy: 'pao', pyn: 'pao' },
{ bpmf: 'ㄆㄟ', wg: 'p`ei', mps2: 'pei', yale: 'pei', typy: 'pei', pyn: 'pei' },
{ bpmf: 'ㄆㄣ', wg: 'p`en', mps2: 'pen', yale: 'pen', typy: 'pen', pyn: 'pen' },
{ bpmf: 'ㄆㄥ', wg: 'p`eng', mps2: 'peng', yale: 'peng', typy: 'peng', pyn: 'peng' },
{ bpmf: 'ㄆㄧ', wg: 'p`i', mps2: 'pi', yale: 'pi', typy: 'pi', pyn: 'pi' },
{ bpmf: 'ㄆㄧㄢ', wg: 'p`ien', mps2: 'pian', yale: 'pyan', typy: 'pian', pyn: 'pian' },
{ bpmf: 'ㄆㄧㄠ', wg: 'p`iao', mps2: 'piau', yale: 'pyau', typy: 'piao', pyn: 'piao' },
{ bpmf: 'ㄆㄧㄝ', wg: 'p`ieh', mps2: 'pie', yale: 'pye', typy: 'pie', pyn: 'pie' },
{ bpmf: 'ㄆㄧㄣ', wg: 'p`in', mps2: 'pin', yale: 'pin', typy: 'pin', pyn: 'pin' },
{ bpmf: 'ㄆㄧㄥ', wg: 'p`ing', mps2: 'ping', yale: 'ping', typy: 'ping', pyn: 'ping' },
{ bpmf: 'ㄆㄛ', wg: 'p`o', mps2: 'po', yale: 'pwo', typy: 'po', pyn: 'po' },
{ bpmf: 'ㄆㄡ', wg: 'p`ou', mps2: 'pou', yale: 'pou', typy: 'pou', pyn: 'pou' },
{ bpmf: 'ㄆㄨ', wg: 'p`u', mps2: 'pu', yale: 'pu', typy: 'pu', pyn: 'pu' },
{ bpmf: 'ㄑㄧ', wg: 'ch`i', mps2: 'chi', yale: 'chi', typy: 'ci', pyn: 'qi' },
{ bpmf: 'ㄑㄧㄚ', wg: 'ch`ia', mps2: 'chia', yale: 'chya', typy: 'cia', pyn: 'qia' },
{ bpmf: 'ㄑㄧㄢ', wg: 'ch`ien', mps2: 'chian', yale: 'chyan', typy: 'cian', pyn: 'qian' },
{ bpmf: 'ㄑㄧㄤ', wg: 'ch`iang', mps2: 'chiang', yale: 'chyang', typy: 'ciang', pyn: 'qiang' },
{ bpmf: 'ㄑㄧㄠ', wg: 'ch`iao', mps2: 'chiau', yale: 'chyau', typy: 'ciao', pyn: 'qiao' },
{ bpmf: 'ㄑㄧㄝ', wg: 'ch`ieh', mps2: 'chie', yale: 'chye', typy: 'cie', pyn: 'qie' },
{ bpmf: 'ㄑㄧㄣ', wg: 'ch`in', mps2: 'chin', yale: 'chin', typy: 'cin', pyn: 'qin' },
{ bpmf: 'ㄑㄧㄥ', wg: 'ch`ing', mps2: 'ching', yale: 'ching', typy: 'cing', pyn: 'qing' },
{ bpmf: 'ㄑㄩㄥ', wg: 'ch`iung', mps2: 'chiung', yale: 'chyung', typy: 'cyong', pyn: 'qiong' },
{ bpmf: 'ㄑㄧㄡ', wg: 'ch`iu', mps2: 'chiou', yale: 'chyou', typy: 'ciou', pyn: 'qiu' },
{ bpmf: 'ㄑㄩ', wg: 'ch`ü', mps2: 'chiu', yale: 'chyu', typy: 'cyu', pyn: 'qu' },
{ bpmf: 'ㄑㄩㄢ', wg: 'ch`üan', mps2: 'chiuan', yale: 'chywan', typy: 'cyuan', pyn: 'quan' },
{ bpmf: 'ㄑㄩㄝ', wg: 'ch`üeh', mps2: 'chiue', yale: 'chywe', typy: 'cyue', pyn: 'que' },
{ bpmf: 'ㄑㄩㄣ', wg: 'ch`ün', mps2: 'chiun', yale: 'chyun', typy: 'cyun', pyn: 'qun' },
{ bpmf: 'ㄖㄢ', wg: 'jan', mps2: 'ran', yale: 'ran', typy: 'ran', pyn: 'ran' },
{ bpmf: 'ㄖㄤ', wg: 'jang', mps2: 'rang', yale: 'rang', typy: 'rang', pyn: 'rang' },
{ bpmf: 'ㄖㄠ', wg: 'jao', mps2: 'rau', yale: 'rau', typy: 'rao', pyn: 'rao' },
{ bpmf: 'ㄖㄜ', wg: 'je', mps2: 're', yale: 're', typy: 're', pyn: 're' },
{ bpmf: 'ㄖㄣ', wg: 'jen', mps2: 'ren', yale: 'ren', typy: 'ren', pyn: 'ren' },
{ bpmf: 'ㄖㄥ', wg: 'jeng', mps2: 'reng', yale: 'reng', typy: 'reng', pyn: 'reng' },
{ bpmf: '', wg: 'jih', mps2: 'r', yale: 'r', typy: 'rih', pyn: 'ri' },
{ bpmf: 'ㄖㄨㄥ', wg: 'jung', mps2: 'rung', yale: 'rung', typy: 'rong', pyn: 'rong' },
{ bpmf: 'ㄖㄡ', wg: 'jou', mps2: 'rou', yale: 'rou', typy: 'rou', pyn: 'rou' },
{ bpmf: 'ㄖㄨ', wg: 'ju', mps2: 'ru', yale: 'ru', typy: 'ru', pyn: 'ru' },
{ bpmf: 'ㄖㄨㄢ', wg: 'juan', mps2: 'ruan', yale: 'rwan', typy: 'ruan', pyn: 'ruan' },
{ bpmf: 'ㄖㄨㄟ', wg: 'jui', mps2: 'ruei', yale: 'rwei', typy: 'ruei', pyn: 'rui' },
{ bpmf: 'ㄖㄨㄣ', wg: 'jun', mps2: 'ruen', yale: 'rwun', typy: 'run', pyn: 'run' },
{ bpmf: 'ㄖㄨㄛ', wg: 'jo', mps2: 'ruo', yale: 'rwo', typy: 'ruo', pyn: 'ruo' },
{ bpmf: 'ㄙㄚ', wg: 'sa', mps2: 'sa', yale: 'sa', typy: 'sa', pyn: 'sa' },
{ bpmf: 'ㄙㄞ', wg: 'sai', mps2: 'sai', yale: 'sai', typy: 'sai', pyn: 'sai' },
{ bpmf: 'ㄙㄢ', wg: 'san', mps2: 'san', yale: 'san', typy: 'san', pyn: 'san' },
{ bpmf: 'ㄙㄤ', wg: 'sang', mps2: 'sang', yale: 'sang', typy: 'sang', pyn: 'sang' },
{ bpmf: 'ㄙㄠ', wg: 'sao', mps2: 'sau', yale: 'sau', typy: 'sao', pyn: 'sao' },
{ bpmf: 'ㄙㄜ', wg: 'se', mps2: 'se', yale: 'se', typy: 'se', pyn: 'se' },
{ bpmf: 'ㄙㄟ', wg: 'sei', mps2: 'sei', yale: 'sei', typy: 'sei', pyn: 'sei' },
{ bpmf: 'ㄙㄣ', wg: 'sen', mps2: 'sen', yale: 'sen', typy: 'sen', pyn: 'sen' },
{ bpmf: 'ㄙㄥ', wg: 'seng', mps2: 'seng', yale: 'seng', typy: 'seng', pyn: 'seng' },
{ bpmf: 'ㄕㄚ', wg: 'sha', mps2: 'sha', yale: 'sha', typy: 'sha', pyn: 'sha' },
{ bpmf: 'ㄕㄞ', wg: 'shai', mps2: 'shai', yale: 'shai', typy: 'shai', pyn: 'shai' },
{ bpmf: 'ㄕㄢ', wg: 'shan', mps2: 'shan', yale: 'shan', typy: 'shan', pyn: 'shan' },
{ bpmf: 'ㄕㄤ', wg: 'shang', mps2: 'shang', yale: 'shang', typy: 'shang', pyn: 'shang' },
{ bpmf: 'ㄕㄠ', wg: 'shao', mps2: 'shau', yale: 'shau', typy: 'shao', pyn: 'shao' },
{ bpmf: 'ㄕㄜ', wg: 'she', mps2: 'she', yale: 'she', typy: 'she', pyn: 'she' },
{ bpmf: 'ㄕㄟ', wg: 'shei', mps2: 'shei', yale: 'shei', typy: 'shei', pyn: 'shei' },
{ bpmf: 'ㄕㄣ', wg: 'shen', mps2: 'shen', yale: 'shen', typy: 'shen', pyn: 'shen' },
{ bpmf: 'ㄕㄥ', wg: 'sheng', mps2: 'sheng', yale: 'sheng', typy: 'sheng', pyn: 'sheng' },
{ bpmf: '', wg: 'shih', mps2: 'shr', yale: 'shr', typy: 'shih', pyn: 'shi' },
{ bpmf: 'ㄕㄨㄥ', wg: 'shung', mps2: 'shung', yale: 'shung', typy: 'shong', pyn: 'shong' },
{ bpmf: 'ㄕㄡ', wg: 'shou', mps2: 'shou', yale: 'shou', typy: 'shou', pyn: 'shou' },
{ bpmf: 'ㄕㄨ', wg: 'shu', mps2: 'shu', yale: 'shu', typy: 'shu', pyn: 'shu' },
{ bpmf: 'ㄕㄨㄚ', wg: 'shua', mps2: 'shua', yale: 'shwa', typy: 'shua', pyn: 'shua' },
{ bpmf: 'ㄕㄨㄞ', wg: 'shuai', mps2: 'shuai', yale: 'shwai', typy: 'shuai', pyn: 'shuai' },
{ bpmf: 'ㄕㄨㄢ', wg: 'shuan', mps2: 'shuan', yale: 'shwan', typy: 'shuan', pyn: 'shuan' },
{ bpmf: 'ㄕㄨㄤ', wg: 'shuang', mps2: 'shuang', yale: 'shwang', typy: 'shuang', pyn: 'shuang' },
{ bpmf: 'ㄕㄨㄟ', wg: 'shui', mps2: 'shuei', yale: 'shwei', typy: 'shuei', pyn: 'shui' },
{ bpmf: 'ㄕㄨㄣ', wg: 'shun', mps2: 'shuen', yale: 'shwun', typy: 'shun', pyn: 'shun' },
{ bpmf: 'ㄕㄨㄛ', wg: 'shuo', mps2: 'shuo', yale: 'shwo', typy: 'shuo', pyn: 'shuo' },
{ bpmf: '', wg: 'ssu', mps2: 'sz', yale: 'sz', typy: 'sih', pyn: 'si' },
{ bpmf: 'ㄙㄨㄥ', wg: 'sung', mps2: 'sung', yale: 'sung', typy: 'song', pyn: 'song' },
{ bpmf: 'ㄙㄡ', wg: 'sou', mps2: 'sou', yale: 'sou', typy: 'sou', pyn: 'sou' },
{ bpmf: 'ㄙㄨ', wg: 'su', mps2: 'su', yale: 'su', typy: 'su', pyn: 'su' },
{ bpmf: 'ㄙㄨㄢ', wg: 'suan', mps2: 'suan', yale: 'swan', typy: 'suan', pyn: 'suan' },
{ bpmf: 'ㄙㄨㄟ', wg: 'sui', mps2: 'suei', yale: 'swei', typy: 'suei', pyn: 'sui' },
{ bpmf: 'ㄙㄨㄣ', wg: 'sun', mps2: 'suen', yale: 'swen', typy: 'sun', pyn: 'sun' },
{ bpmf: 'ㄙㄨㄛ', wg: 'so', mps2: 'suo', yale: 'swo', typy: 'suo', pyn: 'suo' },
{ bpmf: 'ㄊㄚ', wg: 't`a', mps2: 'ta', yale: 'ta', typy: 'ta', pyn: 'ta' },
{ bpmf: 'ㄊㄞ', wg: 't`ai', mps2: 'tai', yale: 'tai', typy: 'tai', pyn: 'tai' },
{ bpmf: 'ㄊㄢ', wg: 't`an', mps2: 'tan', yale: 'tan', typy: 'tan', pyn: 'tan' },
{ bpmf: 'ㄊㄤ', wg: 't`ang', mps2: 'tang', yale: 'tang', typy: 'tang', pyn: 'tang' },
{ bpmf: 'ㄊㄠ', wg: 't`ao', mps2: 'tau', yale: 'tau', typy: 'tao', pyn: 'tao' },
{ bpmf: 'ㄊㄜ', wg: 't`e', mps2: 'te', yale: 'te', typy: 'te', pyn: 'te' },
{ bpmf: 'ㄊㄥ', wg: 't`eng', mps2: 'teng', yale: 'teng', typy: 'teng', pyn: 'teng' },
{ bpmf: 'ㄊㄧ', wg: 't`i', mps2: 'ti', yale: 'ti', typy: 'ti', pyn: 'ti' },
{ bpmf: 'ㄊㄧㄢ', wg: 't`ien', mps2: 'tian', yale: 'tyan', typy: 'tian', pyn: 'tian' },
{ bpmf: 'ㄊㄧㄠ', wg: 't`iao', mps2: 'tiau', yale: 'tyau', typy: 'tiao', pyn: 'tiao' },
{ bpmf: 'ㄊㄧㄝ', wg: 't`ieh', mps2: 'tie', yale: 'tye', typy: 'tie', pyn: 'tie' },
{ bpmf: 'ㄊㄧㄥ', wg: 't`ing', mps2: 'ting', yale: 'ting', typy: 'ting', pyn: 'ting' },
{ bpmf: 'ㄊㄨㄥ', wg: 't`ung', mps2: 'tung', yale: 'tung', typy: 'tong', pyn: 'tong' },
{ bpmf: 'ㄊㄡ', wg: 't`ou', mps2: 'tou', yale: 'tou', typy: 'tou', pyn: 'tou' },
{ bpmf: 'ㄊㄨ', wg: 't`u', mps2: 'tu', yale: 'tu', typy: 'tu', pyn: 'tu' },
{ bpmf: 'ㄊㄨㄢ', wg: 't`uan', mps2: 'tuan', yale: 'twan', typy: 'tuan', pyn: 'tuan' },
{ bpmf: 'ㄊㄨㄟ', wg: 't`ui', mps2: 'tuei', yale: 'twei', typy: 'tuei', pyn: 'tui' },
{ bpmf: 'ㄊㄨㄣ', wg: 't`un', mps2: 'tuen', yale: 'twen', typy: 'tun', pyn: 'tun' },
{ bpmf: 'ㄊㄨㄛ', wg: 't`o', mps2: 'tuo', yale: 'two', typy: 'tuo', pyn: 'tuo' },
{ bpmf: 'ㄨㄚ', wg: 'wa', mps2: 'wa', yale: 'wa', typy: 'wa', pyn: 'wa' },
{ bpmf: 'ㄨㄞ', wg: 'wai', mps2: 'wai', yale: 'wai', typy: 'wai', pyn: 'wai' },
{ bpmf: 'ㄨㄢ', wg: 'wan', mps2: 'wan', yale: 'wan', typy: 'wan', pyn: 'wan' },
{ bpmf: 'ㄨㄤ', wg: 'wang', mps2: 'wang', yale: 'wang', typy: 'wang', pyn: 'wang' },
{ bpmf: 'ㄨㄟ', wg: 'wei', mps2: 'wei', yale: 'wei', typy: 'wei', pyn: 'wei' },
{ bpmf: 'ㄨㄣ', wg: 'wen', mps2: 'wen', yale: 'wen', typy: 'wun', pyn: 'wen' },
{ bpmf: 'ㄨㄥ', wg: 'weng', mps2: 'weng', yale: 'weng', typy: 'wong', pyn: 'weng' },
{ bpmf: 'ㄨㄛ', wg: 'wo', mps2: 'wo', yale: 'wo', typy: 'wo', pyn: 'wo' },
{ bpmf: '', wg: 'wu', mps2: 'wu', yale: 'wu', typy: 'wu', pyn: 'wu' },
{ bpmf: 'ㄒㄧ', wg: 'hsi', mps2: 'shi', yale: 'syi', typy: 'si', pyn: 'xi' },
{ bpmf: 'ㄒㄧㄚ', wg: 'hsia', mps2: 'shia', yale: 'sya', typy: 'sia', pyn: 'xia' },
{ bpmf: 'ㄒㄧㄢ', wg: 'hsien', mps2: 'shian', yale: 'syan', typy: 'sian', pyn: 'xian' },
{ bpmf: 'ㄒㄧㄤ', wg: 'hsiang', mps2: 'shiang', yale: 'syang', typy: 'siang', pyn: 'xiang' },
{ bpmf: 'ㄒㄧㄠ', wg: 'hsiao', mps2: 'shiau', yale: 'syau', typy: 'siao', pyn: 'xiao' },
{ bpmf: 'ㄒㄧㄝ', wg: 'hsieh', mps2: 'shie', yale: 'sye', typy: 'sie', pyn: 'xie' },
{ bpmf: 'ㄒㄧㄣ', wg: 'hsin', mps2: 'shin', yale: 'syin', typy: 'sin', pyn: 'xin' },
{ bpmf: 'ㄒㄧㄥ', wg: 'hsing', mps2: 'shing', yale: 'sying', typy: 'sing', pyn: 'xing' },
{ bpmf: 'ㄒㄩㄥ', wg: 'hsiung', mps2: 'shiung', yale: 'syung', typy: 'syong', pyn: 'xiong' },
{ bpmf: 'ㄒㄧㄡ', wg: 'hsiu', mps2: 'shiou', yale: 'syou', typy: 'siou', pyn: 'xiu' },
{ bpmf: 'ㄒㄩ', wg: 'hsü', mps2: 'shiu', yale: 'syu', typy: 'syu', pyn: 'xu' },
{ bpmf: 'ㄒㄩㄢ', wg: 'hsüan', mps2: 'shiuan', yale: 'sywan', typy: 'syuan', pyn: 'xuan' },
{ bpmf: 'ㄒㄩㄝ', wg: 'hsüeh', mps2: 'shiue', yale: 'sywe', typy: 'syue', pyn: 'xue' },
{ bpmf: 'ㄒㄩㄣ', wg: 'hsün', mps2: 'shiun', yale: 'syun', typy: 'syun', pyn: 'xun' },
{ bpmf: 'ㄧㄚ', wg: 'ya', mps2: 'ya', yale: 'ya', typy: 'ya', pyn: 'ya' },
{ bpmf: 'ㄧㄢ', wg: 'yan', mps2: 'yan', yale: 'yan', typy: 'yan', pyn: 'yan' },
{ bpmf: 'ㄧㄤ', wg: 'yang', mps2: 'yang', yale: 'yang', typy: 'yang', pyn: 'yang' },
{ bpmf: 'ㄧㄠ', wg: 'yao', mps2: 'yau', yale: 'yau', typy: 'yao', pyn: 'yao' },
{ bpmf: 'ㄧㄝ', wg: 'yeh', mps2: 'ye', yale: 'ye', typy: 'ye', pyn: 'ye' },
{ bpmf: '', wg: 'i', mps2: 'yi', yale: 'yi', typy: 'yi', pyn: 'yi' },
{ bpmf: 'ㄧㄣ', wg: 'yin', mps2: 'yin', yale: 'yin', typy: 'yin', pyn: 'yin' },
{ bpmf: 'ㄧㄥ', wg: 'ying', mps2: 'ying', yale: 'ying', typy: 'ying', pyn: 'ying' },
{ bpmf: 'ㄩㄥ', wg: 'yung', mps2: 'yung', yale: 'yung', typy: 'yong', pyn: 'yong' },
{ bpmf: 'ㄧㄡ', wg: 'yu', mps2: 'you', yale: 'you', typy: 'you', pyn: 'yo' },
{ bpmf: 'ㄧㄡ', wg: 'yu', mps2: 'you', yale: 'you', typy: 'you', pyn: 'you' },
{ bpmf: '', wg: '', mps2: 'yu', yale: 'yu', typy: 'yu', pyn: 'yu' },
{ bpmf: 'ㄩㄢ', wg: 'yüan', mps2: 'yuan', yale: 'ywan', typy: 'yuan', pyn: 'yuan' },
{ bpmf: 'ㄩㄝ', wg: 'yüeh', mps2: 'yue', yale: 'ywe', typy: 'yue', pyn: 'yue' },
{ bpmf: 'ㄩㄣ', wg: 'yün', mps2: 'yun', yale: 'yun', typy: 'yun', pyn: 'yun' },
{ bpmf: 'ㄗㄚ', wg: 'tsa', mps2: 'tza', yale: 'dza', typy: 'za', pyn: 'za' },
{ bpmf: 'ㄗㄞ', wg: 'tsai', mps2: 'tzai', yale: 'dzai', typy: 'zai', pyn: 'zai' },
{ bpmf: 'ㄗㄢ', wg: 'tsan', mps2: 'tzan', yale: 'dzan', typy: 'zan', pyn: 'zan' },
{ bpmf: 'ㄗㄤ', wg: 'tsang', mps2: 'tzang', yale: 'dzang', typy: 'zang', pyn: 'zang' },
{ bpmf: 'ㄗㄠ', wg: 'tsao', mps2: 'tzau', yale: 'dzau', typy: 'zao', pyn: 'zao' },
{ bpmf: 'ㄗㄜ', wg: 'tse', mps2: 'tze', yale: 'dze', typy: 'ze', pyn: 'ze' },
{ bpmf: 'ㄗㄟ', wg: 'tsei', mps2: 'tzei', yale: 'dzei', typy: 'zei', pyn: 'zei' },
{ bpmf: 'ㄗㄣ', wg: 'tsen', mps2: 'tzen', yale: 'dzen', typy: 'zen', pyn: 'zen' },
{ bpmf: 'ㄗㄥ', wg: 'tseng', mps2: 'tzeng', yale: 'dzeng', typy: 'zeng', pyn: 'zeng' },
{ bpmf: 'ㄓㄚ', wg: 'cha', mps2: 'ja', yale: 'ja', typy: 'jha', pyn: 'zha' },
{ bpmf: 'ㄓㄞ', wg: 'chai', mps2: 'jai', yale: 'jai', typy: 'jhai', pyn: 'zhai' },
{ bpmf: 'ㄓㄢ', wg: 'chan', mps2: 'jan', yale: 'jan', typy: 'jhan', pyn: 'zhan' },
{ bpmf: 'ㄓㄤ', wg: 'chang', mps2: 'jang', yale: 'jang', typy: 'jhang', pyn: 'zhang' },
{ bpmf: 'ㄓㄠ', wg: 'chao', mps2: 'jau', yale: 'jau', typy: 'jhao', pyn: 'zhao' },
{ bpmf: 'ㄓㄜ', wg: 'che', mps2: 'je', yale: 'je', typy: 'jhe', pyn: 'zhe' },
{ bpmf: 'ㄓㄟ', wg: 'chei', mps2: 'jei', yale: 'jei', typy: 'jhei', pyn: 'zhei' },
{ bpmf: 'ㄓㄣ', wg: 'chen', mps2: 'jen', yale: 'jen', typy: 'jhen', pyn: 'zhen' },
{ bpmf: 'ㄓㄥ', wg: 'cheng', mps2: 'jeng', yale: 'jeng', typy: 'jheng', pyn: 'zheng' },
{ bpmf: '', wg: 'chih', mps2: 'jr', yale: 'jr', typy: 'jhih', pyn: 'zhi' },
{ bpmf: 'ㄓㄨㄥ', wg: 'chung', mps2: 'jung', yale: 'jung', typy: 'jhong', pyn: 'zhong' },
{ bpmf: 'ㄓㄡ', wg: 'chou', mps2: 'jou', yale: 'jou', typy: 'jhou', pyn: 'zhou' },
{ bpmf: 'ㄓㄨ', wg: 'chu', mps2: 'ju', yale: 'ju', typy: 'jhu', pyn: 'zhu' },
{ bpmf: 'ㄓㄨㄚ', wg: 'chua', mps2: 'jua', yale: 'jwa', typy: 'jhua', pyn: 'zhua' },
{ bpmf: 'ㄓㄨㄞ', wg: 'chuai', mps2: 'juai', yale: 'jwai', typy: 'jhuai', pyn: 'zhuai' },
{ bpmf: 'ㄓㄨㄢ', wg: 'chuan', mps2: 'juan', yale: 'jwan', typy: 'jhuan', pyn: 'zhuan' },
{ bpmf: 'ㄓㄨㄤ', wg: 'chuang', mps2: 'juang', yale: 'jwang', typy: 'jhuang', pyn: 'zhuang' },
{ bpmf: 'ㄓㄨㄟ', wg: 'chui', mps2: 'juei', yale: 'jwei', typy: 'jhuei', pyn: 'zhui' },
{ bpmf: 'ㄓㄨㄣ', wg: 'chun', mps2: 'juen', yale: 'jwen', typy: 'jhun', pyn: 'zhun' },
{ bpmf: 'ㄓㄨㄛ', wg: 'cho', mps2: 'juo', yale: 'jwo', typy: 'jhuo', pyn: 'zhuo' },
{ bpmf: '', wg: 'tzu', mps2: 'tz', yale: 'dz', typy: 'zih', pyn: 'zi' },
{ bpmf: 'ㄗㄨㄥ', wg: 'tsung', mps2: 'tzung', yale: 'dzung', typy: 'zong', pyn: 'zong' },
{ bpmf: 'ㄗㄡ', wg: 'tsou', mps2: 'tzou', yale: 'dzou', typy: 'zou', pyn: 'zou' },
{ bpmf: 'ㄗㄨ', wg: 'tsu', mps2: 'tzu', yale: 'dzu', typy: 'zu', pyn: 'zu' },
{ bpmf: 'ㄗㄨㄢ', wg: 'tsuan', mps2: 'tzuan', yale: 'dzwan', typy: 'zuan', pyn: 'zuan' },
{ bpmf: 'ㄗㄨㄟ', wg: 'tsui', mps2: 'tzuei', yale: 'dzwei', typy: 'zuei', pyn: 'zui' },
{ bpmf: 'ㄗㄨㄣ', wg: 'tsun', mps2: 'tzuen', yale: 'dzwen', typy: 'zun', pyn: 'zun' },
{ bpmf: 'ㄗㄨㄛ', wg: 'tso', mps2: 'tzuo', yale: 'dzwo', typy: 'zuo', pyn: 'zuo' },
{ bpmf: '', wg: 'rh', mps2: 'r', yale: 'r', typy: 'r', pyn: 'r' }
]

Class Method Summary collapse

Class Method Details

.convert(str, to, from) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/zhongwen_tools/romanization.rb', line 14

def self.convert(str, to, from)
  # NOTE: don't convert if it already is converted.
  return str if to == from

  if to == :py
    convert_to_py(str, from)
  elsif to == :pyn
    convert_to_pyn(str, from)
  else
    convert_to_other(str, from, to)
  end
end

.convert_to_py(str, from) ⇒ Object



8
9
10
11
# File 'lib/zhongwen_tools/romanization/pinyin.rb', line 8

def self.convert_to_py(str, from)
  str =  convert_romanization(str, from, :pyn) if from != :pyn
  Pinyin.convert_pyn_to_pinyin(str)
end

.convert_to_pyn(str, from) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/zhongwen_tools/romanization/pinyin.rb', line 13

def self.convert_to_pyn(str, from)
  orig_str = str.dup

  if from == :py
    str = Romanization::Pinyin.convert_pinyin_to_pyn(str)
  else
    str = convert_romanization(str, from, :pyn)
  end

  str = Romanization::Pinyin.add_hyphens_to_pyn(str) if hyphenated?(orig_str)

  str
end

.romanization?(str) ⇒ Boolean

Public: Checks the romanization type for the string.

Romanization types are like ducks. If it walks, talks, and acts
like a duck, it is a duck. Therefore, where a String is both
pinyin and another romanization system, it will be identified
as pinyin. If you need to determine whether a py/pyn string
belongs to another romanization system p a romanization
system, use the romanization modules specific function.

Zhuyin Fuhao, Tongyong Pinyin, Wade Giles, MSP2 or Yale.
http://en.wikipedia.org/wiki/Tongyong_Pinyin
http://pinyin.info/romanization/tongyong/
http://en.wikipedia.org/wiki/Wade%E2%80%93Giles
http://en.wikipedia.org/wiki/Bopomofo
http://pinyin.info/romanization/bopomofo/index.html  # str - a String to test.

Examples

romanization?('hao3') #=> :pyn
romanization?('zzzz')   #=> nil

Returns a String for the romanization system or Nil if the string is not a romanization.

Returns:

  • (Boolean)


49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/zhongwen_tools/romanization.rb', line 49

def self.romanization?(str)
  if ZhongwenTools::Romanization::Pinyin.pyn?(str)
    :pyn
  elsif ZhongwenTools::Romanization::Pinyin.py?(str)
    :py
  elsif ZhongwenTools::Romanization::ZhuyinFuhao.bpmf?(str)
    :bpmf
  elsif ZhongwenTools::Romanization::WadeGiles.wg?(str)
    :wg
  elsif ZhongwenTools::Romanization::TongyongPinyin.typy?(str)
    :typy
  elsif ZhongwenTools::Romanization::Yale.yale?(str)
    :yale
  elsif ZhongwenTools::Romanization::MPS2.mps2?(str)
    :mps2
  end
end

.split(str, type = nil) ⇒ Object



67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'lib/zhongwen_tools/romanization.rb', line 67

def self.split(str, type = nil)
  type ||= romanization?(str)

  if type == :py
    ZhongwenTools::Romanization::Pinyin.split_py(str)
  elsif type == :pyn
    ZhongwenTools::Romanization::Pinyin.split_pyn(str)
  elsif type == :bpmf
    ZhongwenTools::Romanization::ZhuyinFuhao.split(str)
  elsif type == :wg
    ZhongwenTools::Romanization::WadeGiles.split(str)
  elsif type == :typy
    ZhongwenTools::Romanization::TongyongPinyin.split(str)
  elsif type == :yale
    ZhongwenTools::Romanization::Yale.split(str)
  elsif type == :mps2
    ZhongwenTools::Romanization::MPS2.split(str)
  end
end