glaemscribe 1.1.14 → 1.2.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.
- checksums.yaml +5 -5
- data/bin/glaemscribe +19 -15
- data/glaemresources/charsets/cirth_ds.cst +205 -0
- data/glaemresources/charsets/sarati_eldamar.cst +256 -0
- data/glaemresources/charsets/tengwar_ds_annatar.cst +546 -0
- data/glaemresources/charsets/tengwar_ds_eldamar.cst +535 -0
- data/glaemresources/charsets/tengwar_ds_elfica.cst +551 -0
- data/glaemresources/charsets/tengwar_ds_parmaite.cst +534 -0
- data/glaemresources/charsets/tengwar_ds_sindarin.cst +531 -0
- data/glaemresources/charsets/tengwar_freemono.cst +217 -0
- data/glaemresources/charsets/tengwar_guni_annatar.cst +628 -0
- data/glaemresources/charsets/tengwar_guni_eldamar.cst +618 -0
- data/glaemresources/charsets/tengwar_guni_elfica.cst +620 -0
- data/glaemresources/charsets/tengwar_guni_parmaite.cst +621 -0
- data/glaemresources/charsets/tengwar_guni_sindarin.cst +617 -0
- data/glaemresources/charsets/tengwar_telcontar.cst +218 -0
- data/glaemresources/charsets/unicode_gothic.cst +64 -0
- data/glaemresources/charsets/unicode_runes.cst +121 -0
- data/glaemresources/modes/{adunaic.glaem → adunaic-tengwar-glaemscrafu.glaem} +14 -2
- data/glaemresources/modes/{blackspeech.glaem → blackspeech-tengwar-general_use.glaem} +12 -2
- data/glaemresources/modes/japanese-tengwar.glaem +771 -0
- data/glaemresources/modes/{khuzdul.glaem → khuzdul-cirth-moria.glaem} +4 -1
- data/glaemresources/modes/{futhorc.glaem → old_english-futhorc.glaem} +0 -0
- data/glaemresources/modes/{mercian.glaem → old_english-tengwar-mercian.glaem} +22 -12
- data/glaemresources/modes/{westsaxon.glaem → old_english-tengwar-westsaxon.glaem} +20 -11
- data/glaemresources/modes/{futhark-runicus.glaem → old_norse-futhark-runicus.glaem} +0 -0
- data/glaemresources/modes/{futhark-younger.glaem → old_norse-futhark-younger.glaem} +0 -0
- data/glaemresources/modes/{quenya.glaem → quenya-tengwar-classical.glaem} +32 -50
- data/glaemresources/modes/raw-tengwar.glaem +46 -23
- data/glaemresources/modes/{rlyehian.glaem → rlyehian-tengwar.glaem} +14 -3
- data/glaemresources/modes/{sindarin-daeron.glaem → sindarin-cirth-daeron.glaem} +55 -14
- data/glaemresources/modes/{sindarin-beleriand.glaem → sindarin-tengwar-beleriand.glaem} +154 -28
- data/glaemresources/modes/{sindarin.glaem → sindarin-tengwar-general_use.glaem} +86 -25
- data/glaemresources/modes/{telerin.glaem → telerin-tengwar-glaemscrafu.glaem} +16 -6
- data/glaemresources/modes/{westron.glaem → westron-tengwar-glaemscrafu.glaem} +18 -8
- data/lib/api/charset.rb +67 -7
- data/lib/api/charset_parser.rb +7 -0
- data/lib/api/constants.rb +3 -4
- data/lib/api/fragment.rb +26 -5
- data/lib/api/if_tree.rb +70 -8
- data/lib/api/macro.rb +40 -0
- data/lib/api/mode.rb +35 -13
- data/lib/api/mode_parser.rb +106 -12
- data/lib/api/object_additions.rb +23 -1
- data/lib/api/option.rb +17 -2
- data/lib/api/post_processor/resolve_virtuals.rb +25 -9
- data/lib/api/resource_manager.rb +1 -0
- data/lib/api/rule_group.rb +170 -26
- data/lib/api/sheaf_chain_iterator.rb +1 -1
- data/lib/api/transcription_processor.rb +3 -3
- data/lib/api/tts.rb +51 -0
- data/lib/glaemscribe.rb +34 -31
- data/lib_espeak/espeakng.for.glaemscribe.nowasm.sync.js +21 -0
- data/lib_espeak/glaemscribe_tts.js +365 -0
- metadata +67 -21
@@ -35,12 +35,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
35
35
|
\entry "0.0.2" "Ported to virtual chars"
|
36
36
|
\entry "0.0.3" "Ported to various charsets"
|
37
37
|
\entry "0.1.1" "Added support for inlined raw tengwar"
|
38
|
+
\entry "0.1.2" "Added support for new unicode charsets"
|
39
|
+
\entry "0.1.3" "Added support for the Tengwar Telcontar font"
|
38
40
|
\end
|
39
41
|
|
40
42
|
\language "R'lyehian"
|
41
43
|
\writing "Tengwar"
|
42
44
|
\mode "R'lyehian Tengwar - G*"
|
43
|
-
\version "0.1.
|
45
|
+
\version "0.1.3"
|
44
46
|
\authors "H.P.Lovecraft & The Great Ancient Gods, impl. Fthalagn"
|
45
47
|
|
46
48
|
\world other_world
|
@@ -53,7 +55,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
53
55
|
\charset tengwar_ds_eldamar false
|
54
56
|
\charset tengwar_ds_annatar false
|
55
57
|
\charset tengwar_ds_elfica false
|
58
|
+
|
59
|
+
\charset tengwar_guni_sindarin false
|
60
|
+
\charset tengwar_guni_parmaite false
|
61
|
+
\charset tengwar_guni_eldamar false
|
62
|
+
\charset tengwar_guni_annatar false
|
63
|
+
\charset tengwar_guni_elfica false
|
64
|
+
|
56
65
|
\charset tengwar_freemono false
|
66
|
+
\charset tengwar_telcontar false
|
67
|
+
|
57
68
|
|
58
69
|
\beg options
|
59
70
|
\end
|
@@ -178,7 +189,7 @@ y palatal semi vowel ?
|
|
178
189
|
{O_LOOP} === O_TEHTA
|
179
190
|
{U_LOOP} === U_TEHTA
|
180
191
|
|
181
|
-
{TEHTAR} === A_TEHTA * E_TEHTA * I_TEHTA * O_TEHTA * U_TEHTA *
|
192
|
+
{TEHTAR} === A_TEHTA * E_TEHTA * I_TEHTA * O_TEHTA * U_TEHTA * WA_TEHTA
|
182
193
|
|
183
194
|
[{VOWELS}] --> TELCO [{TEHTAR}] \** Replace isolated short vowels **\
|
184
195
|
|
@@ -268,7 +279,7 @@ y palatal semi vowel ?
|
|
268
279
|
> --> PUNCT_PAREN_R
|
269
280
|
|
270
281
|
\** Not universal between fonts ... **\
|
271
|
-
$ -->
|
282
|
+
$ --> ELVISH_PAREN
|
272
283
|
≤ --> RING_MARK_L \** Ring inscription left beautiful stuff **\
|
273
284
|
≥ --> RING_MARK_R \** Ring inscription right beautiful stuff **\
|
274
285
|
\end
|
@@ -28,12 +28,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
28
28
|
\entry 0.0.2 "Added thorn as equivalent for th"
|
29
29
|
\entry 0.0.3 "Moved out space to general element"
|
30
30
|
\entry 0.0.4 "Fixed wrong ch, hw, h"
|
31
|
+
\entry 0.0.5 "Added disambiguations from the tengwar modes. Reworked median point behaviour, and ng."
|
31
32
|
\end
|
32
33
|
|
33
34
|
\language "Sindarin"
|
34
35
|
\writing "Cirth"
|
35
36
|
\mode "Sindarin Cirth - Angerthas Daeron"
|
36
|
-
\version "0.0.
|
37
|
+
\version "0.0.5"
|
37
38
|
\authors "J.R.R. Tolkien, impl. Talagan (Benjamin Babut)"
|
38
39
|
|
39
40
|
\world arda
|
@@ -44,10 +45,29 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
44
45
|
\** We redefine the output space to have something beautiful, especially with erebor1 and erebor2 **\
|
45
46
|
\outspace CIRTH_SPACE_BIG
|
46
47
|
|
48
|
+
\beg options
|
49
|
+
\beg option hyphen HYPHEN_WORD_BREAKER
|
50
|
+
\value HYPHEN_WORD_BREAKER 0
|
51
|
+
\value HYPHEN_WORD_JOINER 1
|
52
|
+
\end
|
53
|
+
\end
|
54
|
+
|
55
|
+
|
47
56
|
\beg preprocessor
|
48
57
|
\** Work exclusively downcase **\
|
49
58
|
\downcase
|
50
59
|
|
60
|
+
\if "hyphen == HYPHEN_WORD_JOINER"
|
61
|
+
\** Replace hyphen by median point **\
|
62
|
+
\substitute "-" "·"
|
63
|
+
\else
|
64
|
+
\** Replace hyphen by glaemscribe's word breaker **\
|
65
|
+
\substitute "-" "|"
|
66
|
+
\endif
|
67
|
+
|
68
|
+
\** Add keyboard friendly word joiner **\
|
69
|
+
\substitute "*" "·"
|
70
|
+
|
51
71
|
\** Simplify trema vowels **\
|
52
72
|
\substitute ä a
|
53
73
|
\substitute ë e
|
@@ -63,6 +83,25 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
63
83
|
\rxsubstitute "(ō|ô|oo)" "ó"
|
64
84
|
\rxsubstitute "(ū|û|uu)" "ú"
|
65
85
|
\rxsubstitute "(ȳ|ŷ|yy)" "ý"
|
86
|
+
|
87
|
+
\** Special case of starting 'i' before vowels, replace i by j **\
|
88
|
+
\rxsubstitute "\\bi([aeouyáāâéēêíīîóōôúūûýȳŷ])" "j\\1"
|
89
|
+
|
90
|
+
\** Special case of diphtong aw. Before vowels, do not treat 'aw' as diphthong,
|
91
|
+
since it seems more logical that aw would behave as a semi vowel **\
|
92
|
+
\rxsubstitute "aw([aeouyáāâéēêíīîóōôúūûýȳŷ])" "a|w\\1"
|
93
|
+
|
94
|
+
\** Special case for ng : before the vast majority of consonnants, treat as ŋ **\
|
95
|
+
\** Don't include r / l / lh / w **\
|
96
|
+
\rxsubstitute "ng([tpckbdfðvnmhs])" "ŋ\\1"
|
97
|
+
|
98
|
+
\** Avoid mutated ng of being treated as strong middle word n|g (ex : i·ngelaidh [iŋɛlaið] ) **\
|
99
|
+
\substitute "·ng" "·ŋ"
|
100
|
+
\** But avoid losing the strong g in nasal mutation of g (ex : in·Gelydh [iŋgɛlyð]] ) **\
|
101
|
+
\substitute "n·g" "·ŋg"
|
102
|
+
\** Use median dot as word joiner **\
|
103
|
+
\substitute "·" ""
|
104
|
+
|
66
105
|
\end
|
67
106
|
|
68
107
|
\beg processor
|
@@ -115,16 +154,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
115
154
|
(k,c) --> CIRTH_18
|
116
155
|
(kh,ch) --> CIRTH_20
|
117
156
|
|
118
|
-
ghw --> CIRTH_26
|
119
|
-
gw --> CIRTH_24
|
120
157
|
|
121
158
|
h --> CIRTH_54 \** 13 is more eng. ch like in chin and 15 is more eng. sh like in shoe **\
|
122
|
-
hw --> CIRTH_5
|
123
159
|
|
124
160
|
j --> CIRTH_14
|
125
161
|
|
126
|
-
khw --> CIRTH_25
|
127
|
-
kw --> CIRTH_23
|
128
162
|
l --> CIRTH_31
|
129
163
|
lh --> CIRTH_32
|
130
164
|
m --> CIRTH_6
|
@@ -133,14 +167,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
133
167
|
n --> CIRTH_12
|
134
168
|
nc_ --> CIRTH_22 CIRTH_18 \** equals ŋc **\
|
135
169
|
nd --> CIRTH_38
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
ng_ --> CIRTH_22
|
140
|
-
ŋ --> CIRTH_22
|
170
|
+
|
171
|
+
\** Normalisation of ng **\
|
172
|
+
(ng,ngg,ŋg,ñg) --> CIRTH_33 \** strong **\
|
173
|
+
(ng_,_ng,ŋ,ñ) --> CIRTH_22 \** weak **\
|
141
174
|
|
142
|
-
nw --> CIRTH_28
|
143
|
-
ngw --> CIRTH_27
|
144
175
|
nj --> CIRTH_17
|
145
176
|
r --> CIRTH_29
|
146
177
|
rh --> CIRTH_30
|
@@ -148,8 +179,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
148
179
|
sh --> CIRTH_15
|
149
180
|
ss --> CIRTH_36
|
150
181
|
(þ,th) --> CIRTH_10
|
151
|
-
w --> CIRTH_44
|
152
182
|
zh --> CIRTH_16
|
183
|
+
|
184
|
+
\** Labials **\
|
185
|
+
hw --> CIRTH_5
|
186
|
+
ghw --> CIRTH_26
|
187
|
+
gw --> CIRTH_24
|
188
|
+
(ng,ngg,ŋg,ñg)w --> CIRTH_27 \** STRONG NG + W **\
|
189
|
+
khw --> CIRTH_25
|
190
|
+
kw --> CIRTH_23
|
191
|
+
nw --> CIRTH_28
|
192
|
+
w --> CIRTH_44
|
193
|
+
|
153
194
|
\end
|
154
195
|
|
155
196
|
\beg rules punctuation
|
@@ -33,12 +33,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
33
33
|
\entry "0.1.1" "Added support for inlined raw tengwar"
|
34
34
|
\entry "0.1.2" "Fine tuning handling of the aw diphthong (Thanks to Dmitry Kourmyshov!)"
|
35
35
|
\entry "0.1.3" "Merging au/aw"
|
36
|
+
\entry "0.1.4" "Added support for new unicode charsets"
|
37
|
+
\entry "0.1.5" "Added support for the Tengwar Telcontar font"
|
38
|
+
\entry "0.1.6" "Corrected use of silme_nuquerna in ns / y, added a few exotic combinations. Reworked median point behaviour, and ng."
|
39
|
+
\entry "0.1.7" "Added variants with dot for short vowels, added gasdil."
|
36
40
|
\end
|
37
41
|
|
38
42
|
\language "Sindarin"
|
39
43
|
\writing "Tengwar"
|
40
44
|
\mode "Sindarin Tengwar - Beleriand"
|
41
|
-
\version "0.1.
|
45
|
+
\version "0.1.6"
|
42
46
|
\authors "J.R.R. Tolkien, impl. Talagan (Benjamin Babut)"
|
43
47
|
|
44
48
|
\world arda
|
@@ -51,10 +55,64 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
51
55
|
\charset tengwar_ds_eldamar false
|
52
56
|
\charset tengwar_ds_annatar false
|
53
57
|
\charset tengwar_ds_elfica false
|
58
|
+
|
59
|
+
\charset tengwar_guni_sindarin false
|
60
|
+
\charset tengwar_guni_parmaite false
|
61
|
+
\charset tengwar_guni_eldamar false
|
62
|
+
\charset tengwar_guni_annatar false
|
63
|
+
\charset tengwar_guni_elfica false
|
64
|
+
|
54
65
|
\charset tengwar_freemono false
|
66
|
+
\charset tengwar_telcontar false
|
55
67
|
|
56
68
|
\beg options
|
57
69
|
|
70
|
+
\beg option short_a SHORT_A_WITHOUT_DOT
|
71
|
+
\radio
|
72
|
+
\value SHORT_A_WITHOUT_DOT 0
|
73
|
+
\value SHORT_A_WITH_DOT 1
|
74
|
+
\end
|
75
|
+
|
76
|
+
\beg option short_e SHORT_E_WITHOUT_DOT
|
77
|
+
\radio
|
78
|
+
\value SHORT_E_WITHOUT_DOT 0
|
79
|
+
\value SHORT_E_WITH_DOT 1
|
80
|
+
\end
|
81
|
+
|
82
|
+
\beg option short_i SHORT_I_WITHOUT_DOT
|
83
|
+
\radio
|
84
|
+
\value SHORT_I_WITHOUT_DOT 0
|
85
|
+
\value SHORT_I_WITH_DOT 1
|
86
|
+
\end
|
87
|
+
|
88
|
+
\beg option short_o SHORT_O_WITHOUT_DOT
|
89
|
+
\radio
|
90
|
+
\value SHORT_O_WITHOUT_DOT 0
|
91
|
+
\value SHORT_O_WITH_DOT 1
|
92
|
+
\end
|
93
|
+
|
94
|
+
\beg option short_u SHORT_U_WITHOUT_DOT
|
95
|
+
\radio
|
96
|
+
\value SHORT_U_WITHOUT_DOT 0
|
97
|
+
\value SHORT_U_WITH_DOT 1
|
98
|
+
\end
|
99
|
+
|
100
|
+
\beg option short_y SHORT_Y_WITHOUT_DOT
|
101
|
+
\radio
|
102
|
+
\value SHORT_Y_WITHOUT_DOT 0
|
103
|
+
\value SHORT_Y_WITH_DOT 1
|
104
|
+
\end
|
105
|
+
|
106
|
+
\beg option apostrophe APOSTROPHE_IGNORED
|
107
|
+
\value APOSTROPHE_IGNORED 0
|
108
|
+
\value APOSTROPHE_GASDIL 1
|
109
|
+
\end
|
110
|
+
|
111
|
+
\beg option hyphen HYPHEN_WORD_BREAKER
|
112
|
+
\value HYPHEN_WORD_BREAKER 0
|
113
|
+
\value HYPHEN_WORD_JOINER 1
|
114
|
+
\end
|
115
|
+
|
58
116
|
\beg option beleriand_aw_diphthong AW_VILYA_AT_ENDINGS_CURL_ELSE
|
59
117
|
\value AW_VILYA_AT_ENDINGS_CURL_ELSE 0
|
60
118
|
\value AW_ALWAYS_VILYA 1
|
@@ -79,6 +137,17 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
79
137
|
\** Work exclusively downcase **\
|
80
138
|
\downcase
|
81
139
|
|
140
|
+
\if "hyphen == HYPHEN_WORD_JOINER"
|
141
|
+
\** Replace hyphen by median point **\
|
142
|
+
\substitute "-" "·"
|
143
|
+
\else
|
144
|
+
\** Replace hyphen by glaemscribe's word breaker **\
|
145
|
+
\substitute "-" "|"
|
146
|
+
\endif
|
147
|
+
|
148
|
+
\** Add keyboard friendly word joiner **\
|
149
|
+
\substitute "*" "·"
|
150
|
+
|
82
151
|
\** Simplify trema vowels **\
|
83
152
|
\substitute ä a
|
84
153
|
\substitute ë e
|
@@ -105,6 +174,17 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
105
174
|
since it seems more logical that aw would behave as a semi vowel **\
|
106
175
|
\rxsubstitute "aw([aeouyáāâéēêíīîóōôúūûýȳŷ])" "a|w\\1"
|
107
176
|
|
177
|
+
\** Special case for ng : before the vast majority of consonnants, treat as ŋ **\
|
178
|
+
\** Don't include r / l / lh / w **\
|
179
|
+
\rxsubstitute "ng([tpckbdfðvnmhs])" "ŋ\\1"
|
180
|
+
|
181
|
+
\** Avoid mutated ng of being treated as strong middle word n|g (ex : i·ngelaidh [iŋɛlaið] ) **\
|
182
|
+
\substitute "·ng" "·ŋ"
|
183
|
+
\** But avoid losing the strong g in nasal mutation of g (ex : in·Gelydh [iŋgɛlyð]] ) **\
|
184
|
+
\substitute "n·g" "·ŋg"
|
185
|
+
\** Use median dot as word joiner **\
|
186
|
+
\substitute "·" ""
|
187
|
+
|
108
188
|
\** Preprocess numbers **\
|
109
189
|
\elvish_numbers "\\eval numbers_base" "\\eval reverse_numbers"
|
110
190
|
\end
|
@@ -143,34 +223,62 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
143
223
|
{OE} === {O}{E}
|
144
224
|
|
145
225
|
{K} === (c,k)
|
146
|
-
|
147
|
-
\** RULES **\
|
148
|
-
{A} --> OSSE
|
149
|
-
{E} --> YANTA
|
150
|
-
{I} --> TELCO
|
151
|
-
{O} --> ANNA
|
152
|
-
{U} --> URE
|
153
226
|
|
154
|
-
|
227
|
+
\if "short_a == SHORT_A_WITH_DOT"
|
228
|
+
{A} --> OSSE I_TEHTA
|
229
|
+
\else
|
230
|
+
{A} --> OSSE
|
231
|
+
\endif
|
232
|
+
|
233
|
+
\if "short_e == SHORT_E_WITH_DOT"
|
234
|
+
{E} --> YANTA I_TEHTA
|
235
|
+
\else
|
236
|
+
{E} --> YANTA
|
237
|
+
\endif
|
238
|
+
|
239
|
+
\if "short_i == SHORT_I_WITH_DOT"
|
240
|
+
{I} --> TELCO I_TEHTA
|
241
|
+
\else
|
242
|
+
{I} --> TELCO
|
243
|
+
\endif
|
244
|
+
|
245
|
+
\if "short_o == SHORT_O_WITH_DOT"
|
246
|
+
{O} --> ANNA I_TEHTA
|
247
|
+
\else
|
248
|
+
{O} --> ANNA
|
249
|
+
\endif
|
250
|
+
|
251
|
+
\if "short_u == SHORT_U_WITH_DOT"
|
252
|
+
{U} --> URE I_TEHTA
|
253
|
+
\else
|
254
|
+
{U} --> URE
|
255
|
+
\endif
|
256
|
+
|
257
|
+
\if "short_y == SHORT_Y_WITH_DOT"
|
258
|
+
{Y} --> SILME_NUQUERNA I_TEHTA
|
259
|
+
\else
|
260
|
+
{Y} --> SILME_NUQUERNA
|
261
|
+
\endif
|
155
262
|
|
156
263
|
{AA} --> OSSE E_TEHTA
|
157
264
|
{EE} --> YANTA E_TEHTA
|
158
265
|
{II} --> TELCO E_TEHTA
|
159
266
|
{OO} --> ANNA E_TEHTA
|
160
267
|
{UU} --> URE E_TEHTA
|
161
|
-
{YY} -->
|
268
|
+
{YY} --> SILME_NUQUERNA E_TEHTA
|
162
269
|
|
163
|
-
|
270
|
+
\** Should chose between OSSE YANTA and OSSE THSUP_TICK_INV. Old tengscribe had second one, amanye tenceli has first one. **\
|
271
|
+
{AE} --> OSSE YANTA
|
164
272
|
{AI} --> OSSE Y_TEHTA
|
165
|
-
{AU} --> OSSE
|
273
|
+
{AU} --> OSSE WA_TEHTA
|
166
274
|
|
167
275
|
\if "beleriand_aw_diphthong == AW_VILYA_AT_ENDINGS_CURL_ELSE"
|
168
|
-
({AU},{AW}) --> OSSE
|
276
|
+
({AU},{AW}) --> OSSE WA_TEHTA
|
169
277
|
({AU},{AW})_ --> OSSE VILYA
|
170
278
|
\elsif "beleriand_aw_diphthong == AW_ALWAYS_VILYA"
|
171
279
|
({AU},{AW}) --> OSSE VILYA
|
172
280
|
\elsif "beleriand_aw_diphthong == AW_ALWAYS_CURL"
|
173
|
-
({AU},{AW}) --> OSSE
|
281
|
+
({AU},{AW}) --> OSSE WA_TEHTA
|
174
282
|
\endif
|
175
283
|
|
176
284
|
{EI} --> YANTA Y_TEHTA
|
@@ -197,9 +305,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
197
305
|
|
198
306
|
[{L2}] --> [{_L2_}]
|
199
307
|
|
200
|
-
mb
|
201
|
-
nd
|
202
|
-
|
308
|
+
mb --> UMBAR {NASAL}
|
309
|
+
nd --> ANDO {NASAL}
|
310
|
+
|
311
|
+
\** /ŋg/ : this is ng in middle of words + might be found at word start on mutation.
|
312
|
+
\** See also final/initial ng_ / _ng below **\
|
313
|
+
(ng,ngg,ŋg,ñg) --> ANGA {NASAL}
|
314
|
+
|
203
315
|
\** ======== **\
|
204
316
|
\** 3RD LINE **\
|
205
317
|
\** ======== **\
|
@@ -224,7 +336,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
224
336
|
\** ======== **\
|
225
337
|
\** 5TH LINE **\
|
226
338
|
\** ======== **\
|
227
|
-
{L5} === nn * mm *
|
339
|
+
{L5} === nn * mm * (ng_,_ng,ŋ,ñ)
|
228
340
|
{_L5_} === NUMEN * MALTA * NOLDO
|
229
341
|
|
230
342
|
[{L5}] --> [{_L5_}]
|
@@ -253,7 +365,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
253
365
|
|
254
366
|
[{S_LINE}] --> [{_S_LINE_}]
|
255
367
|
|
256
|
-
|
368
|
+
\** REMOVING NEXT ONE WHICH CLASHES WITH Y **\
|
369
|
+
\** ns --> SILME_NUQUERNA {NASAL} **\
|
257
370
|
|
258
371
|
\** ======== **\
|
259
372
|
\** OTHERS **\
|
@@ -266,12 +379,26 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
266
379
|
hw --> HWESTA_SINDARINWA
|
267
380
|
|
268
381
|
\** labialized consonants **\
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
382
|
+
bw --> UMBAR WA_TEHTA \** Gnomish **\
|
383
|
+
dw --> ANDO WA_TEHTA
|
384
|
+
gw --> ANGA WA_TEHTA
|
385
|
+
lw --> LAMBE WA_TEHTA
|
386
|
+
nw --> ORE WA_TEHTA
|
387
|
+
rw --> ROMEN WA_TEHTA
|
388
|
+
(ng,ngg,ŋg,ñg)w --> ANGA {NASAL} WA_TEHTA
|
389
|
+
(_ng,ng_,ŋ,ñ)w --> NOLDO WA_TEHTA
|
390
|
+
|
391
|
+
\if "apostrophe == APOSTROPHE_IGNORED"
|
392
|
+
' --> {NULL}
|
393
|
+
’ --> {NULL}
|
394
|
+
\else
|
395
|
+
\** use gasdil **\
|
396
|
+
' --> HALLA
|
397
|
+
’ --> HALLA
|
398
|
+
\endif
|
399
|
+
|
400
|
+
\** Forced gasdil **\
|
401
|
+
° --> HALLA
|
275
402
|
\end
|
276
403
|
|
277
404
|
\beg rules punctuation
|
@@ -297,8 +424,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
297
424
|
|
298
425
|
\** Apostrophe **\
|
299
426
|
|
300
|
-
|
301
|
-
’ --> {NULL}
|
427
|
+
|
302
428
|
|
303
429
|
\** NBSP **\
|
304
430
|
{NBSP} --> NBSP
|
@@ -320,7 +446,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
320
446
|
> --> PUNCT_PAREN_R
|
321
447
|
|
322
448
|
\** Not universal between fonts ... **\
|
323
|
-
$ -->
|
449
|
+
$ --> ELVISH_PAREN
|
324
450
|
≤ --> RING_MARK_L \** Ring inscription left beautiful stuff **\
|
325
451
|
≥ --> RING_MARK_R \** Ring inscription right beautiful stuff **\
|
326
452
|
\end
|