liblouis-rb 0.1.0

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 (517) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +520 -0
  3. data/README.md +100 -0
  4. data/Rakefile +80 -0
  5. data/ext/liblouis/braille_character.c +200 -0
  6. data/ext/liblouis/braille_table.c +198 -0
  7. data/ext/liblouis/braille_text.c +223 -0
  8. data/ext/liblouis/extconf.rb +73 -0
  9. data/ext/liblouis/liblouis.c +168 -0
  10. data/ext/liblouis/liblouis_ext.h +49 -0
  11. data/ext/liblouis/table_source.c +161 -0
  12. data/ext/liblouis/translation.c +443 -0
  13. data/liblouis-rb.gemspec +49 -0
  14. data/spec/liblouis_spec.rb +62 -0
  15. data/test/integration/packaging_test.rb +82 -0
  16. data/test/table_source_cases.rb +9 -0
  17. data/test/test_braille_character.rb +62 -0
  18. data/test/test_braille_table.rb +379 -0
  19. data/test/test_braille_text.rb +30 -0
  20. data/test/test_helper.rb +7 -0
  21. data/test/translation_cases.rb +33 -0
  22. data/vendor/liblouis/COPYING +674 -0
  23. data/vendor/liblouis/COPYING.LESSER +502 -0
  24. data/vendor/liblouis/configure.ac +290 -0
  25. data/vendor/liblouis/liblouis/commonTranslationFunctions.c +95 -0
  26. data/vendor/liblouis/liblouis/compileTranslationTable.c +5515 -0
  27. data/vendor/liblouis/liblouis/internal.h +781 -0
  28. data/vendor/liblouis/liblouis/liblouis.h.in +514 -0
  29. data/vendor/liblouis/liblouis/logging.c +233 -0
  30. data/vendor/liblouis/liblouis/lou_backTranslateString.c +1855 -0
  31. data/vendor/liblouis/liblouis/lou_translateString.c +4177 -0
  32. data/vendor/liblouis/liblouis/maketable.c +463 -0
  33. data/vendor/liblouis/liblouis/metadata.c +1258 -0
  34. data/vendor/liblouis/liblouis/pattern.c +1632 -0
  35. data/vendor/liblouis/liblouis/utils.c +448 -0
  36. data/vendor/liblouis/tables/Es-Es-G0.utb +248 -0
  37. data/vendor/liblouis/tables/IPA-unicode-range.uti +200 -0
  38. data/vendor/liblouis/tables/IPA.utb +164 -0
  39. data/vendor/liblouis/tables/Lv-Lv-g1.utb +509 -0
  40. data/vendor/liblouis/tables/Makefile.am +503 -0
  41. data/vendor/liblouis/tables/Pl-Pl-g1.utb +312 -0
  42. data/vendor/liblouis/tables/README +6 -0
  43. data/vendor/liblouis/tables/afr-za-g1.ctb +63 -0
  44. data/vendor/liblouis/tables/afr-za-g2.ctb +1050 -0
  45. data/vendor/liblouis/tables/akk-borger.utb +997 -0
  46. data/vendor/liblouis/tables/akk.utb +1002 -0
  47. data/vendor/liblouis/tables/ancient-languages-borger.utb +114 -0
  48. data/vendor/liblouis/tables/ancient-languages-us.utb +114 -0
  49. data/vendor/liblouis/tables/ar-ar-comp8.utb +293 -0
  50. data/vendor/liblouis/tables/ar-ar-g1-core.uti +291 -0
  51. data/vendor/liblouis/tables/ar-ar-g1.utb +26 -0
  52. data/vendor/liblouis/tables/ar-ar-g2.ctb +447 -0
  53. data/vendor/liblouis/tables/ar-ar-math.uti +501 -0
  54. data/vendor/liblouis/tables/ar.tbl +17 -0
  55. data/vendor/liblouis/tables/as-in-g1.utb +27 -0
  56. data/vendor/liblouis/tables/as.tbl +18 -0
  57. data/vendor/liblouis/tables/aw-in-g1.utb +27 -0
  58. data/vendor/liblouis/tables/awa.tbl +18 -0
  59. data/vendor/liblouis/tables/ba.utb +64 -0
  60. data/vendor/liblouis/tables/be-in-g1.utb +27 -0
  61. data/vendor/liblouis/tables/bel-comp.utb +42 -0
  62. data/vendor/liblouis/tables/bel-detailed.utb +32 -0
  63. data/vendor/liblouis/tables/bel.utb +61 -0
  64. data/vendor/liblouis/tables/bengali.cti +238 -0
  65. data/vendor/liblouis/tables/bg.ctb +215 -0
  66. data/vendor/liblouis/tables/bg.dis +84 -0
  67. data/vendor/liblouis/tables/bg.tbl +21 -0
  68. data/vendor/liblouis/tables/bg.utb +454 -0
  69. data/vendor/liblouis/tables/bh.ctb +24 -0
  70. data/vendor/liblouis/tables/bh.tbl +17 -0
  71. data/vendor/liblouis/tables/bn.tbl +18 -0
  72. data/vendor/liblouis/tables/bo.ctb +184 -0
  73. data/vendor/liblouis/tables/bo.tbl +21 -0
  74. data/vendor/liblouis/tables/boxes.ctb +162 -0
  75. data/vendor/liblouis/tables/br-in-g1.utb +27 -0
  76. data/vendor/liblouis/tables/bra.tbl +18 -0
  77. data/vendor/liblouis/tables/braille-patterns.cti +287 -0
  78. data/vendor/liblouis/tables/ca-chardefs.cti +225 -0
  79. data/vendor/liblouis/tables/ca-g1.ctb +46 -0
  80. data/vendor/liblouis/tables/ca.tbl +18 -0
  81. data/vendor/liblouis/tables/chr-us-g1.ctb +180 -0
  82. data/vendor/liblouis/tables/ckb-chardefs.cti +219 -0
  83. data/vendor/liblouis/tables/ckb-g1.ctb +31 -0
  84. data/vendor/liblouis/tables/ckb-translation.cti +131 -0
  85. data/vendor/liblouis/tables/ckb.tbl +18 -0
  86. data/vendor/liblouis/tables/compress.cti +44 -0
  87. data/vendor/liblouis/tables/controlchars.cti +27 -0
  88. data/vendor/liblouis/tables/cop-eg-comp8.utb +255 -0
  89. data/vendor/liblouis/tables/cop.utb +231 -0
  90. data/vendor/liblouis/tables/corrections.cti +47 -0
  91. data/vendor/liblouis/tables/countries.cti +263 -0
  92. data/vendor/liblouis/tables/critical-apparatus.uti +54 -0
  93. data/vendor/liblouis/tables/cs-chardefs.cti +385 -0
  94. data/vendor/liblouis/tables/cs-comp8.utb +405 -0
  95. data/vendor/liblouis/tables/cs-g1.ctb +37 -0
  96. data/vendor/liblouis/tables/cs-translation.cti +63 -0
  97. data/vendor/liblouis/tables/cs.tbl +20 -0
  98. data/vendor/liblouis/tables/cuneiform-transliterated-compact.utb +432 -0
  99. data/vendor/liblouis/tables/cuneiform-transliterated.utb +160 -0
  100. data/vendor/liblouis/tables/cy-cy-g1.utb +487 -0
  101. data/vendor/liblouis/tables/cy-cy-g2.ctb +199 -0
  102. data/vendor/liblouis/tables/cy.tbl +19 -0
  103. data/vendor/liblouis/tables/da-dk-6miscChars.cti +385 -0
  104. data/vendor/liblouis/tables/da-dk-6miscChars_1993.cti +412 -0
  105. data/vendor/liblouis/tables/da-dk-8miscChars.cti +90 -0
  106. data/vendor/liblouis/tables/da-dk-8miscChars_1993.cti +102 -0
  107. data/vendor/liblouis/tables/da-dk-g08.ctb +290 -0
  108. data/vendor/liblouis/tables/da-dk-g08_1993.ctb +331 -0
  109. data/vendor/liblouis/tables/da-dk-g16-lit_1993.ctb +294 -0
  110. data/vendor/liblouis/tables/da-dk-g16.ctb +289 -0
  111. data/vendor/liblouis/tables/da-dk-g16_1993.ctb +305 -0
  112. data/vendor/liblouis/tables/da-dk-g18.ctb +545 -0
  113. data/vendor/liblouis/tables/da-dk-g18_1993.ctb +563 -0
  114. data/vendor/liblouis/tables/da-dk-g2.dic +7439 -0
  115. data/vendor/liblouis/tables/da-dk-g26-lit_1993.ctb +898 -0
  116. data/vendor/liblouis/tables/da-dk-g26.ctb +1345 -0
  117. data/vendor/liblouis/tables/da-dk-g26_1993.ctb +1127 -0
  118. data/vendor/liblouis/tables/da-dk-g26l-lit_1993.ctb +588 -0
  119. data/vendor/liblouis/tables/da-dk-g26l_1993.ctb +604 -0
  120. data/vendor/liblouis/tables/da-dk-g28.ctb +2426 -0
  121. data/vendor/liblouis/tables/da-dk-g28_1993.ctb +2063 -0
  122. data/vendor/liblouis/tables/da-dk-g28l_1993.ctb +1594 -0
  123. data/vendor/liblouis/tables/da-dk-octobraille.dis +316 -0
  124. data/vendor/liblouis/tables/da-dk-octobraille_1993.dis +313 -0
  125. data/vendor/liblouis/tables/de-accents-detailed.cti +214 -0
  126. data/vendor/liblouis/tables/de-accents.cti +214 -0
  127. data/vendor/liblouis/tables/de-chardefs6.cti +289 -0
  128. data/vendor/liblouis/tables/de-chardefs8.cti +278 -0
  129. data/vendor/liblouis/tables/de-chess.ctb +37 -0
  130. data/vendor/liblouis/tables/de-comp6.utb +226 -0
  131. data/vendor/liblouis/tables/de-de-comp8.ctb +492 -0
  132. data/vendor/liblouis/tables/de-de.dis +331 -0
  133. data/vendor/liblouis/tables/de-eurobrl6.dis +101 -0
  134. data/vendor/liblouis/tables/de-eurobrl6u.dis +96 -0
  135. data/vendor/liblouis/tables/de-g0-core.uti +732 -0
  136. data/vendor/liblouis/tables/de-g0-detailed.utb +84 -0
  137. data/vendor/liblouis/tables/de-g0.utb +57 -0
  138. data/vendor/liblouis/tables/de-g1-core-patterns.dic +4863 -0
  139. data/vendor/liblouis/tables/de-g1-core.cti +67 -0
  140. data/vendor/liblouis/tables/de-g1-detailed.ctb +79 -0
  141. data/vendor/liblouis/tables/de-g1.ctb +54 -0
  142. data/vendor/liblouis/tables/de-g2-core-patterns.dic +26711 -0
  143. data/vendor/liblouis/tables/de-g2-core.cti +607 -0
  144. data/vendor/liblouis/tables/de-g2-detailed.ctb +60 -0
  145. data/vendor/liblouis/tables/de-g2.ctb +57 -0
  146. data/vendor/liblouis/tables/devanagari.cti +325 -0
  147. data/vendor/liblouis/tables/digits6Dots.uti +30 -0
  148. data/vendor/liblouis/tables/digits6DotsPlusDot6.uti +30 -0
  149. data/vendor/liblouis/tables/digits8Dots.uti +30 -0
  150. data/vendor/liblouis/tables/dra.ctb +23 -0
  151. data/vendor/liblouis/tables/dra.tbl +21 -0
  152. data/vendor/liblouis/tables/el.ctb +775 -0
  153. data/vendor/liblouis/tables/en-GB-g2.ctb +829 -0
  154. data/vendor/liblouis/tables/en-chardefs.cti +193 -0
  155. data/vendor/liblouis/tables/en-chess.ctb +37 -0
  156. data/vendor/liblouis/tables/en-g3-patterns.dic +11194 -0
  157. data/vendor/liblouis/tables/en-g3.ctb +2261 -0
  158. data/vendor/liblouis/tables/en-gb-comp8.ctb +282 -0
  159. data/vendor/liblouis/tables/en-gb-g1.utb +527 -0
  160. data/vendor/liblouis/tables/en-in-g1.ctb +162 -0
  161. data/vendor/liblouis/tables/en-nabcc.utb +166 -0
  162. data/vendor/liblouis/tables/en-nz-g1.utb +65 -0
  163. data/vendor/liblouis/tables/en-nz-g2.ctb +46 -0
  164. data/vendor/liblouis/tables/en-ueb-chardefs.uti +938 -0
  165. data/vendor/liblouis/tables/en-ueb-g1.ctb +167 -0
  166. data/vendor/liblouis/tables/en-ueb-g2.ctb +3925 -0
  167. data/vendor/liblouis/tables/en-ueb-math.ctb +71 -0
  168. data/vendor/liblouis/tables/en-us-brf.dis +102 -0
  169. data/vendor/liblouis/tables/en-us-comp6.ctb +149 -0
  170. data/vendor/liblouis/tables/en-us-comp8-ext.utb +626 -0
  171. data/vendor/liblouis/tables/en-us-comp8.ctb +62 -0
  172. data/vendor/liblouis/tables/en-us-compbrl.uti +69 -0
  173. data/vendor/liblouis/tables/en-us-emphasis.uti +45 -0
  174. data/vendor/liblouis/tables/en-us-g1.ctb +199 -0
  175. data/vendor/liblouis/tables/en-us-g2.ctb +1081 -0
  176. data/vendor/liblouis/tables/en-us-interline.ctb +1126 -0
  177. data/vendor/liblouis/tables/en-us-mathtext.ctb +880 -0
  178. data/vendor/liblouis/tables/en_CA.ctb +195 -0
  179. data/vendor/liblouis/tables/en_CA.tbl +21 -0
  180. data/vendor/liblouis/tables/en_GB.tbl +26 -0
  181. data/vendor/liblouis/tables/en_US-comp8-ext.tbl +15 -0
  182. data/vendor/liblouis/tables/en_US.tbl +26 -0
  183. data/vendor/liblouis/tables/eo-g1-x-system.ctb +85 -0
  184. data/vendor/liblouis/tables/eo-g1.ctb +165 -0
  185. data/vendor/liblouis/tables/eo.tbl +14 -0
  186. data/vendor/liblouis/tables/es-chardefs.cti +206 -0
  187. data/vendor/liblouis/tables/es-g1.ctb +36 -0
  188. data/vendor/liblouis/tables/es-g2.ctb +955 -0
  189. data/vendor/liblouis/tables/es-new.dis +284 -0
  190. data/vendor/liblouis/tables/es-no.utb +79 -0
  191. data/vendor/liblouis/tables/es-old.dis +284 -0
  192. data/vendor/liblouis/tables/es.tbl +19 -0
  193. data/vendor/liblouis/tables/et-6dot.utb +269 -0
  194. data/vendor/liblouis/tables/et-g0.utb +139 -0
  195. data/vendor/liblouis/tables/ethio-g1.ctb +335 -0
  196. data/vendor/liblouis/tables/eurodefs.cti +107 -0
  197. data/vendor/liblouis/tables/fa-ir-comp8.ctb +250 -0
  198. data/vendor/liblouis/tables/fa-ir-g1.utb +311 -0
  199. data/vendor/liblouis/tables/fi-fi-8dot.ctb +278 -0
  200. data/vendor/liblouis/tables/fi.utb +354 -0
  201. data/vendor/liblouis/tables/fil-g2.ctb +491 -0
  202. data/vendor/liblouis/tables/fr-bfu-comp6-puncs-math.uti +351 -0
  203. data/vendor/liblouis/tables/fr-bfu-comp6.utb +238 -0
  204. data/vendor/liblouis/tables/fr-bfu-comp68.cti +251 -0
  205. data/vendor/liblouis/tables/fr-bfu-comp8.utb +323 -0
  206. data/vendor/liblouis/tables/fr-bfu-g2.ctb +4644 -0
  207. data/vendor/liblouis/tables/ga-g1.utb +95 -0
  208. data/vendor/liblouis/tables/ga-g2.ctb +231 -0
  209. data/vendor/liblouis/tables/gd.ctb +123 -0
  210. data/vendor/liblouis/tables/gd.tbl +21 -0
  211. data/vendor/liblouis/tables/gez.tbl +21 -0
  212. data/vendor/liblouis/tables/gon.ctb +25 -0
  213. data/vendor/liblouis/tables/gon.tbl +17 -0
  214. data/vendor/liblouis/tables/gr-pl-comp8.uti +256 -0
  215. data/vendor/liblouis/tables/grc-international-common.uti +104 -0
  216. data/vendor/liblouis/tables/grc-international-composed.uti +268 -0
  217. data/vendor/liblouis/tables/grc-international-decomposed.uti +268 -0
  218. data/vendor/liblouis/tables/grc-international-en-composed.utb +54 -0
  219. data/vendor/liblouis/tables/grc-international-en.utb +206 -0
  220. data/vendor/liblouis/tables/grc-international-es.utb +228 -0
  221. data/vendor/liblouis/tables/gu-in-g1.utb +27 -0
  222. data/vendor/liblouis/tables/gu.tbl +18 -0
  223. data/vendor/liblouis/tables/gujarati.cti +221 -0
  224. data/vendor/liblouis/tables/gurumuki.cti +393 -0
  225. data/vendor/liblouis/tables/haw-us-g1.ctb +54 -0
  226. data/vendor/liblouis/tables/hbo-cantillated-rules.uti +71 -0
  227. data/vendor/liblouis/tables/hbo-cantillated.utb +109 -0
  228. data/vendor/liblouis/tables/hbo-common-rules.uti +152 -0
  229. data/vendor/liblouis/tables/hbo-ihbc-rules.uti +58 -0
  230. data/vendor/liblouis/tables/hbo-slim-rules.uti +68 -0
  231. data/vendor/liblouis/tables/hbo-slim.utb +100 -0
  232. data/vendor/liblouis/tables/hbo.utb +107 -0
  233. data/vendor/liblouis/tables/he-IL-comp8.utb +464 -0
  234. data/vendor/liblouis/tables/he-IL.utb +406 -0
  235. data/vendor/liblouis/tables/he-common-consonants.uti +102 -0
  236. data/vendor/liblouis/tables/he-common-vowels-ihbc.uti +161 -0
  237. data/vendor/liblouis/tables/hi-in-g1.utb +27 -0
  238. data/vendor/liblouis/tables/hi.tbl +18 -0
  239. data/vendor/liblouis/tables/hr-chardefs.cti +278 -0
  240. data/vendor/liblouis/tables/hr-comp8.tbl +21 -0
  241. data/vendor/liblouis/tables/hr-comp8.utb +239 -0
  242. data/vendor/liblouis/tables/hr-digits.uti +40 -0
  243. data/vendor/liblouis/tables/hr-g1.ctb +36 -0
  244. data/vendor/liblouis/tables/hr-g1.tbl +9 -0
  245. data/vendor/liblouis/tables/hr-translation.cti +364 -0
  246. data/vendor/liblouis/tables/ht-frenchcompatibility.uti +61 -0
  247. data/vendor/liblouis/tables/ht-g1.utb +114 -0
  248. data/vendor/liblouis/tables/hu-backtranslate-correction.dis +38 -0
  249. data/vendor/liblouis/tables/hu-backtranslate-word-corrections.cti +4293 -0
  250. data/vendor/liblouis/tables/hu-chardefs.cti +298 -0
  251. data/vendor/liblouis/tables/hu-exceptionwords.cti +3204 -0
  252. data/vendor/liblouis/tables/hu-hu-comp8.ctb +183 -0
  253. data/vendor/liblouis/tables/hu-hu-g1.ctb +129 -0
  254. data/vendor/liblouis/tables/hu-hu-g1_braille_input.cti +486 -0
  255. data/vendor/liblouis/tables/hu-hu-g2.ctb +270 -0
  256. data/vendor/liblouis/tables/hu-hu-g2_exceptions.cti +1164 -0
  257. data/vendor/liblouis/tables/hy.ctb +121 -0
  258. data/vendor/liblouis/tables/hy.tbl +21 -0
  259. data/vendor/liblouis/tables/hyph_cs_CZ.dic +3637 -0
  260. data/vendor/liblouis/tables/hyph_da_DK.dic +8896 -0
  261. data/vendor/liblouis/tables/hyph_de_DE.dic +5799 -0
  262. data/vendor/liblouis/tables/hyph_en_US.dic +5537 -0
  263. data/vendor/liblouis/tables/hyph_eo.dic +1024 -0
  264. data/vendor/liblouis/tables/hyph_es_ES.dic +877 -0
  265. data/vendor/liblouis/tables/hyph_fr_FR.dic +1067 -0
  266. data/vendor/liblouis/tables/hyph_hu_HU.dic +98519 -0
  267. data/vendor/liblouis/tables/hyph_it_IT.dic +410 -0
  268. data/vendor/liblouis/tables/hyph_nb_NO.dic +27142 -0
  269. data/vendor/liblouis/tables/hyph_nl_NL.dic +12725 -0
  270. data/vendor/liblouis/tables/hyph_nn_NO.dic +27142 -0
  271. data/vendor/liblouis/tables/hyph_pl_PL.dic +4074 -0
  272. data/vendor/liblouis/tables/hyph_pt_PT.dic +308 -0
  273. data/vendor/liblouis/tables/hyph_ru.dic +6480 -0
  274. data/vendor/liblouis/tables/hyph_sv_SE.dic +4697 -0
  275. data/vendor/liblouis/tables/is-chardefs6.cti +170 -0
  276. data/vendor/liblouis/tables/is-chardefs8.cti +293 -0
  277. data/vendor/liblouis/tables/is.ctb +157 -0
  278. data/vendor/liblouis/tables/is.tbl +18 -0
  279. data/vendor/liblouis/tables/it-it-comp6.utb +404 -0
  280. data/vendor/liblouis/tables/it-it-comp8.utb +663 -0
  281. data/vendor/liblouis/tables/iu-ca-g1.ctb +236 -0
  282. data/vendor/liblouis/tables/ja-kantenji-ucs2.utb +11448 -0
  283. data/vendor/liblouis/tables/ja-kantenji.utb +53 -0
  284. data/vendor/liblouis/tables/ja-rokutenkanji.utb +8710 -0
  285. data/vendor/liblouis/tables/ka-in-g1.utb +27 -0
  286. data/vendor/liblouis/tables/ka.utb +128 -0
  287. data/vendor/liblouis/tables/kannada.cti +282 -0
  288. data/vendor/liblouis/tables/kh-in-g1.utb +26 -0
  289. data/vendor/liblouis/tables/kha.tbl +18 -0
  290. data/vendor/liblouis/tables/kk.utb +77 -0
  291. data/vendor/liblouis/tables/km-g1.utb +412 -0
  292. data/vendor/liblouis/tables/kmr.tbl +108 -0
  293. data/vendor/liblouis/tables/kn.tbl +18 -0
  294. data/vendor/liblouis/tables/ko-2006-g1.ctb +49 -0
  295. data/vendor/liblouis/tables/ko-2006-g2.ctb +53 -0
  296. data/vendor/liblouis/tables/ko-2006.cti +190 -0
  297. data/vendor/liblouis/tables/ko-chars.cti +15140 -0
  298. data/vendor/liblouis/tables/ko-g1-rules.cti +634 -0
  299. data/vendor/liblouis/tables/ko-g1.ctb +48 -0
  300. data/vendor/liblouis/tables/ko-g2-rules.cti +9263 -0
  301. data/vendor/liblouis/tables/ko-g2.ctb +52 -0
  302. data/vendor/liblouis/tables/ko.cti +223 -0
  303. data/vendor/liblouis/tables/kok.ctb +24 -0
  304. data/vendor/liblouis/tables/kok.tbl +17 -0
  305. data/vendor/liblouis/tables/kru.ctb +24 -0
  306. data/vendor/liblouis/tables/kru.tbl +17 -0
  307. data/vendor/liblouis/tables/ks-in-g1.utb +27 -0
  308. data/vendor/liblouis/tables/latinLetterDef6Dots.uti +78 -0
  309. data/vendor/liblouis/tables/latinLetterDef8Dots.uti +75 -0
  310. data/vendor/liblouis/tables/latinLowercase.uti +389 -0
  311. data/vendor/liblouis/tables/latinUppercaseComp6.uti +78 -0
  312. data/vendor/liblouis/tables/lg-ug-g1.utb +60 -0
  313. data/vendor/liblouis/tables/litdigits6Dots.uti +30 -0
  314. data/vendor/liblouis/tables/litdigits6DotsPlusDot6.uti +30 -0
  315. data/vendor/liblouis/tables/lo-g1.utb +3127 -0
  316. data/vendor/liblouis/tables/loweredDigits6Dots.uti +30 -0
  317. data/vendor/liblouis/tables/loweredDigits8Dots.uti +30 -0
  318. data/vendor/liblouis/tables/lt-6dot.utb +308 -0
  319. data/vendor/liblouis/tables/lt-8dot.utb +281 -0
  320. data/vendor/liblouis/tables/lt.ctb +313 -0
  321. data/vendor/liblouis/tables/lv.tbl +22 -0
  322. data/vendor/liblouis/tables/maketablelist.sh +52 -0
  323. data/vendor/liblouis/tables/malayalam.cti +674 -0
  324. data/vendor/liblouis/tables/mao-nz-g1.ctb +65 -0
  325. data/vendor/liblouis/tables/marburg_single_cell_defs.cti +66 -0
  326. data/vendor/liblouis/tables/marburg_unicode_defs.cti +297 -0
  327. data/vendor/liblouis/tables/mk-g1.utb +240 -0
  328. data/vendor/liblouis/tables/ml-in-g1.utb +27 -0
  329. data/vendor/liblouis/tables/ml.tbl +21 -0
  330. data/vendor/liblouis/tables/mn-MN-common.cti +110 -0
  331. data/vendor/liblouis/tables/mn-MN-g1.utb +52 -0
  332. data/vendor/liblouis/tables/mn-MN-g2.ctb +50 -0
  333. data/vendor/liblouis/tables/mn-in-g1.utb +27 -0
  334. data/vendor/liblouis/tables/mni.tbl +18 -0
  335. data/vendor/liblouis/tables/mr-in-g1.utb +27 -0
  336. data/vendor/liblouis/tables/mr.tbl +18 -0
  337. data/vendor/liblouis/tables/ms-my-g2.ctb +4897 -0
  338. data/vendor/liblouis/tables/mt.ctb +114 -0
  339. data/vendor/liblouis/tables/mt.tbl +21 -0
  340. data/vendor/liblouis/tables/mun.ctb +24 -0
  341. data/vendor/liblouis/tables/mun.tbl +17 -0
  342. data/vendor/liblouis/tables/mwr.ctb +24 -0
  343. data/vendor/liblouis/tables/mwr.tbl +17 -0
  344. data/vendor/liblouis/tables/my-g1.utb +771 -0
  345. data/vendor/liblouis/tables/my-g2.ctb +3805 -0
  346. data/vendor/liblouis/tables/ne.ctb +22 -0
  347. data/vendor/liblouis/tables/ne.tbl +18 -0
  348. data/vendor/liblouis/tables/nemethdefs.cti +382 -0
  349. data/vendor/liblouis/tables/nl-BE.dis +532 -0
  350. data/vendor/liblouis/tables/nl-NL-g0.utb.in +646 -0
  351. data/vendor/liblouis/tables/nl-chardefs.uti.in +455 -0
  352. data/vendor/liblouis/tables/nl-comp8.utb +411 -0
  353. data/vendor/liblouis/tables/nl-print.dis +551 -0
  354. data/vendor/liblouis/tables/nl-unicode.dis +540 -0
  355. data/vendor/liblouis/tables/no-no-8dot-fallback-6dot-g0.utb +59 -0
  356. data/vendor/liblouis/tables/no-no-8dot.utb +629 -0
  357. data/vendor/liblouis/tables/no-no-braillo-047-01.dis +247 -0
  358. data/vendor/liblouis/tables/no-no-chardefs6.uti +305 -0
  359. data/vendor/liblouis/tables/no-no-comp8.ctb +323 -0
  360. data/vendor/liblouis/tables/no-no-cyrillic6dot.uti +95 -0
  361. data/vendor/liblouis/tables/no-no-g0.utb +320 -0
  362. data/vendor/liblouis/tables/no-no-g1.ctb +272 -0
  363. data/vendor/liblouis/tables/no-no-g2.ctb +737 -0
  364. data/vendor/liblouis/tables/no-no-g3.ctb +3597 -0
  365. data/vendor/liblouis/tables/no-no-generic.ctb +295 -0
  366. data/vendor/liblouis/tables/no-no-generic.dis +295 -0
  367. data/vendor/liblouis/tables/no-no-latinLetterDef6Dots_diacritics.uti +852 -0
  368. data/vendor/liblouis/tables/no-no.dis +291 -0
  369. data/vendor/liblouis/tables/np-in-g1.utb +27 -0
  370. data/vendor/liblouis/tables/nso-za-g1.utb +38 -0
  371. data/vendor/liblouis/tables/nso-za-g2.ctb +38 -0
  372. data/vendor/liblouis/tables/ny-mw.utb +70 -0
  373. data/vendor/liblouis/tables/or-in-g1.utb +27 -0
  374. data/vendor/liblouis/tables/or.tbl +18 -0
  375. data/vendor/liblouis/tables/oriya.cti +238 -0
  376. data/vendor/liblouis/tables/ovd-6g0.utb +64 -0
  377. data/vendor/liblouis/tables/ovd-8g0.utb +81 -0
  378. data/vendor/liblouis/tables/pa.tbl +18 -0
  379. data/vendor/liblouis/tables/pi.ctb +24 -0
  380. data/vendor/liblouis/tables/pi.tbl +17 -0
  381. data/vendor/liblouis/tables/pl-pl-comp8.ctb +658 -0
  382. data/vendor/liblouis/tables/pl.tbl +12 -0
  383. data/vendor/liblouis/tables/printables.cti +70 -0
  384. data/vendor/liblouis/tables/pt-comp6.utb +299 -0
  385. data/vendor/liblouis/tables/pt-pt-comp8.ctb +395 -0
  386. data/vendor/liblouis/tables/pt-pt-g1.utb +1312 -0
  387. data/vendor/liblouis/tables/pt-pt-g2.ctb +874 -0
  388. data/vendor/liblouis/tables/pt.tbl +20 -0
  389. data/vendor/liblouis/tables/pu-in-g1.utb +42 -0
  390. data/vendor/liblouis/tables/quotation-marks.uti +30 -0
  391. data/vendor/liblouis/tables/ro-g0.utb +85 -0
  392. data/vendor/liblouis/tables/ro.ctb +126 -0
  393. data/vendor/liblouis/tables/ro.tbl +21 -0
  394. data/vendor/liblouis/tables/ru-brf.dis +116 -0
  395. data/vendor/liblouis/tables/ru-comp6.utb +258 -0
  396. data/vendor/liblouis/tables/ru-comp8.utb +740 -0
  397. data/vendor/liblouis/tables/ru-letters.dis +145 -0
  398. data/vendor/liblouis/tables/ru-litbrl-detailed.utb +77 -0
  399. data/vendor/liblouis/tables/ru-litbrl.ctb +857 -0
  400. data/vendor/liblouis/tables/ru-math.uti +395 -0
  401. data/vendor/liblouis/tables/ru-ru-g1.ctb +804 -0
  402. data/vendor/liblouis/tables/ru-unicode.dis +121 -0
  403. data/vendor/liblouis/tables/rw-rw-g1.utb +133 -0
  404. data/vendor/liblouis/tables/sa-in-g1.utb +27 -0
  405. data/vendor/liblouis/tables/sa.tbl +18 -0
  406. data/vendor/liblouis/tables/sah.utb +72 -0
  407. data/vendor/liblouis/tables/sd.tbl +18 -0
  408. data/vendor/liblouis/tables/se-se.ctb +246 -0
  409. data/vendor/liblouis/tables/se-se.dis +334 -0
  410. data/vendor/liblouis/tables/si-in-g1.utb +27 -0
  411. data/vendor/liblouis/tables/sin.cti +213 -0
  412. data/vendor/liblouis/tables/sin.utb +35 -0
  413. data/vendor/liblouis/tables/sk-g1.ctb +1019 -0
  414. data/vendor/liblouis/tables/sk-sk-g1.utb +206 -0
  415. data/vendor/liblouis/tables/sk-sk.utb +112 -0
  416. data/vendor/liblouis/tables/sl-si-comp8.ctb +204 -0
  417. data/vendor/liblouis/tables/sl-si-g1.utb +471 -0
  418. data/vendor/liblouis/tables/sl.tbl +20 -0
  419. data/vendor/liblouis/tables/smi-6g0.utb +64 -0
  420. data/vendor/liblouis/tables/smi-8g0.utb +61 -0
  421. data/vendor/liblouis/tables/sot-za-g1.ctb +72 -0
  422. data/vendor/liblouis/tables/sot-za-g2.ctb +244 -0
  423. data/vendor/liblouis/tables/spaces.uti +62 -0
  424. data/vendor/liblouis/tables/sr-Cyrl.ctb +59 -0
  425. data/vendor/liblouis/tables/sr-common.cti +161 -0
  426. data/vendor/liblouis/tables/sr-cyrletters.cti +92 -0
  427. data/vendor/liblouis/tables/sr-g1.ctb +57 -0
  428. data/vendor/liblouis/tables/sr-latletters.cti +45 -0
  429. data/vendor/liblouis/tables/sv-1989.ctb +241 -0
  430. data/vendor/liblouis/tables/sv-1996.ctb +180 -0
  431. data/vendor/liblouis/tables/sv-6common.uti +1199 -0
  432. data/vendor/liblouis/tables/sv-6g0d.utb +508 -0
  433. data/vendor/liblouis/tables/sv-6g0p.utb +61 -0
  434. data/vendor/liblouis/tables/sv-6g1.uti +106 -0
  435. data/vendor/liblouis/tables/sv-6g1d.ctb +57 -0
  436. data/vendor/liblouis/tables/sv-6g2.uti +254 -0
  437. data/vendor/liblouis/tables/sv-6g2d.ctb +57 -0
  438. data/vendor/liblouis/tables/sv-8g0d.utb +495 -0
  439. data/vendor/liblouis/tables/sv-8g0n.utb +1236 -0
  440. data/vendor/liblouis/tables/sv-8g1.uti +199 -0
  441. data/vendor/liblouis/tables/sv-8g1d.ctb +73 -0
  442. data/vendor/liblouis/tables/sv-8g1n.ctb +73 -0
  443. data/vendor/liblouis/tables/sv-8g2.uti +486 -0
  444. data/vendor/liblouis/tables/sv-8g2d.ctb +73 -0
  445. data/vendor/liblouis/tables/sv-8g2n.ctb +73 -0
  446. data/vendor/liblouis/tables/sv-g0.utb +65 -0
  447. data/vendor/liblouis/tables/sv-g1.ctb +57 -0
  448. data/vendor/liblouis/tables/sv-g2.ctb +57 -0
  449. data/vendor/liblouis/tables/sv-phon.uti +241 -0
  450. data/vendor/liblouis/tables/sw-ke-g1-2.ctb +90 -0
  451. data/vendor/liblouis/tables/sw-ke-g1-3.ctb +109 -0
  452. data/vendor/liblouis/tables/sw-ke-g1-4.ctb +107 -0
  453. data/vendor/liblouis/tables/sw-ke-g1-5.ctb +73 -0
  454. data/vendor/liblouis/tables/sw-ke-g1.utb +278 -0
  455. data/vendor/liblouis/tables/sw-ke-g2.ctb +276 -0
  456. data/vendor/liblouis/tables/syc.utb +195 -0
  457. data/vendor/liblouis/tables/ta-ta-g1.ctb +167 -0
  458. data/vendor/liblouis/tables/ta.ctb +24 -0
  459. data/vendor/liblouis/tables/ta.tbl +21 -0
  460. data/vendor/liblouis/tables/tamil.cti +86 -0
  461. data/vendor/liblouis/tables/te-in-g1.utb +27 -0
  462. data/vendor/liblouis/tables/te.tbl +18 -0
  463. data/vendor/liblouis/tables/telugu.cti +239 -0
  464. data/vendor/liblouis/tables/text_nabcc.dis +426 -0
  465. data/vendor/liblouis/tables/th-comp8-backward.utb +226 -0
  466. data/vendor/liblouis/tables/th-g0.utb +177 -0
  467. data/vendor/liblouis/tables/th-g1.utb +89 -0
  468. data/vendor/liblouis/tables/th-g1.uti +315 -0
  469. data/vendor/liblouis/tables/th-g2.ctb +616 -0
  470. data/vendor/liblouis/tables/tr-g1.ctb +254 -0
  471. data/vendor/liblouis/tables/tr-g2.ctb +863 -0
  472. data/vendor/liblouis/tables/tr-g2.tbl +20 -0
  473. data/vendor/liblouis/tables/tr.ctb +324 -0
  474. data/vendor/liblouis/tables/tr.tbl +21 -0
  475. data/vendor/liblouis/tables/tsn-za-g1.ctb +33 -0
  476. data/vendor/liblouis/tables/tsn-za-g2.ctb +33 -0
  477. data/vendor/liblouis/tables/tt.utb +74 -0
  478. data/vendor/liblouis/tables/uga.utb +86 -0
  479. data/vendor/liblouis/tables/uk-comp.utb +53 -0
  480. data/vendor/liblouis/tables/uk-detailed.utb +32 -0
  481. data/vendor/liblouis/tables/uk.utb +101 -0
  482. data/vendor/liblouis/tables/ukchardefs.cti +106 -0
  483. data/vendor/liblouis/tables/ukmaths_single_cell_defs.cti +65 -0
  484. data/vendor/liblouis/tables/ukmaths_unicode_defs.cti +298 -0
  485. data/vendor/liblouis/tables/uni-text.dis +330 -0
  486. data/vendor/liblouis/tables/unicode-braille.utb +291 -0
  487. data/vendor/liblouis/tables/unicode-without-blank.dis +24 -0
  488. data/vendor/liblouis/tables/unicode.dis +278 -0
  489. data/vendor/liblouis/tables/ur-pk-g1.utb +248 -0
  490. data/vendor/liblouis/tables/ur-pk-g2.ctb +641 -0
  491. data/vendor/liblouis/tables/us-table.dis +67 -0
  492. data/vendor/liblouis/tables/uz-g1.utb +117 -0
  493. data/vendor/liblouis/tables/ve-za-g1.utb +69 -0
  494. data/vendor/liblouis/tables/ve-za-g2.ctb +208 -0
  495. data/vendor/liblouis/tables/vi-cb8.utb +49 -0
  496. data/vendor/liblouis/tables/vi-charsdef.uti +36 -0
  497. data/vendor/liblouis/tables/vi-lettersdef.uti +401 -0
  498. data/vendor/liblouis/tables/vi-puncsdef.uti +446 -0
  499. data/vendor/liblouis/tables/vi-saigon-g1.ctb +530 -0
  500. data/vendor/liblouis/tables/vi-vn-g0.utb +135 -0
  501. data/vendor/liblouis/tables/vi-vn-g1.ctb +574 -0
  502. data/vendor/liblouis/tables/vi-vn-g2.ctb +743 -0
  503. data/vendor/liblouis/tables/wiskunde-chardefs.cti +261 -0
  504. data/vendor/liblouis/tables/wordcx.dis +91 -0
  505. data/vendor/liblouis/tables/xh-za-g1.utb +61 -0
  506. data/vendor/liblouis/tables/xh-za-g2.ctb +386 -0
  507. data/vendor/liblouis/tables/yi.utb +236 -0
  508. data/vendor/liblouis/tables/zh-chn.ctb +45011 -0
  509. data/vendor/liblouis/tables/zh-hk.ctb +10461 -0
  510. data/vendor/liblouis/tables/zh-tw.ctb +53810 -0
  511. data/vendor/liblouis/tables/zh_CHN.tbl +23 -0
  512. data/vendor/liblouis/tables/zhcn-cbs.ctb +31523 -0
  513. data/vendor/liblouis/tables/zhcn-g1.ctb +26523 -0
  514. data/vendor/liblouis/tables/zhcn-g2.ctb +26519 -0
  515. data/vendor/liblouis/tables/zu-za-g1.utb +33 -0
  516. data/vendor/liblouis/tables/zu-za-g2.ctb +33 -0
  517. metadata +558 -0
@@ -0,0 +1,395 @@
1
+ # liblouis: Russian mathematical Braille definitions
2
+ #
3
+ # Mathematical notation follows the Russian "System of Symbols for Math,
4
+ # Physics, Chemistry, and Astronomy" (Bykov et al., 2nd ed., 1982; reprinted
5
+ # 2009) and the Guidelines for edition of mass-distribution Braille
6
+ # publications. This subtable is included by ru-litbrl.ctb after digit and
7
+ # Latin-letter definitions.
8
+ #
9
+ # Copyright (C) 2020-2022, 2025 Andrey Yakuboy <braille@yakuboy.ru>
10
+ # Copyright (C) 2026 Danil Kostenkov <danilkostenkov38@gmail.com>
11
+ #
12
+ # This file is part of liblouis.
13
+ #
14
+ # liblouis is free software: you can redistribute it and/or modify it
15
+ # under the terms of the GNU Lesser General Public License as
16
+ # published by the Free Software Foundation, either version 2.1 of the
17
+ # License, or (at your option) any later version.
18
+ #
19
+ # liblouis is distributed in the hope that it will be useful, but
20
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
21
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22
+ # Lesser General Public License for more details.
23
+ #
24
+ # You should have received a copy of the GNU Lesser General Public
25
+ # License along with liblouis. If not, see
26
+ # <http://www.gnu.org/licenses/>.
27
+
28
+ # Semantic characters for structured mathematics.
29
+ #
30
+ # F32E/F32F and F400-F403 reuse structural code points already consumed by
31
+ # en-ueb-math.ctb. The remaining PUA characters define a proposed, table-local
32
+ # input contract for a prospective structured-math producer. They are not part
33
+ # of the Russian sources or a public interchange standard. No LibLouisUTDML
34
+ # formatter currently emits this Russian-specific stream, and this table does
35
+ # not depend on such a formatter already being implemented. The tokens
36
+ # distinguish structures that can not be represented unambiguously by plain
37
+ # Unicode. F401 suppresses an opening indicator, F402 marks a closing
38
+ # indicator, and F403 marks an indexed root. F328 and F329 add the two
39
+ # separators required by Russian mathematical braille.
40
+
41
+ noback math \xf400 0 # semantic prefix
42
+ noback math \xf401 0 # suppress opening indicator
43
+ noback math \xf402 0 # closing-indicator prefix
44
+ noback math \xf403 0 # indexed-root prefix
45
+
46
+ replace \xf32e # begin expression
47
+ replace \xf32f # end expression
48
+ noback math \xf328 6 # mathematical punctuation separator
49
+ noback math \xf329 5 # disambiguator
50
+
51
+ # Right/left lower and upper indices. An upper index is also the exponent
52
+ # primitive; source structure determines which mathematical meaning applies.
53
+ noback math \xf320 16
54
+ replace \xf401\xf320
55
+ noback always \xf402\xf320 156
56
+ noback math \xf321 34
57
+ replace \xf401\xf321
58
+ noback always \xf402\xf321 156
59
+
60
+ # Exactly-below and exactly-above scripts.
61
+ noback math \xf322 46-16
62
+ noback always \xf402\xf322 156
63
+ noback math \xf323 46-34
64
+ noback always \xf402\xf323 156
65
+
66
+ # Roots: start, end of radicand, and start of a root with an index. The index
67
+ # uses lowered digits directly, without a superscript indicator.
68
+ noback math \xf32a 146
69
+ noback always \xf403\xf32a 146
70
+ noback math \xf32b 1456
71
+ noback math \xf32c 146-34
72
+
73
+ # Fractions: start, end, diagonal bar and horizontal bar.
74
+ noback math \xf500 23
75
+ noback math \xf501 56
76
+ noback math \xf502 6-34
77
+ noback math \xf503 1256
78
+ replace \xf504 # boundary between integer and fractional parts of a mixed number
79
+ noback always \xf505 6-3 # mathematical ellipsis (Guidelines, section 2.1)
80
+ noback always \xf506 5 # mathematical line break where no space belongs
81
+ noback always \xf507 6 # mathematical line break where a space belongs
82
+ noback digit \xf50c 3 # formatter-supplied digit-group separator
83
+ replace \xf554 # suppress separator before punctuation in an exceptional context
84
+ # Ambiguous print characters use semantic input:
85
+ # a colon is also punctuation, while an asterisk is an ordinary star. Keeping
86
+ # distinct PUA tokens preserves both meanings. The omitted-digit token has the
87
+ # digit attribute so a following digit stays in the current numeric mode.
88
+ noback math \xf555 256 # division written as a colon
89
+ noback digit \xf556 346 # omitted digit inside a number
90
+
91
+ # Formatter-selected segments represent braces that join several print lines.
92
+ # F570/F571 are the one-line forms. For a multi-line frame the formatter emits
93
+ # a top token on the first line, zero or more middle tokens, and a bottom token
94
+ # on the last line. Layout and the required blank cell between the frame and
95
+ # its content remain the formatter's responsibility.
96
+ noback always \xf570 12346 # one-line joining brace, left
97
+ noback always \xf571 13456 # one-line joining brace, right
98
+ noback always \xf572 1234 # multi-line joining frame, left top
99
+ noback always \xf573 123 # multi-line joining frame, left middle
100
+ noback always \xf574 1236 # multi-line joining frame, left bottom
101
+ noback always \xf575 1456 # multi-line joining frame, right top
102
+ noback always \xf576 456 # multi-line joining frame, right middle
103
+ noback always \xf577 3456 # multi-line joining frame, right bottom
104
+ noback always \xf55a 2 # decimal comma before a parenthesized period
105
+ noback always \xf55b 126 # opening bracket of a periodic decimal fraction
106
+ noback always \xf560 245
107
+ noback always \xf561 1
108
+ noback always \xf562 12
109
+ noback always \xf563 14
110
+ noback always \xf564 145
111
+ noback always \xf565 15
112
+ noback always \xf566 124
113
+ noback always \xf567 1245
114
+ noback always \xf568 125
115
+ noback always \xf569 24
116
+
117
+ # F401 also suppresses the number sign for digits inside an explicitly
118
+ # structured fraction. These rules consume the prefix and emit the ordinary
119
+ # (upper-row) digit cell while preserving the surrounding semantic structure.
120
+ noback always \xf4010 245
121
+ noback always \xf4011 1
122
+ noback always \xf4012 12
123
+ noback always \xf4013 14
124
+ noback always \xf4014 145
125
+ noback always \xf4015 15
126
+ noback always \xf4016 124
127
+ noback always \xf4017 1245
128
+ noback always \xf4018 125
129
+ noback always \xf4019 24
130
+
131
+ # Brackets with explicit recognition dots. Plain bracket characters below
132
+ # remain available when the surrounding context makes recognition unambiguous.
133
+ noback always \xf508 6-12356 # recognized opening square bracket
134
+ noback always \xf509 6-23456 # recognized closing square bracket
135
+ noback always \xf50a 4-246 # recognized opening angle bracket
136
+ noback always \xf50b 4-135 # recognized closing angle bracket
137
+
138
+ # Function tokens. PUA input keeps
139
+ # function names distinct from ordinary Latin-letter runs. These rules are
140
+ # forward-only because their cells are also ordinary Cyrillic letter sequences
141
+ # (for example 1246-123 is "ял") and can not be reconstructed unambiguously.
142
+ noback always \xf510 1246-234 # sin
143
+ noback always \xf511 1246-14 # cos
144
+ noback always \xf512 1246-2345 # tg
145
+ noback always \xf513 1246-14-2345 # ctg
146
+ noback always \xf514 1246-1-234 # arcsin
147
+ noback always \xf515 1246-1-14 # arccos
148
+ noback always \xf516 1246-1-2345 # arctg
149
+ noback always \xf517 1246-1-14-2345 # arcctg
150
+ noback always \xf518 1246-123 # log
151
+ noback always \xf519 1246-123-1245 # lg
152
+ noback always \xf51a 1246-123-1345 # ln
153
+ noback always \xf51b 1246-134-1346 # max
154
+ noback always \xf51c 1246-134-1345 # min
155
+ noback always \xf51d 1246-15 # exp
156
+ noback always \xf51e 1246-123-134 # lim
157
+
158
+ # Structured mark positions and mark contents. Position and content
159
+ # are separate tokens so producers can preserve ordering around the base.
160
+ noback always \xf530 46 # upper mark, left or right
161
+ noback always \xf531 456 # lower mark, left or right
162
+ noback always \xf532 45 # mark exactly above
163
+ noback always \xf533 56 # mark exactly below
164
+ noback always \xf534 5 # reserved mark discriminator
165
+ noback always \xf540 25 # horizontal line / overbar
166
+ noback always \xf541 35 # prime
167
+ noback always \xf542 23 # star
168
+ noback always \xf543 236 # cross
169
+ noback always \xf544 356 # circle
170
+ noback always \xf545 2356 # square
171
+ noback always \xf546 26 # tilde
172
+ noback always \xf547 256 # hat
173
+ noback always \xf548 56-35 # check / chevron
174
+ noback always \xf549 46-35 # angular minute
175
+ noback always \xf54a 46-35-35 # angular second
176
+ noback always \xf54b 25-2 # right arrow mark
177
+ noback always \xf54c 5-25 # left arrow mark
178
+ noback always \xf54d 235 # plus mark
179
+ noback always \xf54e 36 # minus mark
180
+
181
+ # Vector notation: arrow or bar placed after a one-letter or two-letter vector
182
+ # name. The two-letter forms carry the recognition prefix 45.
183
+ noback always \xf550 25-2 # vector arrow, one-letter name
184
+ noback always \xf551 45-25-2 # vector arrow, two-letter name
185
+ noback always \xf552 25 # vector bar, one-letter name
186
+ noback always \xf553 45-25 # vector bar, two-letter name
187
+
188
+ # Plain-Unicode integer script digits. The formatter supplies F320 or F321 as
189
+ # the structural indicator before a subscript or superscript run. The digits
190
+ # themselves use the lowered numeric row, without a number sign or terminator.
191
+ noback math \x2070 356
192
+ noback math \x00b9 2
193
+ noback math \x00b2 23
194
+ noback math \x00b3 25
195
+ noback math \x2074 256
196
+ noback math \x2075 26
197
+ noback math \x2076 235
198
+ noback math \x2077 2356
199
+ noback math \x2078 236
200
+ noback math \x2079 35
201
+ noback math \x2080 356
202
+ noback math \x2081 2
203
+ noback math \x2082 23
204
+ noback math \x2083 25
205
+ noback math \x2084 256
206
+ noback math \x2085 26
207
+ noback math \x2086 235
208
+ noback math \x2087 2356
209
+ noback math \x2088 236
210
+ noback math \x2089 35
211
+
212
+ # Protect against isolated semantic prefixes.
213
+ replace \xf400
214
+ replace \xf401
215
+ replace \xf402
216
+ replace \xf403
217
+
218
+ # General math symbols
219
+
220
+ noback math + 235
221
+ nofor math + 56-235
222
+ noback math \x2212 36
223
+ nofor math \x2212 56-36
224
+ noback math \x00d7 236 # multiplication cross
225
+ nofor math \x00d7 56-236
226
+ noback math \x00f7 256
227
+ nofor math \x00f7 56-256
228
+ noback math \x00b1 235-36
229
+ noback math \x2213 36-235
230
+ noback math > 135
231
+ noback math < 246
232
+ noback math \x2265 135-2356
233
+ noback math \x2264 246-2356
234
+ noback math \x2260 23456
235
+ noback math % 3456-356
236
+ noback math \x2030 3456-356-356 # per mille
237
+ noback math \x2116 1345 # numero sign
238
+ noback always \x2116\s 1345 # numero sign absorbs following print space
239
+ noback math \x2248 26-26
240
+
241
+ # Greek alphabet
242
+
243
+ lowercase \x03B1 1 # α Alpha
244
+ lowercase \x03B2 12 # β Beta
245
+ lowercase \x03B3 1245 # γ Gamma
246
+ lowercase \x03B4 145 # δ Delta
247
+ lowercase \x03B5 15 # ε Epsilon
248
+ lowercase \x03B6 1356 # ζ Zeta
249
+ lowercase \x03B7 245 # η Eta
250
+ lowercase \x03B8 125 # θ Theta
251
+ lowercase \x03B9 24 # ι Iota
252
+ lowercase \x03ba 13 # κ Kappa
253
+ lowercase \x03bb 123 # λ Lambda
254
+ lowercase \x03bc 134 # μ Mu
255
+ lowercase \x03bd 1345 # ν Nu
256
+ lowercase \x03be 1346 # ξ Xi
257
+ lowercase \x03bf 135 # ο Omicron
258
+ lowercase \x03c0 1234 # π Pi
259
+ lowercase \x03c1 1235 # ρ Rho
260
+ lowercase \x03c3 234 # σ Sigma
261
+ lowercase \x03c4 2345 # τ Tau
262
+ lowercase \x03c5 136 # υ Upsilon
263
+ lowercase \x03c6 124 # φ Phi
264
+ lowercase \x03c7 14 # χ Chi
265
+ lowercase \x03c8 13456 # ψ Psi
266
+ lowercase \x03c9 2456 # ω Omega
267
+ noback math \x03d5 56-124 # GREEK PHI SYMBOL
268
+ base uppercase \x0391 \x03B1 # Αα Alpha
269
+ base uppercase \x0392 \x03B2 # Ββ Beta
270
+ base uppercase \x0393 \x03B3 # Γγ Gamma
271
+ base uppercase \x0394 \x03B4 # Δδ Delta
272
+ base uppercase \x0395 \x03B5 # Εε Epsilon
273
+ base uppercase \x0396 \x03B6 # Ζζ Zeta
274
+ base uppercase \x0397 \x03B7 # Ηη Eta
275
+ base uppercase \x0398 \x03B8 # Θθ Theta
276
+ base uppercase \x0399 \x03B9 # Ιι Iota
277
+ base uppercase \x039a \x03ba # Κκ Kappa
278
+ base uppercase \x039b \x03bb # Λλ Lambda
279
+ base uppercase \x039c \x03bc # Μμ Mu
280
+ base uppercase \x039d \x03bd # Νν Nu
281
+ base uppercase \x039e \x03be # Ξξ Xi
282
+ base uppercase \x039f \x03bf # Οο Omicron
283
+ base uppercase \x03a0 \x03c0 # Ππ Pi
284
+ base uppercase \x03a1 \x03c1 # Ρρ Rho
285
+ base uppercase \x03a3 \x03c3 # Σσ Sigma
286
+ base uppercase \x03a4 \x03c4 # Ττ Tau
287
+ base uppercase \x03a5 \x03c5 # Υυ Upsilon
288
+ base uppercase \x03a6 \x03c6 # Φφ Phi
289
+ base uppercase \x03a7 \x03c7 # Χχ Chi
290
+ base uppercase \x03a8 \x03c8 # Ψψ Psi
291
+ base uppercase \x03a9 \x03c9 # Ωω Omega
292
+
293
+ # Other math symbols
294
+
295
+ noback math \x2032 35 # prime
296
+ noback math \x2033 35-35 # double prime
297
+ noback math \x2208 5-246
298
+ noback math \x2209 45-246
299
+ noback math \x2202 1456
300
+ noback math \x2215 356 # division slash
301
+ noback math \x2217 35 # asterisk operator
302
+ noback math \x00b0 46-356
303
+ noback math \x2103 46-356-46-14
304
+ # U+2109 is a compatibility composition of the confirmed degree sign and
305
+ # Latin F; Fahrenheit is absent from the checked Russian normative sources.
306
+ noback math \x2109 46-356-46-124
307
+ noback math \x221e 12456 # infinity
308
+ noback math \x222b 2346 # integral
309
+ # The Russian notation system confirms these integral forms. Double and triple
310
+ # integrals repeat the integral cell; contour and surface forms retain the
311
+ # historical liblouis compositions.
312
+ noback math \x222c 2346-2346 # double integral, compatibility
313
+ noback math \x222d 2346-2346-2346 # triple integral, compatibility
314
+ noback math \x222e 2346-356 # contour integral
315
+ noback math \x222f 2346-2346-356 # surface integral
316
+ noback math \x2282 12346
317
+ noback math \x2284 4-12346
318
+ noback math \x2229 56-256
319
+ noback math \x222a 56-356
320
+ noback math \x2216 56-36
321
+ noback math \x2205 4-356
322
+ noback math \x22c5 3 # dot operator
323
+ noback math \x21d2 2356-345
324
+ noback math \x21d0 236-2356
325
+ noback math \x21d4 236-2356-345
326
+ noback math \x2200 1246-3
327
+ noback math \x2203 1246-26
328
+ noback math \x2261 56-2356
329
+ noback math \x2227 56-26
330
+ noback math \x2228 56-35
331
+ noback math \x00ac 146
332
+ noback math \x221a 146-156 # square root
333
+ noback math \x221b 146-25-156 # cube root
334
+ noback math \x221c 146-256-156 # fourth root
335
+ noback math \x2329 246
336
+ noback math \x232a 135
337
+ noback math \x27e8 246 # mathematical left angle bracket
338
+ noback math \x27e9 135 # mathematical right angle bracket
339
+
340
+ # Geometry
341
+
342
+ noback math \x2220 456-246 # angle
343
+ noback math \x2245 26
344
+ noback math \x25b3 456-145 # triangle
345
+ noback math \x2312 456-345
346
+ noback math \x2225 456-456
347
+ noback math \x22a5 3456-3
348
+ noback math \x27c2 3456-3 # perpendicular, canonical Unicode
349
+ noback math \x223c 26
350
+ noback math ~ 26
351
+
352
+ # Fraction symbols
353
+
354
+ noback math \x00bd 3456-1-23 # 1/2
355
+ noback math \x2155 3456-1-26 # 1/5
356
+ noback math \x00bc 3456-1-256 # 1/4
357
+ noback math \x00be 3456-14-256 # 3/4
358
+ noback math \x2150 3456-1-2356 # 1/7
359
+ noback math \x2151 3456-1-35 # 1/9
360
+ noback math \x2152 3456-1-2-356 # 1/10
361
+ noback math \x2153 3456-1-25 # 1/3
362
+ noback math \x2154 3456-12-25 # 2/3
363
+ noback math \x2156 3456-12-26 # 2/5
364
+ noback math \x2157 3456-14-26 # 3/5
365
+ noback math \x2158 3456-145-26 # 4/5
366
+ noback math \x2159 3456-1-235 # 1/6
367
+ noback math \x215a 3456-15-235 # 5/6
368
+ noback math \x215b 3456-1-236 # 1/8
369
+ noback math \x215c 3456-14-236 # 3/8
370
+ noback math \x215d 3456-15-236 # 5/8
371
+ noback math \x215e 3456-1245-236 # 7/8
372
+ noback math \x2189 3456-245-25 # 0/3
373
+ noback math \x2044 1256 # fraction slash
374
+ noback math \x2236 1256 # ratio
375
+
376
+ # arrows
377
+ # U+2190/U+2192 are the standard arrows. The visually distinct short arrows
378
+ # belong to marks after letters and are represented by semantic PUA tokens.
379
+ # U+27F5/U+27F6 are accepted as compatibility spellings of the standard arrows.
380
+
381
+ noback math \x2190 246-25
382
+ noback math \x2191 56-34
383
+ noback math \x2192 25-135
384
+ noback math \x2193 45-16
385
+ noback math \x27f5 246-25
386
+ noback math \x27f6 25-135
387
+ # Additional arrows confirmed by the Russian notation system.
388
+ noback math \x2194 246-25-135
389
+ noback math \x2195 1456-3
390
+ noback math \x2196 5-26
391
+ noback math \x2197 35-2
392
+ noback math \x2198 26-3
393
+ noback math \x2199 6-35
394
+ noback math \x21d1 34-34
395
+ noback math \x21d3 16-16