glaemscribe 1.1.14 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +5 -5
  2. data/bin/glaemscribe +21 -17
  3. data/glaemresources/charsets/cirth_ds.cst +540 -0
  4. data/glaemresources/charsets/eldamar.cst +210 -0
  5. data/glaemresources/charsets/sarati_eldamar.cst +256 -0
  6. data/glaemresources/charsets/tengwar_ds_annatar.cst +2868 -0
  7. data/glaemresources/charsets/tengwar_ds_eldamar.cst +2729 -0
  8. data/glaemresources/charsets/tengwar_ds_elfica.cst +2742 -0
  9. data/glaemresources/charsets/tengwar_ds_parmaite.cst +2726 -0
  10. data/glaemresources/charsets/tengwar_ds_sindarin.cst +2722 -0
  11. data/glaemresources/charsets/tengwar_freemono.cst +217 -0
  12. data/glaemresources/charsets/tengwar_guni_annatar.cst +2948 -0
  13. data/glaemresources/charsets/tengwar_guni_eldamar.cst +2809 -0
  14. data/glaemresources/charsets/tengwar_guni_elfica.cst +2809 -0
  15. data/glaemresources/charsets/tengwar_guni_parmaite.cst +2813 -0
  16. data/glaemresources/charsets/tengwar_guni_sindarin.cst +2808 -0
  17. data/glaemresources/charsets/tengwar_telcontar.cst +225 -0
  18. data/glaemresources/charsets/unicode_gothic.cst +64 -0
  19. data/glaemresources/charsets/unicode_runes.cst +121 -0
  20. data/glaemresources/modes/{adunaic.glaem → adunaic-tengwar-glaemscrafu.glaem} +14 -2
  21. data/glaemresources/modes/{blackspeech.glaem → blackspeech-tengwar-general_use.glaem} +13 -3
  22. data/glaemresources/modes/english-cirth-espeak.glaem +687 -0
  23. data/glaemresources/modes/english-tengwar-espeak.glaem +814 -0
  24. data/glaemresources/modes/japanese-tengwar.glaem +776 -0
  25. data/glaemresources/modes/{khuzdul.glaem → khuzdul-cirth-moria.glaem} +4 -1
  26. data/glaemresources/modes/lang_belta-tengwar-dadef.glaem +248 -0
  27. data/glaemresources/modes/{futhorc.glaem → old_english-futhorc.glaem} +0 -0
  28. data/glaemresources/modes/{mercian.glaem → old_english-tengwar-mercian.glaem} +22 -12
  29. data/glaemresources/modes/{westsaxon.glaem → old_english-tengwar-westsaxon.glaem} +20 -11
  30. data/glaemresources/modes/{futhark-runicus.glaem → old_norse-futhark-runicus.glaem} +0 -0
  31. data/glaemresources/modes/{futhark-younger.glaem → old_norse-futhark-younger.glaem} +0 -0
  32. data/glaemresources/modes/{quenya.glaem → quenya-tengwar-classical.glaem} +32 -50
  33. data/glaemresources/modes/raw-cirth.glaem +154 -0
  34. data/glaemresources/modes/raw-tengwar.glaem +46 -23
  35. data/glaemresources/modes/{rlyehian.glaem → rlyehian-tengwar.glaem} +14 -3
  36. data/glaemresources/modes/{sindarin-daeron.glaem → sindarin-cirth-daeron.glaem} +55 -14
  37. data/glaemresources/modes/{sindarin-beleriand.glaem → sindarin-tengwar-beleriand.glaem} +154 -28
  38. data/glaemresources/modes/{sindarin.glaem → sindarin-tengwar-general_use.glaem} +86 -25
  39. data/glaemresources/modes/{telerin.glaem → telerin-tengwar-glaemscrafu.glaem} +16 -6
  40. data/glaemresources/modes/{westron.glaem → westron-tengwar-glaemscrafu.glaem} +18 -8
  41. data/lib/api/charset.rb +67 -7
  42. data/lib/api/charset_parser.rb +14 -1
  43. data/lib/api/constants.rb +3 -4
  44. data/lib/api/fragment.rb +26 -5
  45. data/lib/api/if_tree.rb +70 -8
  46. data/lib/api/macro.rb +40 -0
  47. data/lib/api/mode.rb +66 -19
  48. data/lib/api/mode_parser.rb +117 -14
  49. data/lib/api/object_additions.rb +23 -1
  50. data/lib/api/option.rb +17 -2
  51. data/lib/api/post_processor/outspace.rb +44 -0
  52. data/lib/api/post_processor/resolve_virtuals.rb +25 -9
  53. data/lib/api/resource_manager.rb +1 -0
  54. data/lib/api/rule_group.rb +170 -26
  55. data/lib/api/sheaf_chain_iterator.rb +1 -1
  56. data/lib/api/transcription_pre_post_processor.rb +8 -5
  57. data/lib/api/transcription_processor.rb +15 -12
  58. data/lib/api/tts.rb +51 -0
  59. data/lib/glaemscribe.rb +36 -31
  60. data/lib_espeak/espeakng.for.glaemscribe.nowasm.sync.js +35 -0
  61. data/lib_espeak/glaemscribe_tts.js +505 -0
  62. metadata +76 -24
@@ -0,0 +1,217 @@
1
+ \**
2
+
3
+ Glǽmscribe (also written Glaemscribe) is a software dedicated to
4
+ the transcription of texts between writing systems, and more
5
+ specifically dedicated to the transcription of J.R.R. Tolkien's
6
+ invented languages to some of his devised writing systems.
7
+
8
+ Copyright (C) 2015 Benjamin Babut (Talagan).
9
+
10
+ This program is free software: you can redistribute it and/or modify
11
+ it under the terms of the GNU Affero General Public License as published by
12
+ the Free Software Foundation, either version 3 of the License, or
13
+ any later version.
14
+
15
+ This program is distributed in the hope that it will be useful,
16
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
17
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
+ GNU Affero General Public License for more details.
19
+
20
+ You should have received a copy of the GNU Affero General Public License
21
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
22
+
23
+ **\
24
+
25
+ \** Charset for the FreeMonoTengwar font **\
26
+
27
+ \version 0.1.0
28
+
29
+ \beg changelog
30
+ \entry "0.0.5" "Added VALA_W_HOOK."
31
+ \entry "0.0.6" "Updating punctuation"
32
+ \entry "0.0.7" "Fixed missing tinco_ext / sule_ext"
33
+ \entry "0.0.8" "Added NBSP"
34
+ \entry "0.0.9" "Replaced fixed ligatures by their dynamic sequence"
35
+ \entry "0.1.0" "Added ELVISH_PAREN tokien, reworked sarince token names."
36
+ \end
37
+
38
+ \char 20 SPACE
39
+ \char a0 NBSP
40
+
41
+ \** PUSTAR, take them in unicode not in personnal use (deprecation) **\
42
+ \char 2e31 PUNCT_DOT
43
+ \char 3a PUNCT_DDOT
44
+ \char 205D PUNCT_TDOT PUSTA_3
45
+ \char 2058 PUSTA_4
46
+ \char 10FB PUSTA_4_HALFED
47
+ \char 2E2C PUSTA_4_SQUARED
48
+ \char 2E2D PUSTA_5
49
+
50
+ \char e000 TW_11 TINCO
51
+ \char e001 TW_12 PARMA
52
+ \char e002 TW_13 CALMA
53
+ \char e003 TW_14 QUESSE
54
+
55
+ \char e004 TW_21 ANDO
56
+ \char e005 TW_22 UMBAR
57
+ \char e006 TW_23 ANGA
58
+ \char e007 TW_24 UNGWE
59
+
60
+ \char e008 TW_31 SULE THULE
61
+ \char e009 TW_32 FORMEN
62
+ \char e00A TW_33 AHA
63
+ \char e00B TW_34 HWESTA
64
+
65
+ \char e00C TW_41 ANTO
66
+ \char e00D TW_42 AMPA
67
+ \char e00E TW_43 ANCA
68
+ \char e00F TW_44 UNQUE
69
+
70
+ \char e010 TW_51 NUMEN
71
+ \char e011 TW_52 MALTA
72
+ \char e012 TW_53 NOLDO
73
+ \char e013 TW_54 NWALME
74
+
75
+ \char e014 TW_61 ORE
76
+ \char e015 TW_62 VALA
77
+ \char e016 TW_63 ANNA
78
+ \char e017 TW_64 VILYA
79
+
80
+ \char e018 TW_EXT_11 TINCO_EXT SULE_EXT THULE_EXT
81
+ \char e019 TW_EXT_12 PARMA_EXT FORMEN_EXT
82
+ \char e01A TW_EXT_13 CALMA_EXT AHA_EXT
83
+ \char e01B TW_EXT_14 QUESSE_EXT HWESTA_EXT
84
+
85
+ \char e01C TW_EXT_21 ANDO_EXT ANTO_EXT
86
+ \char e01D TW_EXT_22 UMBAR_EXT AMPA_EXT
87
+ \char e01E TW_EXT_23 ANGA_EXT ANCA_EXT
88
+ \char e01F TW_EXT_24 UNGWE_EXT UNQUE_EXT
89
+
90
+ \char e020 TW_71 ROMEN
91
+ \char e021 TW_72 ARDA
92
+ \char e022 TW_73 LAMBE
93
+ \char e023 TW_74 ALDA
94
+
95
+ \char e024 TW_81 SILME
96
+ \** Unfortunately, monotengwar is missing silme nuquerna used for y in beleriand **\
97
+ \char e025 TW_82 SILME_NUQUERNA SILME_NUQUERNA_ALT
98
+ \char e026 TW_83 ESSE
99
+ \char e027 TW_84 ESSE_NUQUERNA
100
+
101
+ \char e028 TW_91 HYARMEN
102
+ \char e029 TW_92 HWESTA_SINDARINWA
103
+ \char e02A TW_93 YANTA
104
+ \char e02B TW_94 URE
105
+
106
+ \char e02C ARA
107
+ \char e02D HALLA
108
+ \char e02E TELCO
109
+ \char e02F ?
110
+
111
+ \char e030 REVERSED_OSSE
112
+ \char e031 BOMBADIL_W
113
+ \char e032 OSSE
114
+ \char e033 ?
115
+
116
+ \char e034 LIGATING_SHORT_CARRIER
117
+ \char e035 ?
118
+ \char e036 ANNA_OPEN
119
+ \char e037 CHRISTOPHER_QU
120
+
121
+ \char e038 ?
122
+ \char e039 BOMBADIL_HW
123
+ \char e03A TW_MH MALTA_W_HOOK
124
+ \char e03B TW_MH_BELERIANDIC VALA_W_HOOK
125
+
126
+ \char e03C TW_HW_LOWDHAM HARP_SHAPED
127
+ \char e03D VAIA WAIA VAIYA
128
+ \char e03E ?
129
+ \char e03F ?
130
+
131
+ \char e040 A_TEHTA
132
+ \char e041 A_TEHTA_INF
133
+ \char e042 I_TEHTA_DOUBLE Y_TEHTA
134
+ \char e043 I_TEHTA_DOUBLE_INF PALATAL_SIGN Y_TEHTA_INF
135
+
136
+ \char e044 I_TEHTA
137
+ \char e045 I_TEHTA_INF NO_VOWEL_DOT UNUTIXE
138
+ \char e046 E_TEHTA
139
+ \char e047 E_TEHTA_INF
140
+
141
+ \char e048 E_TEHTA_DOUBLE
142
+ \char e049 E_TEHTA_DOUBLE_INF GEMINATE_DOUBLE
143
+ \char e04A O_TEHTA
144
+ \char e04B O_TEHTA_INF
145
+
146
+ \char e04C U_TEHTA
147
+ \char e04D U_TEHTA_INF
148
+ \char e04E O_TEHTA_DOUBLE
149
+ \char e04F U_TEHTA_DOUBLE
150
+
151
+ \char e050 NASALIZE_SIGN NASALIZE_SIGN_TILD
152
+ \char e051 GEMINATE_SIGN GEMINATE_SIGN_TILD
153
+ \char e052 WA_TEHTA SEV_TEHTA
154
+ \char e053 TEHTA_BREVE A_TEHTA_CIRCUM_REVERSED
155
+
156
+ \char e054 E_TEHTA_GRAVE
157
+ \char e055 A_TEHTA_CIRCUM
158
+ \char e056 A_TEHTA_REVERSED A_TEHTA_DOUBLE
159
+ \char e057 THINNAS THINF_STROKE
160
+
161
+ \** THE TWO FOLLOWING ONES ARE HIGHLY DISCUSSABLE, MAYBE WE SHOULD ADD A VIRTUAL CHAR FOR THESE **\
162
+ \char e058 SARINCE_ENDING_LONG SARINCE_FLOURISHED
163
+ \char e059 SARINCE COMBINING_SARINCE SHOOK_RIGHT_L SHOOK_LEFT_L
164
+ \char e05A ?
165
+ \char e05B ?
166
+
167
+ \char e065 PUNCT_EXCLAM
168
+ \char e066 PUNCT_INTERR
169
+ \char e067 ELVISH_PAREN PUNCT_PAREN_L PUNCT_PAREN_R PUNCT_PAREN_L_ALT PUNCT_PAREN_R_ALT BOOKMARK_SIGN
170
+ \char e068 PUNCT_TILD
171
+
172
+ \char e069 PUNCT_DTILD RING_MARK_L RING_MARK_R
173
+
174
+ \char e06A DQUOT_OPEN
175
+ \char e06B DQUOT_CLOSE
176
+ \char e06C THORIN_EXCLAMATION
177
+
178
+ \char e070 NUM_0
179
+ \char e071 NUM_1
180
+ \char e072 NUM_2
181
+ \char e073 NUM_3
182
+ \char e074 NUM_4
183
+ \char e075 NUM_5
184
+ \char e076 NUM_6
185
+ \char e077 NUM_7
186
+ \char e078 NUM_8
187
+ \char e079 NUM_9
188
+ \char e07A NUM_10
189
+ \char e07B NUM_11
190
+ \char e07C NUM_12
191
+
192
+ \char e07D CIRC_TEHTA_INF
193
+
194
+ \** Ligatured results are mapped here **\
195
+ \**
196
+ \char 10037 AHA_TINCO
197
+ \char 10038 HWESTA_TINCO
198
+ \char 10039 ANCA_CLOSED SILME_AHA
199
+ **\
200
+
201
+ \char 204A OLD_ENGLISH_AND
202
+
203
+ \char 200d ZWJ
204
+
205
+ \** Ligatured sequences used as one entity in modes **\
206
+ \beg seq AHA_TINCO
207
+ AHA ZWJ TINCO
208
+ \end
209
+
210
+ \beg seq HWESTA_TINCO
211
+ HWESTA ZWJ TINCO
212
+ \end
213
+
214
+ \beg seq ANCA_CLOSED SILME_AHA
215
+ SILME ZWJ AHA
216
+ \end
217
+