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,545 @@
1
+ # Liblouis: Danish table for 8 dots grade 1 2022
2
+ #
3
+ # Copyright (C) 2014, 2016-2024, Bue Vester-Andersen <bue@vester-andersen.dk>
4
+ #
5
+ # This file is part of liblouis.
6
+ #
7
+ # liblouis is free software: you can redistribute it and/or modify it
8
+ # under the terms of the GNU Lesser General Public License as
9
+ # published by the Free Software Foundation, either version 2.1 of the
10
+ # License, or (at your option) any later version.
11
+ #
12
+ # liblouis is distributed in the hope that it will be useful, but
13
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
+ # Lesser General Public License for more details.
16
+ #
17
+ # You should have received a copy of the GNU Lesser General Public
18
+ # License along with liblouis. If not, see
19
+ # <http://www.gnu.org/licenses/>.
20
+ #
21
+ #------------
22
+ #
23
+ # This is the Danish table for 8 dots grade 1 (fuldskrift) 2022.
24
+ # Use this table for translation and back-translation of Danish 8 dots grade 1.
25
+ # See also: Den Danske Punktskrift 2022
26
+ # Det Danske Punktskriftsnævn
27
+ # https://www.blind.dk/punktskrift-2022
28
+ #
29
+ # Version: Bue Vester-Andersen, December 2022
30
+
31
+ ### Table Metadata
32
+
33
+ #-name: Dansk fuldskrift 8-punkt 2022
34
+ #-index-name: Danish, uncontracted, 8-dot, 2022
35
+ #-display-name: Danish 8-dot uncontracted braille (2022 standard)
36
+
37
+ #+language: da
38
+ #+type: literary
39
+ #+contraction: no
40
+ #+grade: 1
41
+ #+dots: 8
42
+ #+direction: both
43
+ #+system: ddp
44
+ #+version: 2022
45
+
46
+ # Display upcodes
47
+ include da-dk-octobraille.dis
48
+
49
+ ### Character definitions ###
50
+ # Various spaces
51
+ include spaces.uti
52
+
53
+ punctuation ! 235 EXCLAMATION MARK
54
+ punctuation " 2356 QUOTATION MARK
55
+ punctuation # 34568 NUMBER SIGN
56
+ sign $ 14578 DOLLAR SIGN
57
+ math % 678 PERCENT SIGN
58
+ sign & 123468 AMPERSAND
59
+ punctuation ' 4 APOSTROPHE
60
+ punctuation ( 2368 LEFT PARENTHESIS
61
+ punctuation ) 3568 RIGHT PARENTHESIS
62
+ punctuation * 35 ASTERISK
63
+ math + 2358 PLUS SIGN
64
+ punctuation , 2 COMMA
65
+ punctuation - 36 HYPHEN-MINUS
66
+ punctuation . 3 FULL STOP
67
+ punctuation / 348 SLASH
68
+
69
+ # Digits
70
+ include digits8Dots.uti
71
+
72
+ punctuation : 25 COLON
73
+ punctuation ; 23 SEMICOLON
74
+ math < 358 LESS-THAN SIGN
75
+ math = 23568 EQUALS SIGN
76
+ math > 267 GREATER-THAN SIGN
77
+ punctuation ? 26 QUESTION MARK
78
+ sign @ 178 COMMERCIAL AT
79
+
80
+ # Latin letters
81
+ include latinLetterDef8Dots.uti
82
+
83
+ punctuation [ 23678 LEFT SQUARE BRACKET
84
+ punctuation \\ 347 REVERSE SLASH
85
+ punctuation ] 35678 RIGHT SQUARE BRACKET
86
+ punctuation ^ 12348 CIRCUMFLEX ACCENT
87
+ punctuation _ 3678 LOW LINE
88
+ punctuation ` 5 GRAVE ACCENT
89
+
90
+ # Lowercase letters, see above
91
+
92
+ punctuation { 123678 LEFT CURLY BRACKET
93
+ punctuation | 4568 VERTICAL LINE
94
+ punctuation } 345678 RIGHT CURLY BRACKET
95
+ punctuation ~ 2378 TILDE
96
+ sign \x007f 7 DELETE
97
+ sign \x20AC 1578 #EURO SIGN (0x80)
98
+ sign \x0081 2357 <control-0081>
99
+ punctuation \x201A 457 #Low single quote (0x82)
100
+ sign \x0192 58 #Flurihn (0x83)
101
+ punctuation \x201E 467 #Low quote (0x84)
102
+ punctuation \x2026 6 #Elipsis (0x85)
103
+ sign \x2020 45 #Dagger (0x86
104
+ sign \x2021 456 #Double dagger (0x87
105
+ sign \x02c6 5678 #Modifier letter circumflex (0x88)
106
+ math \x2030 245678 #permille sign (0x89)
107
+ punctuation \x2039 23578 #SINGLE LEFT-POINTING ANGLE QUOTATION MARK (0x8b)
108
+ uppercase \x0152 13578 #Latin capital LIGATURE OE (0x8c)
109
+ sign \x008d 3567 REVERSE LINE FEED (not defined in cp1252)
110
+ uppercase \x017d 3467 #Latin capital letter Z with caron (0x8e)
111
+ sign \x008f 27 SINGLE SHIFT THREE (not defined in cp1252)
112
+ sign \x0090 357 DEVICE CONTROL STRING (not defined in cp1252)
113
+ punctuation \x2018 47 #LEFT SINGLE QUOTATION MARK (0x91)
114
+ punctuation \x2019 48 #RIGHT SINGLE QUOTATION MARK (0x92)
115
+ punctuation \x201c 237 #LEFT DOUBLE QUOTATION MARK (0x93)
116
+ punctuation \x201d 568 #RIGHT DOUBLE QUOTATION MARK (0x94)
117
+ sign \x2022 37 #Bullit (0x95)
118
+ sign \x2013 368 #EN DASH (0x96)
119
+ sign \x2014 367 #Em DASH (0x97)
120
+ sign \x02DC 23478 #small TILDE (0x98)
121
+ sign \x2122 234578 #TRADE MARK SIGN (0x99)
122
+ punctuation \x203A 4567 #SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (0x9b)
123
+ lowercase \x0153 1358 #Latin small LIGATURE OE (0x9c)
124
+ letter \x009d 2567 OPERATING SYSTEM COMMAND
125
+ lowercase \x017E 346 #Latin small letter Z with caron (0x9e)
126
+ uppercase \x0178 2345678 #Latin capital letter Y with DIAERESIS (0x9f)
127
+ punctuation \x00a1 256 INVERTED EXCLAMATION MARK )0xa1)
128
+ punctuation \x00a2 2578 CENT SIGN (0xa2)
129
+ punctuation \x00a3 12378 POUND SIGN (0xa3)
130
+ punctuation \x00a4 2367 CURRENCY SIGN (0xa4)
131
+ punctuation \x00a5 1345678 YEN SIGN (0xa5)
132
+ punctuation \x00a6 3478 BROKEN BAR (0xa6)
133
+ punctuation \x00a7 578 SECTION SIGN (0xa7)
134
+ punctuation \x00a8 56 DIAERESIS (0xa8)
135
+ punctuation \x00a9 1478 COPYRIGHT SIGN (0xa9)
136
+ letter \x00aa 234678 FEMININE ORDINAL INDICATOR (0xaa)
137
+ punctuation \x00ab 57 LEFT-POINTING DOUBLE ANGLE QUOTATION MARK (0xab)
138
+ punctuation \x00ac 34567 NOT SIGN (0xac)
139
+ letter \x00ad 378 SOFT HYPHEN (0xad)
140
+ punctuation \x00ae 123578 Registered sign (0xae)
141
+ punctuation \x00af 23567 macron (0xaf)
142
+ sign \x00b0 356 Degree sign (0xb0)
143
+ math \x00b1 12478 PLUS-MINUS SIGN
144
+ punctuation \x00b2 238 SUPERSCRIPT TWO
145
+ punctuation \x00b3 258 SUPERSCRIPT THREE
146
+ punctuation \x00b4 458 acute ACCENT
147
+ sign \x00b5 236 MICRO SIGN
148
+ punctuation \x00b6 1234568 PILCROW SIGN
149
+ punctuation \x00b7 38 MIDDLE DOT
150
+ punctuation \x00b8 4678 CEDILLA
151
+ punctuation \x00b9 28 SUPERSCRIPT ONE
152
+ letter \x00ba 12345678 MASCULINE ORDINAL INDICATOR
153
+ punctuation \x00bb 567 RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
154
+ punctuation \x00bc 1368 VULGAR FRACTION ONE QUARTER
155
+ punctuation \x00bd 468 VULGAR FRACTION ONE HALF
156
+ punctuation \x00be 13468 VULGAR FRACTION THREE QUARTERS
157
+ punctuation \x00bf 34 INVERTED QUESTION MARK
158
+ uppercase \x00c0 123567 Latin capital letter A with GRAVE
159
+ uppercase \x00c1 1235678 Latin capital letter A with acute
160
+ uppercase \x00c2 1678 Latin capital letter A with CIRCUMFLEX
161
+ uppercase \x00c3 14678 Latin capital letter A with TILDE
162
+ uppercase \x00c4 34578 Latin capital letter A with DIAERESIS
163
+ uppercase \x00c5 167 Latin capital letter A with RING ABOVE
164
+ uppercase \x00c6 3457 Latin capital letter AE
165
+ uppercase \x00c7 123467 Latin capital letter C with CEDILLA
166
+ uppercase \x00c8 23467 Latin capital letter E with GRAVE
167
+ uppercase \x00c9 1234567 Latin capital letter E with acute
168
+ uppercase \x00ca 1267 Latin capital letter E with CIRCUMFLEX
169
+ uppercase \x00cb 12467 Latin capital letter E with DIAERESIS
170
+ uppercase \x00cc 15678 Latin capital letter I with GRAVE
171
+ uppercase \x00cd 12678 Latin capital letter I with acute
172
+ uppercase \x00ce 1467 Latin capital letter I with CIRCUMFLEX
173
+ uppercase \x00cf 124567 Latin capital letter I with DIAERESIS
174
+ uppercase \x00d0 67 Latin capital letter ETH
175
+ uppercase \x00d1 1245678 Latin capital letter N with TILDE
176
+ uppercase \x00d2 124678 Latin capital letter O with GRAVE
177
+ uppercase \x00d3 34678 Latin capital letter O with acute
178
+ uppercase \x00d4 14567 Latin capital letter O with CIRCUMFLEX
179
+ uppercase \x00d5 145678 Latin capital letter O with TILDE
180
+ uppercase \x00d6 24678 Latin capital letter O with DIAERESIS
181
+ math \x00d7 3456 MULTIPLICATION SIGN
182
+ uppercase \x00d8 2467 Latin capital letter O with STROKE
183
+ uppercase \x00d9 234567 Latin capital letter U with GRAVE
184
+ uppercase \x00da 125678 Latin capital letter U with acute
185
+ uppercase \x00db 1567 Latin capital letter U with CIRCUMFLEX
186
+ uppercase \x00dc 12567 Latin capital letter U with DIAERESIS
187
+ uppercase \x00dd 235678 Latin capital letter Y with acute (infinite?)
188
+ uppercase \x00de 1378 Latin capital letter THORN
189
+ lowercase \x00df 23468 Latin small letter SHARP S
190
+ lowercase \x00e0 12356 Latin small letter A with GRAVE
191
+ lowercase \x00e1 123568 Latin small letter A with acute
192
+ lowercase \x00e2 168 Latin small letter A with CIRCUMFLEX
193
+ lowercase \x00e3 1468 Latin small letter A with TILDE
194
+ lowercase \x00e4 3458 Latin small letter A with DIAERESIS
195
+ lowercase \x00e5 16 Latin small letter A with RING ABOVE
196
+ lowercase \x00e6 345 Latin small letter AE
197
+ lowercase \x00e7 12346 Latin small letter C with CEDILLA
198
+ lowercase \x00e8 2346 Latin small letter E with GRAVE
199
+ lowercase \x00e9 123456 Latin small letter E with acute
200
+ lowercase \x00ea 126 Latin small letter E with CIRCUMFLEX
201
+ lowercase \x00eb 1246 Latin small letter E with DIAERESIS
202
+ lowercase \x00ec 1568 Latin small letter I with GRAVE
203
+ lowercase \x00ed 1268 Latin small letter I with acute
204
+ lowercase \x00ee 146 Latin small letter I with CIRCUMFLEX
205
+ lowercase \x00ef 12456 Latin small letter I with DIAERESIS
206
+ lowercase \x00f0 134568 Latin small letter ETH
207
+ lowercase \x00f1 124568 Latin small letter N with TILDE
208
+ lowercase \x00f2 12468 Latin small letter O with GRAVE
209
+ lowercase \x00f3 3468 Latin small letter O with acute
210
+ lowercase \x00f4 1456 Latin small letter O with CIRCUMFLEX
211
+ lowercase \x00f5 14568 Latin small letter O with TILDE
212
+ lowercase \x00f6 2468 Latin small letter O with DIAERESIS
213
+ math \x00f7 2568 DIVISION SIGN
214
+ lowercase \x00f8 246 Latin small letter O with STROKE
215
+ lowercase \x00f9 23456 Latin small letter U with GRAVE
216
+ lowercase \x00fa 12568 Latin small letter U with acute
217
+ lowercase \x00fb 156 Latin small letter U with CIRCUMFLEX
218
+ lowercase \x00fc 1256 Latin small letter U with DIAERESIS
219
+ lowercase \x00fd 1348 Latin small letter Y with acute
220
+ lowercase \x00fe 138 Latin small letter THORN
221
+ lowercase \x00ff 234568 Latin small letter Y with DIAERESIS
222
+
223
+ # In CP-1252 the following chars are different from Unicode.
224
+ # This placement ensures that Liblouis will always return the unicode when back-translating.
225
+ sign \x0080 1578 #EURO SIGN (0x80)
226
+ punctuation \x0082 457 #Low single quote (0x82)
227
+ sign \x0083 58 #Flurihn (0x83)
228
+ punctuation \x0084 467 #Low quote (0x84)
229
+ punctuation \x0085 6 #Elipsis (0x85)
230
+ letter \x0086 45 #Dagger (0x86
231
+ letter \x0087 456 #Double dagger (0x87
232
+ letter \x0088 5678 #Modifier letter circumflex (0x88)
233
+ math \x0089 245678 #permille sign (0x89)
234
+ uppercase \x008a 23478 #Latin letter S with caron (0x8a)
235
+ lowercase \x009a 2348
236
+ punctuation \x008b 23578 #SINGLE LEFT-POINTING ANGLE QUOTATION MARK (0x8b)
237
+ uppercase \x008c 13578 #Latin LIGATURE OE (0x8c)
238
+ lowercase \x009c 1358
239
+ uppercase \x008e 3467 #Latin capital letter Z with caron (0x8e)
240
+ lowercase \x009e 346
241
+ punctuation \x0091 47 #LEFT SINGLE QUOTATION MARK (0x91)
242
+ punctuation \x0092 48 #RIGHT SINGLE QUOTATION MARK (0x92)
243
+ punctuation \x0093 237 #LEFT DOUBLE QUOTATION MARK (0x93)
244
+ punctuation \x0094 568 #RIGHT DOUBLE QUOTATION MARK (0x94)
245
+ sign \x0095 37 #Bullit (0x95)
246
+ sign \x0096 368 #EN DASH (0x96)
247
+ sign \x0097 367 #Em DASH (0x97)
248
+ sign \x0098 23478 #small TILDE (0x98)
249
+ sign \x0099 234578 #TRADE MARK SIGN (0x99)
250
+ punctuation \x009b 4567 #SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (0x9b)
251
+ uppercase \x009f 2345678 #Latin capital letter Y with DIAERESIS (0x9f)
252
+
253
+ #Unicode Braille patterns
254
+ include braille-patterns.cti
255
+
256
+ # characters that have letsign as part of their definition
257
+ # (to be removed when the alwaysletsign opcode has been implemented).
258
+
259
+ punctuation \x2026 56-3-3-3 #Elipsis (0x85)
260
+ noback punctuation \x0085 56-3-3-3 #Elipsis (0x85)
261
+
262
+ # Misc unicode characters
263
+
264
+ # Many of the characters below and in da-dk-8miscChars.cti have not
265
+ # been defined in the Danish Braille standard.
266
+ # The current implementation is purely experimental and subject to change.
267
+ # Math chars and arrows etc. are inspired by UEB.
268
+
269
+ # Latin Extended-A (\x0100-\x017f)
270
+
271
+ # For each accented letter, the first occurring instance is chosen for back-translation.
272
+ # There are no rules about this in the specs of Danish Braille,
273
+ # So the choice is arbitrary and may change over time.
274
+
275
+ uppercase \x0100 5-17 Latin letter a with macron
276
+ lowercase \x0101 5-1 Latin letter a with macron
277
+ noback uppercase \x0102 5-17 Latin letter a with breve
278
+ noback lowercase \x0103 5-1 Latin letter a with breve
279
+ noback uppercase \x0104 5-17 Latin letter a with ogonek
280
+ noback lowercase \x0105 5-1 Latin letter a with ogonek
281
+ uppercase \x0106 5-147 Latin letter c with acute
282
+ lowercase \x0107 5-14 Latin letter c with acute
283
+ noback uppercase \x0108 5-147 Latin letter c with circumflex
284
+ noback lowercase \x0109 5-14 Latin letter c with circumflex
285
+ noback uppercase \x010a 5-147 Latin letter c with dot above
286
+ noback lowercase \x010b 5-14 Latin letter c with dot above
287
+ noback uppercase \x010c 5-147 Latin letter c with caron
288
+ noback lowercase \x010d 5-14 Latin letter c with caron
289
+ uppercase \x010e 5-1457 Latin letter d with caron
290
+ lowercase \x010f 5-145 Latin letter d with caron
291
+ noback uppercase \x0110 5-1457 Latin letter d with stroke
292
+ noback lowercase \x0111 5-145 Latin letter d with stroke
293
+ uppercase \x0112 5-157 Latin letter e with macron
294
+ lowercase \x0113 5-15 Latin letter e with macron
295
+ noback uppercase \x0114 5-157 Latin letter e with breve
296
+ noback lowercase \x0115 5-15 Latin letter e with breve
297
+ noback uppercase \x0116 5-157 Latin letter e with dot above
298
+ noback lowercase \x0117 5-15 Latin letter e with dot above
299
+ noback uppercase \x0118 5-157 Latin letter e with ogonek
300
+ noback lowercase \x0119 5-15 Latin letter e with ogonek
301
+ noback uppercase \x011a 5-157 Latin letter e with caron
302
+ noback lowercase \x011b 5-15 Latin letter e with caron
303
+ uppercase \x011c 5-12457 Latin letter g with circumflex
304
+ lowercase \x011d 5-1245 Latin letter g with circumflex
305
+ noback uppercase \x011e 5-12457 Latin letter g with breve
306
+ noback lowercase \x011f 5-1245 Latin letter g with breve
307
+ noback uppercase \x0120 5-12457 Latin letter g with dot above
308
+ noback lowercase \x0121 5-1245 Latin letter g with dot above
309
+ noback uppercase \x0122 5-12457 Latin letter g with cedilla
310
+ noback lowercase \x0123 5-1245 Latin letter g with cedilla
311
+ uppercase \x0124 5-1257 Latin letter h with circumflex
312
+ lowercase \x0125 5-125 Latin letter h with circumflex
313
+ noback uppercase \x0126 5-1257 Latin letter h with stroke
314
+ noback lowercase \x0127 5-125 Latin letter h with stroke
315
+ uppercase \x0128 5-247 Latin letter i with tilde
316
+ lowercase \x0129 5-24 Latin letter i with tilde
317
+ noback uppercase \x012a 5-247 Latin letter i with macron
318
+ noback lowercase \x012b 5-24 Latin letter i with macron
319
+ noback uppercase \x012c 5-247 Latin letter i with breve
320
+ noback lowercase \x012d 5-24 Latin letter i with breve
321
+ noback uppercase \x012e 5-247 Latin letter i with ogonek
322
+ noback lowercase \x012f 5-24 Latin letter i with ogonek
323
+ noback uppercase \x0130 5-247 Latin capital letter i with dot above
324
+ noback lowercase \x0131 5-24 Latin small dotless i
325
+ noback uppercase \x0132 247-245 Latin ligature ij
326
+ noback lowercase \x0133 24-245 Latin ligature ij
327
+ uppercase \x0134 5-2457 Latin letter j with circumflex
328
+ lowercase \x0135 5-245 Latin letter j with circumflex
329
+ uppercase \x0136 5-137 Latin letter k with cedilla
330
+ lowercase \x0137 5-13 Latin letter k with cedilla
331
+ lowercase \x0138 5-12345 Small latin letter kra (Greenlandic q)
332
+ uppercase \x0139 5-1237 Latin letter l with acute
333
+ lowercase \x013a 5-123 Latin letter l with acute
334
+ noback uppercase \x013b 5-1237 Latin letter l with cedilla
335
+ noback lowercase \x013c 5-123 Latin letter l with cedilla
336
+ noback uppercase \x013d 5-1237 Latin letter l with caron
337
+ noback lowercase \x013e 5-123 Latin letter l with caron
338
+ noback uppercase \x013f 5-1237 Latin letter l with middle dot
339
+ noback lowercase \x0140 5-123 Latin letter l with middle dot
340
+ noback uppercase \x0141 5-1237 Latin letter l with stroke
341
+ noback lowercase \x0142 5-123 Latin letter l with stroke
342
+ uppercase \x0143 5-13457 Latin letter n with acute
343
+ lowercase \x0144 5-1345 Latin letter n with acute
344
+ noback uppercase \x0145 5-13457 Latin letter n with cedilla
345
+ noback lowercase \x0146 5-1345 Latin letter n with cedilla
346
+ noback uppercase \x0147 5-13457 Latin letter n with caron
347
+ noback lowercase \x0148 5-1345 Latin letter n with caron
348
+ noback lowercase \x0149 4-1345 Latin small letter n preceeded by apostrophe
349
+ noback uppercase \x014a 5-13457 Latin letter eng
350
+ noback lowercase \x014b 5-1345 Latin letter eng
351
+ uppercase \x014c 5-1357 Latin letter o with macron
352
+ lowercase \x014d 5-135 Latin letter o with macron
353
+ noback uppercase \x014e 5-1357 Latin letter o with breve
354
+ noback lowercase \x014f 5-135 Latin letter o with breve
355
+ noback uppercase \x0150 5-1357 Latin letter o with double acute
356
+ noback lowercase \x0151 5-135 Latin letter o with double acute
357
+ uppercase \x0154 5-12357 Latin letter r with acute
358
+ lowercase \x0155 5-1235 Latin letter r with acute
359
+ noback uppercase \x0156 5-12357 Latin letter r with cedilla
360
+ noback lowercase \x0157 5-1235 Latin letter r with cedilla
361
+ noback uppercase \x0158 5-12357 Latin letter r with caron
362
+ noback lowercase \x0159 5-1235 Latin letter r with caron
363
+ noback uppercase \x015a 5-2347 Latin letter s with acute
364
+ noback lowercase \x015b 5-234 Latin letter s with acute
365
+ noback uppercase \x015c 5-2347 Latin letter s with circumflex
366
+ noback lowercase \x015d 5-234 Latin letter s with circumflex
367
+ noback uppercase \x015e 5-2347 Latin letter s with cedilla
368
+ noback lowercase \x015f 5-234 Latin letter s with cedilla
369
+ uppercase \x0160 5-2347 #Latin capital Letter S with caron (0x8a/0x9a)
370
+ lowercase \x0161 5-234 #Latin lowercase Letter S with caron (0x8a/0x9a)
371
+ uppercase \x0162 5-23457 Latin letter t with cedilla
372
+ lowercase \x0163 5-2345 Latin letter t with cedilla
373
+ noback uppercase \x0164 5-23457 Latin letter t with caron
374
+ noback lowercase \x0165 5-2345 Latin letter t with caron
375
+ noback uppercase \x0166 5-23457 Latin letter t with stroke
376
+ noback lowercase \x0167 5-2345 Latin letter t with stroke
377
+ uppercase \x0168 5-1367 Latin letter u with tilde
378
+ lowercase \x0169 5-136 Latin letter u with tilde
379
+ noback uppercase \x016a 5-1367 Latin letter u with macron
380
+ noback lowercase \x016b 5-136 Latin letter u with macron
381
+ noback uppercase \x016c 5-1367 Latin letter u with breve
382
+ noback lowercase \x016d 5-136 Latin letter u with breve
383
+ noback uppercase \x016e 5-1367 Latin letter u with ring above
384
+ noback lowercase \x016f 5-136 Latin letter u with ring above
385
+ noback uppercase \x0170 5-1367 Latin letter u with double acute
386
+ noback lowercase \x0171 5-136 Latin letter u with double acute
387
+ noback uppercase \x0172 5-1367 Latin letter u with ogonek
388
+ noback lowercase \x0173 5-136 Latin letter u with ogonek
389
+ uppercase \x0174 5-24567 Latin letter w with circumflex
390
+ lowercase \x0175 5-2456 Latin letter w with circumflex
391
+ uppercase \x0176 5-134567 Latin letter y with circumflex
392
+ lowercase \x0177 5-13456 Latin letter y with circumflex
393
+ uppercase \x0179 5-13567 Latin letter z with acute
394
+ lowercase \x017a 5-1356 Latin letter z with acute
395
+ noback uppercase \x017b 5-13567 Latin letter z with dot above
396
+ noback lowercase \x017c 5-1356 Latin letter z with dot above
397
+ noback lowercase \x017f 5-234 Latin small letter long s
398
+
399
+ # Punctuation and bullits
400
+
401
+ noback punctuation \x2010 36 # Hyphen
402
+ noback punctuation \x2011 36 # Non-breaking hyphen
403
+ noback punctuation \x2012 36 # Figure dash
404
+ sign \x2016 45-4568 # Double Vertical Line
405
+ sign \x2017 45-3678 # Double low line
406
+ noback punctuation \x201b 4 # Single High-Reversed-9 Quotation Mark
407
+ noback punctuation \x201f 2356 # Double High-Reversed-9 Quotation Mark
408
+ noback sign \x2023 37 #Triangular bullit
409
+ noback punctuation \x203c 235-235 # Double Exclamation Mark
410
+ noback punctuation \x203d 26-235 # Interrobang
411
+ noback sign \x2043 37 # Hyphen bullet (0x95)
412
+ noback punctuation \x2047 26-26 # Double question mark
413
+ noback punctuation \x2048 26-235 # Question exclamation mark
414
+ noback punctuation \x2049 235-26 # Exclamation question mark
415
+ noback sign \x204c 37 # BLACK LEFTWARDS BULLET
416
+ noback sign \x204d 37 # BLACK RIGHTWARDS BULLET
417
+
418
+ # Arrows
419
+
420
+ sign \x2190 45-1256-246 Left arrow
421
+ sign \x2191 45-1256-346 Up arrow
422
+ sign \x2192 45-1256-135 Right arrow
423
+ sign \x2193 45-1256-146 Down arrow
424
+ sign \x2194 45-1256-2456-1235-135 Left-right arrow
425
+ sign \x2196 45-1256-156 Northwest arrow
426
+ sign \x2197 45-1256-234 Northeast arrow
427
+ sign \x2198 45-1256-126 Southeast arrow
428
+ sign \x2199 45-1256-345 Southwest arrow
429
+ sign \x21d4 45-1256-2456-2356-1235-135 Left-right double arrow
430
+
431
+ # Math signs (experimental)
432
+
433
+ math \x2200 45-1 # For all
434
+ math \x2208 45-15 # Element of
435
+ math \x2213 456-36 # Minus or plus
436
+ math \x221d 456-5-23568 # Proportional to
437
+ math \x2229 46-236 # Intersection
438
+ math \x222a 46-235 # Union
439
+ math \x2243 456-35 # approx. equal to
440
+ math \x2245 5-45-35 # approx. equal to
441
+ math \x2248 45-35 # approx. equal to
442
+ math \x224f 45-5-23568 # Diff between or approx. equal to
443
+ math \x2251 46-5-23568 # approx. equal to
444
+ math \x2260 5-23568-4-156 # Not equal to
445
+ math \x2261 456-123456 # Equivalent to
446
+ math \x2264 456-358 # Less than or equal to
447
+ math \x2265 456-267 # Greater than or equal to
448
+ math \x226a 46-358 # Much less than
449
+ math \x226b 46-267 # Much greater than
450
+ math \x22c5 5-256 # Multiplication dot
451
+
452
+ # Geometrical shapes
453
+
454
+ noback sign \x25e6 37 #White bullet
455
+
456
+ # Greek letters (with dots 458 as prefix)
457
+
458
+ uppercase \x0386 458-5-17 Greek letter alpha with tonos
459
+ uppercase \x0388 458-5-157 Greek letter epsilon with tonos
460
+ uppercase \x0389 458-5-1567 Greek letter eta with tonos
461
+ uppercase \x038A 458-5-247 Greek letter iota with sonos
462
+ uppercase \x038C 458-5-1357 Greek letter omicron with tonos
463
+ uppercase \x038E 458-5-1367 Greek letter upsilon with tonos
464
+ uppercase \x038F 458-5-24567 Greek letter omega with tonos
465
+ uppercase \x0391 458-17 Greek letter alpha
466
+ uppercase \x0392 458-127 Greek letter beta
467
+ uppercase \x0393 458-12457 Greek letter gamma
468
+ uppercase \x0394 458-1457 Greek letter delta
469
+ uppercase \x0395 458-157 Greek letter epsilon
470
+ uppercase \x0396 458-13567 Greek letter zeta
471
+ uppercase \x0397 458-1567 Greek letter eta
472
+ uppercase \x0398 458-14567 Greek letter theta
473
+ uppercase \x0399 458-247 Greek letter iota
474
+ uppercase \x039A 458-137 Greek letter kappa
475
+ uppercase \x039B 458-1237 Greek letter lamda
476
+ uppercase \x039C 458-1347 Greek letter mu
477
+ uppercase \x039D 458-13457 Greek letter nu
478
+ uppercase \x039E 458-13467 Greek letter xi
479
+ uppercase \x039F 458-1357 Greek letter omicron
480
+ uppercase \x03A0 458-12347 Greek letter pi
481
+ uppercase \x03A1 458-12357 Greek letter rho
482
+ uppercase \x03A3 458-2347 Greek letter sigma
483
+ uppercase \x03A4 458-23457 Greek letter tau
484
+ uppercase \x03A5 458-1367 Greek letter upsilon
485
+ uppercase \x03A6 458-1247 Greek letter phi
486
+ uppercase \x03A7 458-123467 Greek letter chi
487
+ uppercase \x03A8 458-134567 Greek letter psi
488
+ uppercase \x03A9 458-24567 Greek letter omega
489
+ lowercase \x03AC 458-5-1 Greek letter alpha with tonos
490
+ lowercase \x03AD 458-5-15 Greek letter epsilon with tonos
491
+ lowercase \x03AE 458-5-156 Greek letter eta with tonos
492
+ lowercase \x03AF 458-5-24 Greek letter iota with sonos
493
+ lowercase \x03B1 458-1 Greek letter alpha
494
+ lowercase \x03B2 458-12 Greek letter beta
495
+ lowercase \x03B3 458-1245 Greek letter gamma
496
+ lowercase \x03B4 458-145 Greek letter delta
497
+ lowercase \x03B5 458-15 Greek letter epsilon
498
+ lowercase \x03B6 458-1356 Greek letter zeta
499
+ lowercase \x03B7 458-156 Greek letter eta
500
+ lowercase \x03B8 458-1456 Greek letter theta
501
+ lowercase \x03B9 458-24 Greek letter iota
502
+ lowercase \x03BA 458-13 Greek letter kappa
503
+ lowercase \x03BB 458-123 Greek letter lamda
504
+ lowercase \x03BC 458-134 Greek letter mu
505
+ lowercase \x03BD 458-1345 Greek letter nu
506
+ lowercase \x03BE 458-1346 Greek letter xi
507
+ lowercase \x03BF 458-135 Greek letter omicron
508
+ lowercase \x03C0 458-1234 Greek letter pi
509
+ lowercase \x03C1 458-1235 Greek letter rho
510
+ lowercase \x03C3 458-234 Greek letter sigma
511
+ lowercase \x03C4 458-2345 Greek letter tau
512
+ lowercase \x03C5 458-136 Greek letter upsilon
513
+ lowercase \x03C6 458-124 Greek letter phi
514
+ lowercase \x03C7 458-12346 Greek letter chi
515
+ lowercase \x03C8 458-13456 Greek letter psi
516
+ lowercase \x03C9 458-2456 Greek letter omega
517
+ lowercase \x03CC 458-5-135 Greek letter omicron with tonos
518
+ lowercase \x03CD 458-5-136 Greek letter upsilon with tonos
519
+ lowercase \x03CE 458-5-2456 Greek letter omega with tonos
520
+
521
+ # Rules for grade 1 and grade 2
522
+
523
+ # Emphasis opcodes
524
+ emphclass italic
525
+ emphclass underline
526
+ emphclass bold
527
+
528
+ begemphphrase italic 46
529
+ endemphphrase italic after 46
530
+
531
+ begemphphrase bold 46
532
+ endemphphrase bold after 46
533
+
534
+ begemphphrase underline 46
535
+ endemphphrase underline after 46
536
+
537
+ # Remove space between  and numbers.
538
+ noback begnum § 578
539
+ begnum §\s 578
540
+ begnum §§\s 578-578
541
+ always §§ 578-578
542
+
543
+ # Ensure there is only one emphasis sign
544
+ noback pass2 @46-46 @46
545
+ noback pass2 @46-46-46 @46