glaemscribe 1.0.19 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/glaemresources/charsets/tengwar_ds_annatar.cst +509 -0
  3. data/glaemresources/charsets/tengwar_ds_eldamar.cst +22 -16
  4. data/glaemresources/charsets/tengwar_ds_elfica.cst +461 -0
  5. data/glaemresources/charsets/tengwar_ds_parmaite.cst +500 -0
  6. data/glaemresources/charsets/{tengwar_ds.cst → tengwar_ds_sindarin.cst} +59 -62
  7. data/glaemresources/charsets/tengwar_freemono.cst +176 -0
  8. data/glaemresources/charsets/unicode_runes.cst +1 -0
  9. data/glaemresources/modes/adunaic.glaem +50 -28
  10. data/glaemresources/modes/blackspeech.glaem +156 -82
  11. data/glaemresources/modes/english-ipa.glaem +49 -0
  12. data/glaemresources/modes/french-ipa.glaem +49 -0
  13. data/glaemresources/modes/{oldnorse-medieval.glaem → futhark-runicus.glaem} +4 -4
  14. data/glaemresources/modes/futhark-younger.glaem +129 -0
  15. data/glaemresources/modes/{futhorc.glaem.disabled → futhorc.glaem} +76 -38
  16. data/glaemresources/modes/gothic.glaem +1 -1
  17. data/glaemresources/modes/khuzdul.glaem +1 -1
  18. data/glaemresources/modes/mercian.glaem +31 -16
  19. data/glaemresources/modes/quenya-sarati.glaem +5 -3
  20. data/glaemresources/modes/quenya.glaem +168 -77
  21. data/glaemresources/modes/rlyehian.glaem +41 -43
  22. data/glaemresources/modes/sindarin-beleriand.glaem +39 -17
  23. data/glaemresources/modes/sindarin-daeron.glaem +1 -1
  24. data/glaemresources/modes/{sindarin-classical.glaem → sindarin.glaem} +73 -37
  25. data/glaemresources/modes/telerin.glaem +161 -64
  26. data/glaemresources/modes/valarin-sarati.glaem +1 -1
  27. data/glaemresources/modes/westron.glaem +83 -44
  28. data/glaemresources/modes/westsaxon.glaem +30 -13
  29. data/lib/api/charset.rb +29 -11
  30. data/lib/api/charset_parser.rb +15 -3
  31. data/lib/api/mode.rb +15 -3
  32. data/lib/api/mode_parser.rb +7 -2
  33. data/lib/api/option.rb +15 -1
  34. data/lib/api/post_processor/resolve_virtuals.rb +35 -24
  35. data/lib/api/transcription_pre_post_processor.rb +2 -1
  36. metadata +15 -11
  37. data/glaemresources/modes/blackspeech-annatar.glaem +0 -320
  38. data/glaemresources/modes/futhark-long-branch.glaem.disabled +0 -101
  39. data/glaemresources/modes/futhark-short-twig.glaem.disabled +0 -101
@@ -131,18 +131,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
131
131
  \** © **\ \char a9 TH_SUB_CIRC_XS
132
132
  \** ª **\ \char aa A_TEHTA_INV_XL
133
133
  \** « **\ \char ab DQUOT_OPEN
134
- \** ¬ **\ \char ac WAVE_MED_DOUBLE
134
+ \** ¬ **\ \char ac PUNCT_DTILD RING_MARK_L RING_MARK_R
135
135
  \** ­ **\ \char ad A_TEHTA_INV_L
136
136
  \** ® **\ \char ae ?
137
137
  \** ¯ **\ \char af A_TEHTA_INV_S
138
- \** ° **\ \char b0 WAVE_MED_SIMPLE
138
+ \** ° **\ \char b0 LAMBE_MARK_TILD
139
139
  \** ± **\ \char b1 SQUOT_OPEN
140
140
  \** ² **\ \char b2 SQUOT_CLOSE
141
141
  \** ³ **\ \char b3 ?
142
142
  \** ´ **\ \char b4 LAMBE_MARK_DDOT
143
143
  \** µ **\ \char b5 A_TEHTA_INV_XS
144
144
  \** · **\ \char b7 ?
145
- \** ¸ **\ \char b8 LAMBE_MARK_TILD
145
+ \** ¸ **\ \char b8 LAMBE_MARK_DASH
146
146
  \** ¹ **\ \char b9 ?
147
147
  \** º **\ \char ba ?
148
148
  \** » **\ \char bb DQUOT_CLOSE
@@ -190,10 +190,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
190
190
  \** å **\ \char e5 THINF_CURL_L
191
191
  \** æ **\ \char e6 THINF_CURL_S
192
192
  \** ç **\ \char e7 THINF_CURL_XS
193
- \** è **\ \char e8 THSUP_SEV_XL
194
- \** é **\ \char e9 THSUP_SEV_L
195
- \** ê **\ \char ea THSUP_SEV_S
196
- \** ë **\ \char eb THSUP_SEV_XS
193
+ \** è **\ \char e8 SEV_TEHTA_XL
194
+ \** é **\ \char e9 SEV_TEHTA_L
195
+ \** ê **\ \char ea SEV_TEHTA_S
196
+ \** ë **\ \char eb SEV_TEHTA_XS
197
197
  \** ì **\ \char ec ?
198
198
  \** í **\ \char ed ?
199
199
  \** î **\ \char ee ?
@@ -285,9 +285,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
285
285
  \** べ **\ \char 3079 ?
286
286
  \** ぺ **\ \char 307a ?
287
287
  \** ア **\ \char 30a2 ?
288
- \** カ **\ \char 30ab RING_MARK_R
288
+ \** カ **\ \char 30ab ?
289
289
  \** ギ **\ \char 30ae ?
290
- \** セ **\ \char 30bb RING_MARK_L
290
+ \** セ **\ \char 30bb ?
291
291
  \** タ **\ \char 30bf ?
292
292
  \** ツ **\ \char 30c4 ?
293
293
  \** テ **\ \char 30c6 ?
@@ -322,35 +322,62 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
322
322
  \** The following virtual chars are used to handle tehtar (& the like) multiple version chosing **\
323
323
  \** It could be avoided with modern fonts with gsub/gpos tables for ligatures and diacritics **\
324
324
  \** placement **\
325
-
326
325
  \beg virtual A_TEHTA
327
- \class A_TEHTA_XS TELCO ARA HYARMEN HARP_SHAPED
328
- \class A_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
326
+ \class A_TEHTA_XS TELCO ARA HYARMEN
327
+ \class A_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 HARP_SHAPED AHA_TINCO HWESTA_TINCO
329
328
  \class A_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
330
329
  \class A_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
331
330
  \end
332
331
 
333
- \beg virtual A_TEHTA_DOUBLE
334
- \class A_TEHTA_DOUBLE_XS TELCO ARA HYARMEN HARP_SHAPED
335
- \class A_TEHTA_DOUBLE_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
336
- \class A_TEHTA_DOUBLE_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
337
- \class A_TEHTA_DOUBLE_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
338
- \end
339
-
340
332
  \beg virtual A_TEHTA_CIRCUM
341
- \class A_TEHTA_CIRCUM_XS TELCO ARA HYARMEN HARP_SHAPED
342
- \class A_TEHTA_CIRCUM_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
333
+ \class A_TEHTA_CIRCUM_XS TELCO ARA HYARMEN
334
+ \class A_TEHTA_CIRCUM_S SULE FORMEN TW_EXT_11 TW_EXT_12 HARP_SHAPED AHA_TINCO HWESTA_TINCO
343
335
  \class A_TEHTA_CIRCUM_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
344
336
  \class A_TEHTA_CIRCUM_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
345
337
  \end
346
338
 
347
339
  \beg virtual E_TEHTA
348
- \class E_TEHTA_XS TELCO ARA HYARMEN HARP_SHAPED
349
- \class E_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
340
+ \class E_TEHTA_XS TELCO ARA HYARMEN
341
+ \class E_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 HARP_SHAPED AHA_TINCO HWESTA_TINCO
350
342
  \class E_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
351
343
  \class E_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
352
344
  \end
353
345
 
346
+ \beg virtual I_TEHTA
347
+ \class I_TEHTA_XS TELCO ARA HYARMEN
348
+ \class I_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 HARP_SHAPED AHA_TINCO HWESTA_TINCO
349
+ \class I_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
350
+ \class I_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
351
+ \end
352
+
353
+ \beg virtual O_TEHTA
354
+ \class O_TEHTA_XS TELCO ARA HYARMEN
355
+ \class O_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 HARP_SHAPED AHA_TINCO HWESTA_TINCO
356
+ \class O_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
357
+ \class O_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
358
+ \end
359
+
360
+ \beg virtual U_TEHTA
361
+ \class U_TEHTA_XS TELCO ARA HYARMEN
362
+ \class U_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 HARP_SHAPED AHA_TINCO HWESTA_TINCO
363
+ \class U_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
364
+ \class U_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
365
+ \end
366
+
367
+ \beg virtual SEV_TEHTA
368
+ \class SEV_TEHTA_XS TELCO ARA HYARMEN
369
+ \class SEV_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 HARP_SHAPED AHA_TINCO HWESTA_TINCO
370
+ \class SEV_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
371
+ \class SEV_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
372
+ \end
373
+
374
+ \beg virtual A_TEHTA_DOUBLE
375
+ \class A_TEHTA_DOUBLE_XS TELCO ARA HYARMEN HARP_SHAPED
376
+ \class A_TEHTA_DOUBLE_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
377
+ \class A_TEHTA_DOUBLE_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
378
+ \class A_TEHTA_DOUBLE_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
379
+ \end
380
+
354
381
  \beg virtual E_TEHTA_DOUBLE
355
382
  \class E_TEHTA_DOUBLE_XS TELCO ARA HYARMEN HARP_SHAPED
356
383
  \class E_TEHTA_DOUBLE_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
@@ -358,27 +385,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
358
385
  \class E_TEHTA_DOUBLE_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
359
386
  \end
360
387
 
361
- \beg virtual I_TEHTA
362
- \class I_TEHTA_XS TELCO ARA HYARMEN HARP_SHAPED
363
- \class I_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
364
- \class I_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
365
- \class I_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
366
- \end
367
-
368
- \beg virtual I_TEHTA_DOUBLE
388
+ \beg virtual I_TEHTA_DOUBLE Y_TEHTA
369
389
  \class I_TEHTA_DOUBLE_XS TELCO ARA HYARMEN HARP_SHAPED
370
390
  \class I_TEHTA_DOUBLE_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
371
391
  \class I_TEHTA_DOUBLE_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
372
392
  \class I_TEHTA_DOUBLE_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
373
393
  \end
374
394
 
375
- \beg virtual O_TEHTA
376
- \class O_TEHTA_XS TELCO ARA HYARMEN HARP_SHAPED
377
- \class O_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
378
- \class O_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
379
- \class O_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
380
- \end
381
-
382
395
  \beg virtual O_TEHTA_DOUBLE
383
396
  \class O_TEHTA_DOUBLE_XS TELCO ARA HYARMEN HARP_SHAPED
384
397
  \class O_TEHTA_DOUBLE_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
@@ -386,13 +399,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
386
399
  \class O_TEHTA_DOUBLE_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
387
400
  \end
388
401
 
389
- \beg virtual U_TEHTA
390
- \class U_TEHTA_XS TELCO ARA HYARMEN HARP_SHAPED
391
- \class U_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
392
- \class U_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
393
- \class U_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
394
- \end
395
-
396
402
  \beg virtual U_TEHTA_DOUBLE
397
403
  \class U_TEHTA_DOUBLE_XS TELCO ARA HYARMEN HARP_SHAPED
398
404
  \class U_TEHTA_DOUBLE_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
@@ -400,20 +406,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
400
406
  \class U_TEHTA_DOUBLE_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
401
407
  \end
402
408
 
403
- \beg virtual Y_TEHTA
404
- \class Y_TEHTA_XS TELCO ARA HYARMEN HARP_SHAPED
405
- \class Y_TEHTA_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
406
- \class Y_TEHTA_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
407
- \class Y_TEHTA_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
408
- \end
409
-
410
- \beg virtual SEV_TEHTA
411
- \class THSUP_SEV_XS TELCO ARA HYARMEN HARP_SHAPED
412
- \class THSUP_SEV_S SULE FORMEN TW_EXT_11 TW_EXT_12 AHA_TINCO HWESTA_TINCO
413
- \class THSUP_SEV_L TINCO PARMA CALMA QUESSE AHA HWESTA ORE VALA ANNA VILYA TW_EXT_13 TW_EXT_14 ROMEN ARDA LAMBE ALDA SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE_NUQUERNA YANTA URE OSSE SHOOK_BEAUTIFUL
414
- \class THSUP_SEV_XL ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 SILME ESSE HWESTA_SINDARINWA ANCA_CLOSED
415
- \end
416
-
417
409
  \beg virtual A_TEHTA_INF
418
410
  \class THINF_TDOT_XS TELCO ARA ROMEN ARDA SILME_NUQUERNA HARP_SHAPED
419
411
  \class THINF_TDOT_S TINCO PARMA TW_EXT_11 TW_EXT_12 SHOOK_BEAUTIFUL AHA_TINCO HWESTA_TINCO
@@ -435,7 +427,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
435
427
  \class TH_SUB_CIRC_XL CALMA QUESSE ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_13 TW_EXT_14 TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 ANCA_CLOSED
436
428
  \end
437
429
 
438
- \beg virtual SEV_TEHTA_INF
430
+ \beg virtual SEV_TEHTA_INF THINF_STROKE
439
431
  \class THINF_STROKE_XS TELCO ARA ROMEN ARDA SILME_NUQUERNA HARP_SHAPED
440
432
  \class THINF_STROKE_S TINCO PARMA TW_EXT_11 TW_EXT_12 SHOOK_BEAUTIFUL AHA_TINCO HWESTA_TINCO
441
433
  \class THINF_STROKE_L SULE FORMEN AHA HWESTA ORE VALA ANNA VILYA LAMBE ALDA SILME SILME_NUQUERNA_ALT ESSE ESSE_NUQUERNA HYARMEN HWESTA_SINDARINWA YANTA URE OSSE
@@ -481,8 +473,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
481
473
  \end
482
474
 
483
475
  \beg virtual GEMINATE_SIGN
484
- \class DASH_INF_S TELCO ARA TINCO PARMA CALMA QUESSE SULE FORMEN AHA HWESTA ORE VALA ANNA VILYA TW_EXT_11 TW_EXT_12 TW_EXT_13 TW_EXT_14 ROMEN ARDA SILME SILME_NUQUERNA ESSE ESSE_NUQUERNA HYARMEN HWESTA_SINDARINWA YANTA URE OSSE SHOOK_BEAUTIFUL HARP_SHAPED AHA_TINCO HWESTA_TINCO
476
+ \class DASH_INF_S TELCO ARA TINCO PARMA CALMA QUESSE SULE FORMEN AHA HWESTA ORE VALA ANNA VILYA TW_EXT_11 TW_EXT_12 TW_EXT_13 TW_EXT_14 ROMEN ARDA SILME SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE ESSE_NUQUERNA HYARMEN HWESTA_SINDARINWA YANTA URE OSSE SHOOK_BEAUTIFUL HARP_SHAPED AHA_TINCO HWESTA_TINCO
485
477
  \class DASH_INF_L ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 ANCA_CLOSED
478
+ \class LAMBE_MARK_DASH LAMBE ALDA
479
+ \end
480
+
481
+ \beg virtual GEMINATE_SIGN_TILD
482
+ \class TILD_INF_S TELCO ARA TINCO PARMA CALMA QUESSE SULE FORMEN AHA HWESTA ORE VALA ANNA VILYA TW_EXT_11 TW_EXT_12 TW_EXT_13 TW_EXT_14 ROMEN ARDA SILME SILME_NUQUERNA SILME_NUQUERNA_ALT ESSE ESSE_NUQUERNA HYARMEN HWESTA_SINDARINWA YANTA URE OSSE SHOOK_BEAUTIFUL HARP_SHAPED AHA_TINCO HWESTA_TINCO
483
+ \class TILD_INF_L ANDO UMBAR ANGA UNGWE ANTO AMPA ANCA UNQUE NUMEN MALTA NOLDO NWALME TW_EXT_21 TW_EXT_22 TW_EXT_23 TW_EXT_24 ANCA_CLOSED
486
484
  \class LAMBE_MARK_TILD LAMBE ALDA
487
485
  \end
488
486
 
@@ -505,5 +503,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
505
503
 
506
504
 
507
505
 
508
-
509
506
 
@@ -0,0 +1,176 @@
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.0.2
28
+
29
+ \char 20 SPACE
30
+
31
+ \char e000 TW_11 TINCO
32
+ \char e001 TW_12 PARMA
33
+ \char e002 TW_13 CALMA
34
+ \char e003 TW_14 QUESSE
35
+
36
+ \char e004 TW_21 ANDO
37
+ \char e005 TW_22 UMBAR
38
+ \char e006 TW_23 ANGA
39
+ \char e007 TW_24 UNGWE
40
+
41
+ \char e008 TW_31 SULE THULE
42
+ \char e009 TW_32 FORMEN
43
+ \char e00A TW_33 AHA
44
+ \char e00B TW_34 HWESTA
45
+
46
+ \char e00C TW_41 ANTO
47
+ \char e00D TW_42 AMPA
48
+ \char e00E TW_43 ANCA
49
+ \char e00F TW_44 UNQUE
50
+
51
+ \char e010 TW_51 NUMEN
52
+ \char e011 TW_52 MALTA
53
+ \char e012 TW_53 NOLDO
54
+ \char e013 TW_54 NWALME
55
+
56
+ \char e014 TW_61 ORE
57
+ \char e015 TW_62 VALA
58
+ \char e016 TW_63 ANNA
59
+ \char e017 TW_64 VILYA
60
+
61
+ \char e018 TW_EXT_11 TINCO_EXT SULE_EXT
62
+ \char e019 TW_EXT_12 PARMA_EXT FORMEN_EXT
63
+ \char e01A TW_EXT_13 CALMA_EXT AHA_EXT
64
+ \char e01B TW_EXT_14 QUESSE_EXT HWESTA_EXT
65
+
66
+ \char e01C TW_EXT_21 ANDO_EXT ANTO_EXT
67
+ \char e01D TW_EXT_22 UMBAR_EXT AMPA_EXT
68
+ \char e01E TW_EXT_23 ANGA_EXT ANCA_EXT
69
+ \char e01F TW_EXT_24 UNGWE_EXT UNQUE_EXT
70
+
71
+ \char e020 TW_71 ROMEN
72
+ \char e021 TW_72 ARDA
73
+ \char e022 TW_73 LAMBE
74
+ \char e023 TW_74 ALDA
75
+
76
+ \char e024 TW_81 SILME
77
+ \** Unfortunately, monotengwar is missing silme nuquerna used for y in beleriand **\
78
+ \char e025 TW_82 SILME_NUQUERNA SILME_NUQUERNA_ALT
79
+ \char e026 TW_83 ESSE
80
+ \char e027 TW_84 ESSE_NUQUERNA
81
+
82
+ \char e028 TW_91 HYARMEN
83
+ \char e029 TW_92 HWESTA_SINDARINWA
84
+ \char e02A TW_93 YANTA
85
+ \char e02B TW_94 URE
86
+
87
+ \char e02C ARA
88
+ \char e02D HALLA
89
+ \char e02E TELCO
90
+ \char e02F ?
91
+
92
+ \char e030 REVERSED_OSSE
93
+ \char e031 BOMBADIL_W
94
+ \char e032 OSSE
95
+ \char e033 ?
96
+
97
+ \char e034 LIGATING_SHORT_CARRIER
98
+ \char e035 ANNA_SINDARINWA
99
+ \char e036 ANNA_OPEN
100
+ \char e037 CHRISTOPHER_QU
101
+
102
+ \char e038 REVERSED_FORMEN
103
+ \char e039 BOMBADIL_HW
104
+ \char e03A MALTA_W_HOOK TW_MH
105
+ \char e03B VALA_W_HOOK TW_MH_BELERIANDIC
106
+
107
+ \char e03C TW_HW_LOWDHAM HARP_SHAPED
108
+ \char e03D VAIYA
109
+ \char e03E ?
110
+ \char e03F ?
111
+
112
+ \char e040 A_TEHTA
113
+ \char e041 A_TEHTA_INF
114
+ \char e042 I_TEHTA_DOUBLE Y_TEHTA
115
+ \char e043 PALATAL_SIGN Y_TEHTA_INF
116
+
117
+ \char e044 I_TEHTA
118
+ \char e045 I_TEHTA_INF NO_VOWEL_DOT UNUTIXE
119
+ \char e046 E_TEHTA
120
+ \char e047 E_TEHTA_INF
121
+
122
+ \char e048 E_TEHTA_DOUBLE
123
+ \char e049 E_TEHTA_DOUBLE_INF GEMINATE_DOUBLE
124
+ \char e04A O_TEHTA
125
+ \char e04B O_TEHTA_INF
126
+
127
+ \char e04C U_TEHTA
128
+ \char e04D U_TEHTA_INF
129
+ \char e04E O_TEHTA_DOUBLE
130
+ \char e04F U_TEHTA_DOUBLE
131
+
132
+ \char e050 NASALIZE_SIGN NASALIZE_SIGN_TILD
133
+ \char e051 GEMINATE_SIGN GEMINATE_SIGN_TILD
134
+ \char e052 SEV_TEHTA
135
+ \char e053 TEHTA_BREVE
136
+
137
+ \char e054 ?
138
+ \char e055 A_TEHTA_CIRCUM
139
+ \char e056 A_TEHTA_REVERSED A_TEHTA_DOUBLE
140
+ \char e057 SEV_TEHTA_INF THINF_STROKE
141
+
142
+ \** THE TWO FOLLOWING ONES ARE HIGHLY DISCUSSABLE, MAYBE WE SHOULD ADD A VIRTUAL CHAR FOR THESE **\
143
+ \char e058 SHOOK_LEFT_L
144
+ \char e059 SHOOK_RIGHT_L ALVEOLAR_SIGN
145
+ \char e05A ?
146
+ \char e05B ?
147
+
148
+ \char e060 PUNCT_DOT
149
+ \char e061 PUNCT_DDOT
150
+ \char e062 PUNCT_TDOT
151
+ \char e063 PUNCT_QDOT
152
+ \char e064 PUNCT_FDOT
153
+
154
+ \char e065 PUNCT_EXCLAM
155
+ \char e066 PUNCT_INTERR
156
+ \char e067 PUNCT_PAREN_L PUNCT_PAREN_R PUNCT_PAREN_L_ALT PUNCT_PAREN_R_ALT BOOKMARK_SIGN
157
+ \char e068 PUNCT_TILD
158
+
159
+ \char e069 PUNCT_DTILD RING_MARK_L RING_MARK_R
160
+
161
+ \char e06A DQUOT_OPEN
162
+ \char e06B DQUOT_CLOSE
163
+
164
+ \char e070 NUM_0
165
+ \char e071 NUM_1
166
+ \char e072 NUM_2
167
+ \char e073 NUM_3
168
+ \char e074 NUM_4
169
+ \char e075 NUM_5
170
+ \char e076 NUM_6
171
+ \char e077 NUM_7
172
+ \char e078 NUM_8
173
+ \char e079 NUM_9
174
+ \char e07A NUM_10
175
+ \char e07B NUM_11
176
+
@@ -81,6 +81,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
81
81
  \** ᛐ **\ \char 16D0 SHORT_TWIG_TYR
82
82
  \** ᛑ **\ \char 16D1 RUNIC_D
83
83
  \** ᛒ **\ \char 16D2 BERKANAN BEORC BJARKAN
84
+ \** ᛓ **\ \char 16D3 SHORT_TWIG_BERKANAN SHORT_TWIG_BEORC SHORT_TWIG_BJARKAN
84
85
  \** ᛔ **\ \char 16D4 DOTTED_P
85
86
  \** ᛕ **\ \char 16D5 OPEN_P
86
87
  \** ᛖ **\ \char 16D6 EHWAZ EH
@@ -23,30 +23,45 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
23
23
  **\
24
24
 
25
25
  \beg changelog
26
- \entry "0.0.2", "Added option for o/u tehtar loop orientation"
27
- \entry "0.0.3", "Normalizing to virtual chars"
26
+ \entry "0.0.2" "Added option for o/u tehtar loop orientation"
27
+ \entry "0.0.3" "Normalizing to virtual chars"
28
+ \entry "0.0.4" "Added charset support for Annatar"
29
+ \entry "0.0.5" "Added support for the FreeMonoTengwar font"
30
+ \entry "0.0.6" "Added wave/bar option for consonant modifications sign"
31
+ \entry "0.1.0" "Added support for the Tengwar Elfica font"
28
32
  \end
29
33
 
30
34
  \** Adunaic mode for glaemscribe (MAY BE INCOMPLETE) **\
31
35
  \language Adûnaic
32
36
  \writing Tengwar
33
37
  \mode Glaemscrafu
34
- \version 0.0.3
35
- \authors "Talagan (Benjamin Babut)"
38
+ \version "0.1.0"
39
+ \authors "Talagan (Benjamin Babut), based on J.R.R Tolkien"
36
40
 
37
- \charset tengwar_ds true
38
- \charset tengwar_ds_eldamar false
41
+ \charset tengwar_ds_sindarin true
42
+ \charset tengwar_ds_parmaite false
43
+ \charset tengwar_ds_eldamar false
44
+ \charset tengwar_ds_annatar false
45
+ \charset tengwar_ds_elfica false
46
+ \charset tengwar_freemono false
39
47
 
40
48
  \beg options
49
+ \beg option reverse_o_u_tehtar O_UP_U_DOWN
50
+ \value O_UP_U_DOWN 1
51
+ \value U_UP_O_DOWN 2
52
+ \end
53
+
54
+ \beg option consonant_modification_style CONSONANT_MODIFICATION_STYLE_BAR
55
+ \value CONSONANT_MODIFICATION_STYLE_WAVE 0
56
+ \value CONSONANT_MODIFICATION_STYLE_BAR 1
57
+ \end
58
+
41
59
  \option reverse_numbers true
42
60
  \beg option numbers_base BASE_12
43
61
  \value BASE_10 10
44
62
  \value BASE_12 12
45
63
  \end
46
- \beg option reverse_o_u_tehtar O_UP_U_DOWN
47
- \value O_UP_U_DOWN 1
48
- \value U_UP_O_DOWN 2
49
- \end
64
+
50
65
  \end
51
66
 
52
67
  \beg preprocessor
@@ -76,6 +91,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
76
91
  \beg processor
77
92
 
78
93
  \beg rules litteral
94
+
95
+ \if "consonant_modification_style == CONSONANT_MODIFICATION_STYLE_WAVE"
96
+ {GEMINATE} === GEMINATE_SIGN_TILD
97
+ \else
98
+ {GEMINATE} === GEMINATE_SIGN
99
+ \endif
100
+
79
101
  {A} === a
80
102
  {AA} === á
81
103
  {E} === e
@@ -135,24 +157,24 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
135
157
  {K} === (c,k)
136
158
  {V} === (v,w)
137
159
 
138
- {L1_S} === {K} * p * t * {K}{K} * pp * tt
139
- {L1_T} === QUESSE * PARMA * TINCO * CALMA GEMINATE_SIGN * PARMA GEMINATE_SIGN * TINCO GEMINATE_SIGN
160
+ {L1_S} === {K} * p * t * {K}{K} * pp * tt
161
+ {L1_T} === QUESSE * PARMA * TINCO * CALMA {GEMINATE} * PARMA {GEMINATE} * TINCO {GEMINATE}
140
162
 
141
163
  [{L1_S}] --> [ {L1_T} ]
142
164
  [{L1_S}]{V_D} --> [ {L1_T} ]{_V_D_}
143
165
 
144
- {L2_S} === d * b * g * dd * bb * gg
145
- {L2_T} === ANDO * UMBAR * UNGWE * ANDO GEMINATE_SIGN * UMBAR GEMINATE_SIGN * UNGWE GEMINATE_SIGN
166
+ {L2_S} === d * b * g * dd * bb * gg
167
+ {L2_T} === ANDO * UMBAR * UNGWE * ANDO {GEMINATE} * UMBAR {GEMINATE} * UNGWE {GEMINATE}
146
168
  [{L2_S}] --> [{L2_T}]
147
169
  [{L2_S}]{V_D} --> [{L2_T}]{_V_D_}
148
170
 
149
171
  \** Alignment of tehta is not the same in the font **\
150
172
  \** So we need to split the third line unfortunately **\
151
- {L3_1_S} === th * ph * (t,th)th * (p,ph)ph * (t,th)ph * (k,kh)ph * (p,ph)th * (k,kh)th
152
- {L3_1_T} === SULE * FORMEN * SULE GEMINATE_SIGN * FORMEN GEMINATE_SIGN * SULE FORMEN * HWESTA FORMEN * FORMEN SULE * HWESTA SULE
173
+ {L3_1_S} === th * ph * (t,th)th * (p,ph)ph * (t,th)ph * (k,kh)ph * (p,ph)th * (k,kh)th
174
+ {L3_1_T} === SULE * FORMEN * SULE {GEMINATE} * FORMEN {GEMINATE} * SULE FORMEN * HWESTA FORMEN * FORMEN SULE * HWESTA SULE
153
175
 
154
- {L3_2_S} === sh * kh * (k,kh)kh * (p,ph)kh * (t,th)kh
155
- {L3_2_T} === AHA * HWESTA * HWESTA GEMINATE_SIGN * FORMEN HWESTA * SULE HWESTA
176
+ {L3_2_S} === sh * kh * (k,kh)kh * (p,ph)kh * (t,th)kh
177
+ {L3_2_T} === AHA * HWESTA * HWESTA {GEMINATE} * FORMEN HWESTA * SULE HWESTA
156
178
 
157
179
  [{L3_1_S}] --> [{L3_1_T}]
158
180
  [{L3_1_S}]{V_D} --> [{L3_1_T}]{_V_D_}
@@ -164,13 +186,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
164
186
  [{L4_S}] --> [{L4_T}]
165
187
  [{L4_S}]{V_D} --> [{L4_T}]{_V_D_}
166
188
 
167
- {L5_S} === n * m * nn * mm
168
- {L5_T} === NUMEN * MALTA * NUMEN GEMINATE_SIGN * MALTA GEMINATE_SIGN
189
+ {L5_S} === n * m * nn * mm
190
+ {L5_T} === NUMEN * MALTA * NUMEN {GEMINATE} * MALTA {GEMINATE}
169
191
  [{L5_S}] --> [{L5_T}]
170
192
  [{L5_S}]{V_D} --> [{L5_T}]{_V_D_}
171
193
 
172
- {L6_S} === {V} * y * rr * {V}{V} * yy
173
- {L6_T} === VALA * ANNA * ROMEN GEMINATE_SIGN * VALA GEMINATE_SIGN * ANNA GEMINATE_SIGN
194
+ {L6_S} === {V} * y * rr * {V}{V} * yy
195
+ {L6_T} === VALA * ANNA * ROMEN {GEMINATE} * VALA {GEMINATE} * ANNA {GEMINATE}
174
196
  [r * {L6_S}] --> [ ORE * {L6_T}]
175
197
  [r * {L6_S}]{V_D} --> [ ROMEN * {L6_T}]{_V_D_}
176
198
 
@@ -185,14 +207,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
185
207
 
186
208
  h{V_D} --> HYARMEN {_V_D_}
187
209
  h --> HYARMEN
188
- hh{V_D} --> HYARMEN GEMINATE_SIGN {_V_D_}
189
- hh --> HYARMEN GEMINATE_SIGN
210
+ hh{V_D} --> HYARMEN {GEMINATE} {_V_D_}
211
+ hh --> HYARMEN {GEMINATE}
190
212
 
191
213
  l{V_D} --> LAMBE {_V_D_}
192
214
  l --> LAMBE
193
215
 
194
- ll{V_D} --> LAMBE GEMINATE_SIGN {_V_D_}
195
- ll --> LAMBE GEMINATE_SIGN
216
+ ll{V_D} --> LAMBE {GEMINATE} {_V_D_}
217
+ ll --> LAMBE {GEMINATE}
196
218
 
197
219
  \end
198
220
 
@@ -226,8 +248,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
226
248
  » --> DQUOT_CLOSE
227
249
 
228
250
  - --> PUNCT_DOT
229
- – --> WAVE_MED_SIMPLE
230
- — --> WAVE_MED_DOUBLE
251
+ – --> PUNCT_TILD
252
+ — --> PUNCT_DTILD
231
253
 
232
254
  [ --> PUNCT_PAREN_L
233
255
  ] --> PUNCT_PAREN_R