interscript 0.1.5 → 2.1.0a8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -0
  4. data/Gemfile +29 -0
  5. data/LICENSE.adoc +31 -0
  6. data/README.md +3 -0
  7. data/Rakefile +53 -0
  8. data/bin/console +14 -0
  9. data/bin/interscript +3 -39
  10. data/bin/maps_analyze_staging +168 -0
  11. data/bin/maps_debug_compilers +58 -0
  12. data/bin/maps_debug_ordering +88 -0
  13. data/bin/maps_debug_ruby_compile +24 -0
  14. data/bin/maps_debug_step_by_step +44 -0
  15. data/bin/maps_optimize_order +112 -0
  16. data/bin/maps_v1_analyze_regexps +45 -0
  17. data/bin/maps_v1_to_v2 +426 -0
  18. data/exe/interscript +6 -0
  19. data/interscript.gemspec +31 -0
  20. data/lib/interscript.rb +81 -123
  21. data/lib/interscript/command.rb +5 -5
  22. data/lib/interscript/compiler.rb +22 -0
  23. data/lib/interscript/compiler/javascript.rb +292 -0
  24. data/lib/interscript/compiler/ruby.rb +262 -0
  25. data/lib/interscript/dsl.rb +67 -0
  26. data/lib/interscript/dsl/aliases.rb +23 -0
  27. data/lib/interscript/dsl/document.rb +46 -0
  28. data/lib/interscript/dsl/group.rb +45 -0
  29. data/lib/interscript/dsl/group/parallel.rb +6 -0
  30. data/lib/interscript/dsl/items.rb +89 -0
  31. data/lib/interscript/dsl/metadata.rb +26 -0
  32. data/lib/interscript/dsl/stage.rb +6 -0
  33. data/lib/interscript/dsl/symbol_mm.rb +11 -0
  34. data/lib/interscript/dsl/tests.rb +12 -0
  35. data/lib/interscript/interpreter.rb +251 -0
  36. data/lib/interscript/node.rb +25 -0
  37. data/lib/interscript/node/alias_def.rb +15 -0
  38. data/lib/interscript/node/dependency.rb +13 -0
  39. data/lib/interscript/node/document.rb +45 -0
  40. data/lib/interscript/node/group.rb +34 -0
  41. data/lib/interscript/node/group/parallel.rb +9 -0
  42. data/lib/interscript/node/group/sequential.rb +2 -0
  43. data/lib/interscript/node/item.rb +52 -0
  44. data/lib/interscript/node/item/alias.rb +42 -0
  45. data/lib/interscript/node/item/any.rb +61 -0
  46. data/lib/interscript/node/item/capture.rb +50 -0
  47. data/lib/interscript/node/item/group.rb +51 -0
  48. data/lib/interscript/node/item/repeat.rb +40 -0
  49. data/lib/interscript/node/item/stage.rb +23 -0
  50. data/lib/interscript/node/item/string.rb +51 -0
  51. data/lib/interscript/node/metadata.rb +18 -0
  52. data/lib/interscript/node/rule.rb +6 -0
  53. data/lib/interscript/node/rule/funcall.rb +18 -0
  54. data/lib/interscript/node/rule/run.rb +15 -0
  55. data/lib/interscript/node/rule/sub.rb +65 -0
  56. data/lib/interscript/node/stage.rb +19 -0
  57. data/lib/interscript/node/tests.rb +15 -0
  58. data/lib/interscript/stdlib.rb +211 -0
  59. data/lib/interscript/utils/regexp_converter.rb +283 -0
  60. data/lib/interscript/version.rb +1 -1
  61. data/requirements.txt +1 -0
  62. metadata +73 -311
  63. data/README.adoc +0 -298
  64. data/bin/rspec +0 -29
  65. data/lib/__pycache__/g2pwrapper.cpython-38.pyc +0 -0
  66. data/lib/g2pwrapper.py +0 -34
  67. data/lib/interscript-opal.rb +0 -2
  68. data/lib/interscript/fs.rb +0 -69
  69. data/lib/interscript/mapping.rb +0 -142
  70. data/lib/interscript/opal.rb +0 -23
  71. data/lib/interscript/opal/maps.js.erb +0 -7
  72. data/lib/interscript/opal_map_translate.rb +0 -12
  73. data/lib/model-7 +0 -0
  74. data/lib/tha-pt-b-7 +0 -0
  75. data/maps/acadsin-zho-Hani-Latn-2002.yaml +0 -38912
  76. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +0 -141
  77. data/maps/alalc-bel-cyrl-latn-1997.yaml +0 -125
  78. data/maps/alalc-ben-Beng-Latn-2017.yaml +0 -130
  79. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +0 -94
  80. data/maps/alalc-ell-Grek-Latn-1997.yaml +0 -625
  81. data/maps/alalc-ell-Grek-Latn-2010.yaml +0 -628
  82. data/maps/alalc-kat-Geok-Latn-1997.yaml +0 -112
  83. data/maps/alalc-kat-Geor-Latn-1997.yaml +0 -146
  84. data/maps/alalc-kor-Hang-Latn-1997.yaml +0 -94
  85. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +0 -103
  86. data/maps/alalc-mkd-cyrl-latn-1997.yaml +0 -114
  87. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +0 -222
  88. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +0 -162
  89. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +0 -114
  90. data/maps/alalc-srp-cyrl-latn-2013.yaml +0 -135
  91. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +0 -141
  92. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +0 -16
  93. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +0 -283
  94. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -175
  95. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +0 -169
  96. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -294
  97. data/maps/bgn-kor-Hang-Latn-1943.yaml +0 -31
  98. data/maps/bgn-kor-Kore-Latn-1943.yaml +0 -31
  99. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +0 -208
  100. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +0 -208
  101. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +0 -108
  102. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +0 -104
  103. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +0 -184
  104. data/maps/bgnpcgn-bel-cyrl-latn-1979.yaml +0 -285
  105. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +0 -115
  106. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +0 -38
  107. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +0 -702
  108. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -20
  109. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +0 -257
  110. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +0 -127
  111. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -43
  112. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +0 -253
  113. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +0 -48
  114. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +0 -48
  115. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +0 -159
  116. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +0 -190
  117. data/maps/bgnpcgn-per-Arab-Latn-1956.yaml +0 -93
  118. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +0 -314
  119. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +0 -166
  120. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -163
  121. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +0 -208
  122. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +0 -7456
  123. data/maps/by-bel-Cyrl-Latn-1998.yaml +0 -168
  124. data/maps/by-bel-Cyrl-Latn-2007.yaml +0 -115
  125. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +0 -685
  126. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +0 -681
  127. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -20
  128. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -32
  129. data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -89
  130. data/maps/gki-bel-cyrl-latn-1992.yaml +0 -33
  131. data/maps/gki-bel-cyrl-latn-2000.yaml +0 -201
  132. data/maps/gost-rus-cyrl-latn-16876-71-1983.yaml +0 -186
  133. data/maps/hk-yue-Hani-Latn-1888.yaml +0 -38497
  134. data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -141
  135. data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -122
  136. data/maps/icao-heb-Hebr-Latn-9303.yaml +0 -151
  137. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +0 -117
  138. data/maps/icao-per-Arab-Latn-9303.yaml +0 -104
  139. data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -118
  140. data/maps/icao-srp-Cyrl-Latn-9303.yaml +0 -117
  141. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -120
  142. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +0 -610
  143. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +0 -41
  144. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +0 -62
  145. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -272
  146. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +0 -109
  147. data/maps/kp-kor-Hang-Latn-2002.yaml +0 -901
  148. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +0 -44820
  149. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +0 -411
  150. data/maps/moct-kor-Hang-Latn-2000.yaml +0 -803
  151. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +0 -541
  152. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +0 -225
  153. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +0 -63
  154. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +0 -110
  155. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +0 -37
  156. data/maps/nil-kor-Hang-Hang-jamo.yaml +0 -11193
  157. data/maps/odni-aze-Cyrl-Latn-2015.yaml +0 -144
  158. data/maps/odni-bel-Cyrl-Latn-2015.yaml +0 -148
  159. data/maps/odni-bul-Cyrl-Latn-2015.yaml +0 -96
  160. data/maps/odni-kat-Geor-Latn-2015.yaml +0 -88
  161. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +0 -148
  162. data/maps/odni-kir-Cyrl-Latn-2015.yaml +0 -136
  163. data/maps/odni-mkd-cyrl-latn-2015.yaml +0 -122
  164. data/maps/odni-rus-Cyrl-Latn-2015.yaml +0 -77
  165. data/maps/odni-srp-Cyrl-Latn-2015.yaml +0 -129
  166. data/maps/odni-tat-Cyrl-Latn-2015.yaml +0 -142
  167. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +0 -148
  168. data/maps/odni-uig-Cyrl-Latn-2015.yaml +0 -138
  169. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +0 -157
  170. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +0 -167
  171. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +0 -90
  172. data/maps/royin-tha-Thai-Latn-1968.yaml +0 -179
  173. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +0 -180
  174. data/maps/royin-tha-Thai-Latn-1999.yaml +0 -76
  175. data/maps/sac-zho-Hans-Latn-1979.yaml +0 -24759
  176. data/maps/ses-ara-arab-latn-1930.yaml +0 -275
  177. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +0 -222
  178. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +0 -193
  179. data/maps/un-ara-Arab-Latn-1971.yaml +0 -127
  180. data/maps/un-ara-Arab-Latn-1972.yaml +0 -152
  181. data/maps/un-ara-Arab-Latn-2017.yaml +0 -383
  182. data/maps/un-bel-Cyrl-Latn-2007.yaml +0 -114
  183. data/maps/un-ben-Beng-Latn-2016.yaml +0 -534
  184. data/maps/un-ell-Grek-Latn-1987-tl.yaml +0 -32
  185. data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -20
  186. data/maps/un-ell-Grek-Latn-phonetic-1987.yaml +0 -780
  187. data/maps/un-mon-Mong-Latn-2013.yaml +0 -93
  188. data/maps/un-rus-Cyrl-Latn-1987.yaml +0 -166
  189. data/maps/un-ukr-cyrl-latn-1998.yaml +0 -30
  190. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +0 -406
  191. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +0 -386
  192. data/maps/var-kor-Hang-Latn-mr-1939.yaml +0 -1054
  193. data/maps/var-kor-Kore-Hang-2013.yaml +0 -59754
  194. data/maps/var-kor-Kore-Latn-mr-1939.yaml +0 -37
  195. data/maps/var-tha-Thai-Thai-phonemic.yaml +0 -59
  196. data/maps/var-tha-Thai-Zsym-ipa.yaml +0 -301
  197. data/maps/var-zho-Hani-Latn-1979.yaml +0 -38908
  198. data/spec/interscript/mapping_spec.rb +0 -42
  199. data/spec/interscript_spec.rb +0 -26
  200. data/spec/spec_helper.rb +0 -3
@@ -1,541 +0,0 @@
1
- ---
2
- authority_id: mofa
3
- id: 1989
4
- language: jpn
5
- source_script: Hrkt
6
- destination_script: Latn
7
- name: Hepburn Romanization, Ministry of Foreign Affairs of Japan
8
- url: https://www.ezairyu.mofa.go.jp/passport/hebon.html
9
- creation_date:
10
- adoption_date:
11
-
12
- description:
13
- The law (旅券法施行規則) requires the use of Hepburn romanization for passports.
14
- https://elaws.e-gov.go.jp/search/elawsSearch/elaws_search/lsg0500/detail?lawId=401M50000020011
15
- 3 前項の氏名はヘボン式ローマ字によって旅券面に表記する。
16
- ただし、申請者がその氏名についてヘボン式によらないローマ字表記を希望し、
17
- 外務大臣又は領事官が、出生証明書等により当該表記が適当であり、かつ、
18
- 渡航の便宜のため特に必要であると認めるときは、この限りではない。
19
-
20
- notes:
21
- Vowel lengthening is not marked in this system.
22
- The use of OH for the long O sound used to be common, but it is
23
- clearly stated that this usage is not part of the Hepburn system.
24
-
25
- OO is simplified to O, except when it comes at the end of a word.
26
- OU and UU are always transliterated without the lengthening U.
27
-
28
- The consonant V is not allowed, and will be transliterated as
29
- BU or B instead.
30
-
31
- tests:
32
-
33
- #【ヘボン式ローマ字表記へ変換する際の注意事項】
34
- # 撥音:B、M、Pの前の「ん」は、NではなくMで表記します。
35
- - source: "ナンバ" # 難波
36
- expected: "NAMBA"
37
- - source: "ホンマ" # 本間
38
- expected: "HOMMA"
39
- - source: "サンペイ" # 三瓶
40
- expected: "SAMPEI"
41
-
42
- # 促音:子音を重ねて表記します。
43
- - source: "ハットリ" # 服部
44
- expected: "HATTORI"
45
- - source: "キッカワ" # 吉川
46
- expected: "KIKKAWA"
47
-
48
- # ただし、チ(CHI)、チャ(CHA)、チュ(CHU)、チョ(CHO)音の前には「T」を表記します。
49
- - source: "ホッチ" # 発地
50
- expected: "HOTCHI"
51
- - source: "ハッチョウ" # 八丁
52
- expected: "HATCHO"
53
-
54
- # 長音:OやUは記入しません。
55
- # ※長音表記を希望する場合には、下記【ヘボン式によらないローマ字氏名表記】を参照してください。
56
- # 「―」を省略する場合
57
- - source: "ニーナ" # ニーナ
58
- expected: "NINA"
59
- - source: "シーナ" # シーナ
60
- expected: "SHINA"
61
- - source: "サリー" # サリー
62
- expected: "SARI"
63
-
64
- # 「イ」を省略しない場合
65
- - source: "ニイナ" # 新菜
66
- expected: "NIINA"
67
- - source: "シイナ" # しいな
68
- expected: "SHIINA"
69
- - source: "サリイ" # さりい
70
- expected: "SARII"
71
-
72
- # 「ウ」を含む長音「ウウ」の場合(「UU」は表記しません。)
73
- - source: "ヒュウガ" # 日向
74
- expected: "HYUGA"
75
- - source: "ユウキ" # 裕貴
76
- expected: "YUKI"
77
- - source: "ユウコ" # 優子
78
- expected: "YUKO"
79
-
80
- # 「オ」を含む長音「オウ」の場合(「OU」は表記しません。)
81
- - source: "コウタ" # 幸太
82
- expected: "KOTA"
83
- - source: "ヨウコ" # 洋子
84
- expected: "YOKO"
85
- - source: "リョウコ" # 亮子
86
- expected: "RYOKO"
87
-
88
- # 「オ」を含む長音「オオ」の場合(「OO」は表記しません。)
89
- - source: "オオノ" # 大野
90
- expected: "ONO"
91
- - source: "オオコウチ" # 大河内
92
- expected: "OKOCHI"
93
- - source: "オオニシ" # 大西
94
- expected: "ONISHI"
95
-
96
- # 末尾が「オオ」音で、ヨミカタが「オ」の場合(「OO」と表記します。)
97
- - source: "セノオ" # 妹尾
98
- expected: "SENOO"
99
- - source: "タカトオ" # 高藤
100
- expected: "TAKATOO"
101
- - source: "ヨコオ" # 横尾
102
- expected: "YOKOO"
103
-
104
- # 末尾が「オウ」音で、ヨミカタが「ウ」の場合(「OU」とは表記しません。)
105
- - source: "イトウ" # 伊藤
106
- expected: "ITO"
107
- - source: "タカトウ" # 高藤
108
- expected: "TAKATO"
109
- - source: "ミソノウ" # 御園生
110
- expected: "MISONO"
111
-
112
- # 「ヴ」のつく氏名例
113
- - source: "ヴィヴィアン" # ヴィヴィアン
114
- #expected: "BUIBUIAN"
115
- expected: "BIBIAN"
116
-
117
- - source: "ヴォードレール" # ヴォードレール
118
- #expected: "BUODORERU"
119
- expected: "BODORERU"
120
-
121
- map:
122
- word_separator: " "
123
-
124
- # Although this system inherits from var-jpn-Hrkt-Latn-hepburn-1886,
125
- # it does not allow the use of macron, and has a list of unique
126
- # transliteration rules.
127
- # It is therefore easier to be implemented as a separate map instead
128
- # of using the inherit flag.
129
-
130
- # inherit: var-jpn-Hrkt-Latn-hepburn-1886
131
-
132
- rules:
133
- # Add a dash (-) between ん and a vowel sound or ya, yu, yo
134
- # - pattern: "([んン])(?=[あいうえおやゆよアイウエオヤユヨ])"
135
- # result: "\\1-"
136
-
137
- # Convert ん into m before b, m, p
138
- # 撥音:B、M、Pの前の「ん」は、NではなくMで表記します。
139
-
140
- - pattern: "[んン](?=[ばびぶべぼまみむめもぱぴぷぺぽバビブベボマミムメモパピプペポ])"
141
- result: "M"
142
-
143
- # Long O and U will not be recorded.
144
- # 長音:OやUは記入しません。
145
- #
146
- # Exception: when OO appears at the end of the word
147
-
148
- - pattern: "([おこそとのほもよろをごぞどぼぽょぉオコソトノホモヨロヲゴゾドボポョォ])[おオ](?=[^\\s])"
149
- result: "\\1"
150
-
151
- - pattern: "([うくすつぬふむゆるぐずづぶぷゅぅウクスツヌフムユルグズヅブプュゥ])[うウ]"
152
- result: "\\1"
153
-
154
- postrules:
155
- # Handling of っ/ッ
156
- # 促音:子音を重ねて表記します。
157
- #
158
- # The kana っ/ッ is a geminate marker.
159
- # When followed by a consonant, repeat the first letter of
160
- # the following syllable. Exception: the combination -cch-
161
- # should be transliterated as -tch-
162
- #
163
- # If っ/ッ is not followed by a consonant, then it is usually
164
- # phonetically realised as an abrupt stop or shorterning of
165
- # the previous syllable. There is no documented or commonly
166
- # accepted way to transliterate this sound.
167
- #
168
-
169
- - pattern: "[っッ]([BbDdFfGgHhJjKkLlMmNnPpQqRrSsTtVvWwXxYyZz])"
170
- result: "\\1\\1"
171
- - pattern: "[っッ]([Cc])" # ッ followed by ch-
172
- result: "T\\1"
173
- - pattern: "[っッ]" # drop all other っッ.
174
- result: ""
175
-
176
- characters:
177
- "ー": "" # Long vowel marker is ignored
178
-
179
- "あ": "A"
180
- "い": "I"
181
- "う": "U"
182
- "え": "E"
183
- "お": "O"
184
- "おう": "O"
185
-
186
- "か": "KA"
187
- "き": "KI"
188
- "く": "KU"
189
- "け": "KE"
190
- "こ": "KO"
191
- "きゃ": "KYA"
192
- "きゅ": "KYU"
193
- "きょ": "KYO"
194
- "きょう": "KYO"
195
- "こう": "KO"
196
-
197
- "さ": "SA"
198
- "し": "SHI"
199
- "す": "SU"
200
- "せ": "SE"
201
- "そ": "SO"
202
- "しゃ": "SHA"
203
- "しゅ": "SHU"
204
- "しょ": "SHO"
205
- "しょう": "SHO"
206
- "そう": "SO"
207
-
208
- "た": "TA"
209
- "ち": "CHI"
210
- "つ": "TSU"
211
- "て": "TE"
212
- "と": "TO"
213
- "ちゃ": "CHA"
214
- "ちゅ": "CHU"
215
- "ちょ": "CHO"
216
- "とう": "TO"
217
- "ちょう": "CHO"
218
-
219
- "な": "NA"
220
- "に": "NI"
221
- "ぬ": "NU"
222
- "ね": "NE"
223
- "の": "NO"
224
- "にゃ": "NYA"
225
- "にゅ": "NYU"
226
- "にょ": "NYO"
227
- "にょう": "NYO"
228
- "のう": "NO"
229
-
230
- "は": "HA"
231
- "ひ": "HI"
232
- "ふ": "FU"
233
- "へ": "HE"
234
- "ほ": "HO"
235
- "ひゃ": "HYA"
236
- "ひゅ": "HYU"
237
- "ひょ": "HYO"
238
- "ひょう": "HYO"
239
- "ほう": "HO"
240
-
241
- "ま": "MA"
242
- "み": "MI"
243
- "む": "MU"
244
- "め": "ME"
245
- "も": "MO"
246
- "みゃ": "MYA"
247
- "みゅ": "MYU"
248
- "みょ": "MYO"
249
- "みょう": "MYO"
250
- "もう": "MO"
251
-
252
- "や": "YA"
253
- "ゆ": "YU"
254
- "よ": "YO"
255
- "よう": "YO"
256
-
257
- "ら": "RA"
258
- "り": "RI"
259
- "る": "RU"
260
- "れ": "RE"
261
- "ろ": "RO"
262
- "りゃ": "RYA"
263
- "りゅ": "RYU"
264
- "りょ": "RYO"
265
- "りょう": "RYO"
266
- "ろう": "RO"
267
-
268
- "わ": "WA"
269
- "ゐ": "I"
270
- "ゑ": "E"
271
- "を": "O"
272
-
273
- "が": "GA"
274
- "ぎ": "GI"
275
- "ぐ": "GU"
276
- "げ": "GE"
277
- "ご": "GO"
278
- "ぎゃ": "GYA"
279
- "ぎゅ": "GYU"
280
- "ぎょ": "GYO"
281
- "ぎょう": "GYO"
282
- "ごう": "GO"
283
-
284
- "ざ": "ZA"
285
- "じ": "JI"
286
- "ず": "ZU"
287
- "ぜ": "ZE"
288
- "ぞ": "ZO"
289
- "じゃ": "JA"
290
- "じゅ": "JU"
291
- "じょ": "JO"
292
- "じょう": "JO"
293
- "ぞう": "ZO"
294
-
295
-
296
- "だ": "DA"
297
- "ぢ": "JI"
298
- "づ": "ZU"
299
- "で": "DE"
300
- "ど": "DO"
301
- "ぢゃ": "JA"
302
- "ぢゅ": "JU"
303
- "ぢょ": "JO"
304
- "どう": "DO"
305
-
306
- "ば": "BA"
307
- "び": "BI"
308
- "ぶ": "BU"
309
- "べ": "BE"
310
- "ぼ": "BO"
311
- "びゃ": "BYA"
312
- "びゅ": "BYU"
313
- "びょ": "BYO"
314
- "びょう": "BYO"
315
- "ぼう": "BO"
316
-
317
- "ぱ": "PA"
318
- "ぴ": "PI"
319
- "ぷ": "PU"
320
- "ぺ": "PE"
321
- "ぽ": "PO"
322
- "ぴゃ": "PYA"
323
- "ぴゅ": "PYU"
324
- "ぴょ": "PYO"
325
- "ぴょう": "PYO"
326
- "ぽう": "PO"
327
-
328
- "ん": "N"
329
-
330
- # KATAKANA
331
-
332
- "ア": "A"
333
- "イ": "I"
334
- "ウ": "U"
335
- "エ": "E"
336
- "オ": "O"
337
- "オウ": "O"
338
-
339
- "カ": "KA"
340
- "キ": "KI"
341
- "ク": "KU"
342
- "ケ": "KE"
343
- "コ": "KO"
344
- "キャ": "KYA"
345
- "キュ": "KYU"
346
- "キョ": "KYO"
347
- "コウ": "KO"
348
- "キョウ": "KYO"
349
- "コウ": "KO"
350
-
351
- "サ": "SA"
352
- "シ": "SHI"
353
- "ス": "SU"
354
- "セ": "SE"
355
- "ソ": "SO"
356
- "シャ": "SHA"
357
- "シュ": "SHU"
358
- "ショ": "SHO"
359
- "ショウ": "SHO"
360
- "ソウ": "SO"
361
-
362
- "タ": "TA"
363
- "チ": "CHI"
364
- "ツ": "TSU"
365
- "テ": "TE"
366
- "ト": "TO"
367
- "チャ": "CHA"
368
- "チュ": "CHU"
369
- "チョ": "CHO"
370
- "チョウ": "CHO"
371
- "トウ": "TO"
372
-
373
- "ナ": "NA"
374
- "ニ": "NI"
375
- "ヌ": "NU"
376
- "ネ": "NE"
377
- "ノ": "NO"
378
- "ニャ": "NYA"
379
- "ニュ": "NYU"
380
- "ニョ": "NYO"
381
- "ニョウ": "NYO"
382
- "ノウ": "NO"
383
-
384
- "ハ": "HA"
385
- "ヒ": "HI"
386
- "フ": "FU"
387
- "ヘ": "HE"
388
- "ホ": "HO"
389
- "ヒャ": "HYA"
390
- "ヒュ": "HYU"
391
- "ヒョ": "HYO"
392
- "ヒョウ": "HYO"
393
- "ホウ": "HO"
394
-
395
- "マ": "MA"
396
- "ミ": "MI"
397
- "ム": "MU"
398
- "メ": "ME"
399
- "モ": "MO"
400
- "ミャ": "MYA"
401
- "ミュ": "MYU"
402
- "ミョ": "MYO"
403
- "ミョウ": "MYO"
404
- "モウ": "MO"
405
-
406
- "ヤ": "YA"
407
- "ユ": "YU"
408
- "ヨ": "YO"
409
- "ヨウ": "YO"
410
-
411
- "ラ": "RA"
412
- "リ": "RI"
413
- "ル": "RU"
414
- "レ": "RE"
415
- "ロ": "RO"
416
- "リャ": "RYA"
417
- "リュ": "RYU"
418
- "リョ": "RYO"
419
- "リョウ": "RYO"
420
- "ロウ": "RO"
421
-
422
- "ワ": "WA"
423
- "ヰ": "I"
424
- "ヱ": "E"
425
- "ヲ": "O"
426
-
427
- "ガ": "GA"
428
- "ギ": "GI"
429
- "グ": "GU"
430
- "ゲ": "GE"
431
- "ゴ": "GO"
432
- "ギャ": "GYA"
433
- "ギュ": "GYU"
434
- "ギョ": "GYO"
435
- "ギョウ": "GYO"
436
- "ゴウ": "GO"
437
-
438
- "ザ": "ZA"
439
- "ジ": "JI"
440
- "ズ": "ZU"
441
- "ゼ": "ZE"
442
- "ゾ": "ZO"
443
- "ジャ": "JA"
444
- "ジュ": "JU"
445
- "ジョ": "JO"
446
- "ジョウ": "JO"
447
- "ゾウ": "ZO"
448
-
449
- "ダ": "DA"
450
- "ヂ": "JI"
451
- "ヅ": "ZU"
452
- "デ": "DE"
453
- "ド": "DO"
454
- "ヂャ": "JA"
455
- "ヂュ": "JU"
456
- "ヂョ": "JO"
457
- "ドウ": "DO"
458
-
459
- "バ": "BA"
460
- "ビ": "BI"
461
- "ブ": "BU"
462
- "ベ": "BE"
463
- "ボ": "BO"
464
- "ビャ": "BYA"
465
- "ビュ": "BYU"
466
- "ビョ": "BYO"
467
- "ビョウ": "BYO"
468
- "ボウ": "BO"
469
-
470
- "パ": "PA"
471
- "ピ": "PI"
472
- "プ": "PU"
473
- "ペ": "PE"
474
- "ポ": "PO"
475
- "ピャ": "PYA"
476
- "ピュ": "PYU"
477
- "ピョ": "PYO"
478
- "ピョウ": "PYO"
479
- "ポウ": "PO"
480
-
481
- "ン": "N"
482
-
483
- # Additional combinations
484
-
485
- "しぇ": "SHIE"
486
- "ちぇ": "CHIE"
487
- "てぃ": "TEI"
488
- "にぃ": "NII"
489
- "にぇ": "NIE"
490
- "ふぁ": "FUA"
491
- "ふぃ": "FUI"
492
- "ふぇ": "FUE"
493
- "ふぉ": "FUO"
494
- "じぇ": "JIE"
495
- "でぃ": "DEI"
496
- "でゅ": "DEYU"
497
- "うぃ": "UI"
498
- "うぇ": "UE"
499
- "うぉ": "UO"
500
- "ゔぁ":
501
- - "BA"
502
- - "BUA"
503
- "ゔぃ":
504
- - "BI"
505
- - "BUI"
506
- "ゔ": "BU"
507
- "ゔぇ":
508
- - "BE"
509
- - "BUE"
510
- "ゔぉ":
511
- - "BO"
512
- - "BUO"
513
-
514
- "シェ": "SHIE"
515
- "チェ": "CHIE"
516
- "ティ": "TEI"
517
- "ニィ": "NII"
518
- "ニェ": "NIE"
519
- "ファ": "FUA"
520
- "フィ": "FUI"
521
- "フェ": "FUE"
522
- "フォ": "FUO"
523
- "ジェ": "JIE"
524
- "ディ": "DEI"
525
- "デュ": "DEYU"
526
- "ウィ": "UI"
527
- "ウェ": "UE"
528
- "ウォ": "UO"
529
- "ヴァ":
530
- - "BA"
531
- - "BUA"
532
- "ヴィ":
533
- - "BI"
534
- - "BUI"
535
- "ヴ": "BU"
536
- "ヴェ":
537
- - "BE"
538
- - "BUE"
539
- "ヴォ":
540
- - "BO"
541
- - "BUO"