glaemscribe 1.0.19 → 1.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 (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
@@ -1,101 +0,0 @@
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
- \language "Old Norse"
26
- \writing "Runes"
27
- \mode "Futhark Long Branch"
28
- \version "0.0.1"
29
- \authors "Bertrand Bellet"
30
-
31
- \charset unicode_runes true
32
-
33
- \beg preprocessor
34
- \downcase
35
- \end
36
-
37
- \beg processor
38
-
39
- \beg rules litteral
40
- {A} === (a,á,æ,ǽ,ę)
41
- {I} === (i,í,j,e,é)
42
- {O} === (ą,ö,ǫ,ǫ́,ǭ)
43
- {U} === (u,ú,o,ó,y,ý,ø,ǿ,œ)
44
- {AI} === (æi,ei)
45
- {AU} === (au,ǫu,ey,æy,øy,œy)
46
- {K} === (c,k,q)
47
-
48
- \** VOWELS **\
49
-
50
- {A} --> LONG_BRANCH_AR
51
- {I} --> ISS
52
- {O} --> LONG_BRANCH_OSS
53
- {U} --> UR
54
- {AI} --> LONG_BRANCH_AR ISS
55
- {AU} --> LONG_BRANCH_OSS UR
56
-
57
-
58
- \** CONSONANTS **\
59
-
60
- (b,bb,mb,p,pp,mp) --> BJARKAN
61
- (f,ff) --> FE
62
- _g --> KAUN \** # Initial / After prefix **\
63
- (g,g_) --> LONG_BRANCH_HAGALL \** # Median / Final Spirant **\
64
- (h,hh) --> LONG_BRANCH_HAGALL
65
- ({K},n{K},{K}{K},gg,ng) --> KAUN
66
- (l,ll) --> LOGR
67
- (m,mm) --> LONG_BRANCH_MADR
68
- (n,nn) --> NAUD
69
- (r,rr) --> REID
70
- (ř) --> LONG_BRANCH_YR \** ř < Germanic z **\
71
- (s,ss) --> LONG_BRANCH_SOL
72
- (t,tt,nt,d,dd,nd) --> TYR
73
- (þ,þþ,ð,ðð) --> THURS
74
- (v,vv,w,ww) --> URUZ
75
- x --> KAUN LONG_BRANCH_SOL
76
- z --> TYR LONG_BRANCH_SOL
77
-
78
-
79
- \** nasalization of a **\
80
-
81
- {A}(m,mm) --> LONG_BRANCH_OSS LONG_BRANCH_MADR
82
- {A}(n,nn) --> LONG_BRANCH_OSS NAUD
83
- {A}(mp,mb,pp) --> LONG_BRANCH_OSS BJARKAN
84
- {A}(nt,nd,tt) --> LONG_BRANCH_OSS TYR
85
- {A}(n{K},ng,{K}{K}) --> LONG_BRANCH_OSS KAUN
86
-
87
-
88
- \end
89
-
90
- \beg rules punctuation
91
- , --> RUNIC_SINGLE_PUNCTUATION
92
- ; --> RUNIC_SINGLE_PUNCTUATION
93
- : --> RUNIC_MULTIPLE_PUNCTUATION
94
- . --> RUNIC_MULTIPLE_PUNCTUATION
95
- ! --> RUNIC_MULTIPLE_PUNCTUATION
96
- ? --> RUNIC_CROSS_PUNCTUATION
97
- \end
98
- \end
99
-
100
-
101
-
@@ -1,101 +0,0 @@
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
- \language "Old Norse"
26
- \writing "Runes"
27
- \mode "Futhark Short Twig"
28
- \version "0.0.1"
29
- \authors "Bertrand Bellet"
30
-
31
- \charset unicode_runes true
32
-
33
- \beg preprocessor
34
- \downcase
35
- \end
36
-
37
- \beg processor
38
-
39
- \beg rules litteral
40
- {A} === (a,á,æ,ǽ,ę)
41
- {I} === (i,í,j,e,é)
42
- {O} === (ą,ö,ǫ,ǫ́,ǭ)
43
- {U} === (u,ú,o,ó,y,ý,ø,ǿ,œ)
44
- {AI} === (æi,ei)
45
- {AU} === (au,ǫu,ey,æy,øy,œy)
46
- {K} === (c,k,q)
47
-
48
- \** VOWELS **\
49
-
50
- {A} --> SHORT_TWIG_AR
51
- {I} --> ISS
52
- {O} --> SHORT_TWIG_OSS
53
- {U} --> UR
54
- {AI} --> SHORT_TWIG_AR ISS
55
- {AU} --> SHORT_TWIG_OSS UR
56
-
57
-
58
- \** CONSONANTS **\
59
-
60
- (b,bb,mb,p,pp,mp) --> SHORT_TWIG_BJARKAN
61
- (f,ff) --> FE
62
- _g --> KAUN \** # Initial / After prefix **\
63
- (g,g_) --> SHORT_TWIG_HAGALL \** # Median / Final Spirant **\
64
- (h,hh) --> SHORT_TWIG_HAGALL
65
- ({K},n{K},{K}{K},gg,ng) --> KAUN
66
- (l,ll) --> LOGR
67
- (m,mm) --> SHORT_TWIG_MADR
68
- (n,nn) --> SHORT_TWIG_NAUD
69
- (r,rr) --> REID
70
- (ř) --> SHORT_TWIG_YR \** ř < Germanic z **\
71
- (s,ss) --> SHORT_TWIG_SOL
72
- (t,tt,nt,d,dd,nd) --> SHORT_TWIG_TYR
73
- (þ,þþ,ð,ðð) --> THURS
74
- (v,vv,w,ww) --> URUZ
75
- x --> KAUN SHORT_TWIG_SOL
76
- z --> SHORT_TWIG_TYR SHORT_TWIG_SOL
77
-
78
-
79
- \** nasalization of a **\
80
-
81
- {A}(m,mm) --> SHORT_TWIG_OSS SHORT_TWIG_MADR
82
- {A}(n,nn) --> SHORT_TWIG_OSS NAUD
83
- {A}(mp,mb,pp) --> SHORT_TWIG_OSS BJARKAN
84
- {A}(nt,nd,tt) --> SHORT_TWIG_OSS TYR
85
- {A}(n{K},ng,{K}{K}) --> SHORT_TWIG_OSS KAUN
86
-
87
-
88
- \end
89
-
90
- \beg rules punctuation
91
- , --> RUNIC_SINGLE_PUNCTUATION
92
- ; --> RUNIC_SINGLE_PUNCTUATION
93
- : --> RUNIC_MULTIPLE_PUNCTUATION
94
- . --> RUNIC_MULTIPLE_PUNCTUATION
95
- ! --> RUNIC_MULTIPLE_PUNCTUATION
96
- ? --> RUNIC_CROSS_PUNCTUATION
97
- \end
98
- \end
99
-
100
-
101
-