medieval_latina 1.2.5 → 1.3.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 +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +4 -1
- data/lib/medieval_latina/dictionary.rb +112 -2
- data/lib/medieval_latina/version.rb +1 -1
- data/lib/medieval_latina.rb +29 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 76d9ee49f0f6769ceaf009a097b7966c4ac453e946fcc97135e8706d9e45f051
|
4
|
+
data.tar.gz: 47321a09e37698234ea721dc9934852668032158ba82c3f3e2792accf5fae837
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6802714afcad8201d94f5d03fa1131d980aa33fd38f24333f5596da24800e4791c79f70d7b6a0947dafdf6713e25779fdc6680a35ddd8e00bd1257080f8a98ad
|
7
|
+
data.tar.gz: 5a4ea8dce20962c4ffdb43dde5c81e9bdfff459989b9c70c11027227e81526ab4c09e2972d959d3d85eaf40bb72a42d7fd5d734820506cf3a200a18e10620e5d
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -33,7 +33,10 @@ MedievalLatina.verbs.include?("voco")
|
|
33
33
|
MedievalLatina.verbs.include?("nauta")
|
34
34
|
=> false
|
35
35
|
|
36
|
-
MedievalLatina.adverbs?("facile")
|
36
|
+
MedievalLatina.adverbs.include?("facile")
|
37
|
+
=> true
|
38
|
+
|
39
|
+
MedievalLatina.adjectives.include?("certus")
|
37
40
|
=> true
|
38
41
|
```
|
39
42
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require "set"
|
2
|
+
|
1
3
|
class MedievalLatina
|
2
4
|
DICTIONARY = {
|
3
5
|
"ad" => "add",
|
@@ -48,6 +50,114 @@ class MedievalLatina
|
|
48
50
|
"undeviginti" => "oon-day-veejin-tee"
|
49
51
|
}.freeze
|
50
52
|
|
53
|
+
ADJECTIVES = %w[
|
54
|
+
acer
|
55
|
+
acerbus
|
56
|
+
adultus
|
57
|
+
aeguus
|
58
|
+
alius
|
59
|
+
altus
|
60
|
+
asper
|
61
|
+
audax
|
62
|
+
aureus
|
63
|
+
avarus
|
64
|
+
bellus
|
65
|
+
brevis
|
66
|
+
carus
|
67
|
+
celer
|
68
|
+
certus
|
69
|
+
civilis
|
70
|
+
clarus
|
71
|
+
communis
|
72
|
+
conscius
|
73
|
+
crudelis
|
74
|
+
cupidus
|
75
|
+
demens
|
76
|
+
desidiosus
|
77
|
+
difficilis
|
78
|
+
dignus
|
79
|
+
doctus
|
80
|
+
dulcis
|
81
|
+
durus
|
82
|
+
eloquens
|
83
|
+
eximius
|
84
|
+
extremus
|
85
|
+
facilis
|
86
|
+
falsus
|
87
|
+
felix
|
88
|
+
ferus
|
89
|
+
fortis
|
90
|
+
fortunatus
|
91
|
+
gratus
|
92
|
+
humanus
|
93
|
+
humilis
|
94
|
+
immortalis
|
95
|
+
inanis
|
96
|
+
incertus
|
97
|
+
infirmus
|
98
|
+
informis
|
99
|
+
ingens
|
100
|
+
iniustus
|
101
|
+
integer
|
102
|
+
invictus
|
103
|
+
iratus
|
104
|
+
iustus
|
105
|
+
laetus
|
106
|
+
levis
|
107
|
+
liber
|
108
|
+
longus
|
109
|
+
magnus
|
110
|
+
malus
|
111
|
+
medius
|
112
|
+
meus
|
113
|
+
militaris
|
114
|
+
mirus
|
115
|
+
mortalis
|
116
|
+
multus
|
117
|
+
novus
|
118
|
+
obstinatus
|
119
|
+
opportunus
|
120
|
+
parvus
|
121
|
+
plenus
|
122
|
+
praeclarus
|
123
|
+
praeteritus
|
124
|
+
proprius
|
125
|
+
prudens
|
126
|
+
publicus
|
127
|
+
pudicus
|
128
|
+
pulcher
|
129
|
+
rarus
|
130
|
+
rectus
|
131
|
+
rusticus
|
132
|
+
sacer
|
133
|
+
sacrilegus
|
134
|
+
salvus
|
135
|
+
sanctus
|
136
|
+
sapiens
|
137
|
+
scelestus
|
138
|
+
securus
|
139
|
+
serius
|
140
|
+
similis
|
141
|
+
simplex
|
142
|
+
sollicitus
|
143
|
+
solus
|
144
|
+
stabilis
|
145
|
+
studiosus
|
146
|
+
subitus
|
147
|
+
superbus
|
148
|
+
tardus
|
149
|
+
totus
|
150
|
+
tristis
|
151
|
+
turpis
|
152
|
+
tuus
|
153
|
+
urbanus
|
154
|
+
utilis
|
155
|
+
vehemens
|
156
|
+
velox
|
157
|
+
verus
|
158
|
+
vetus
|
159
|
+
].to_set.freeze
|
160
|
+
|
51
161
|
ADVERBS = %w[
|
52
162
|
abhinc
|
53
163
|
adhuc
|
@@ -105,7 +215,7 @@ class MedievalLatina
|
|
105
215
|
utinam
|
106
216
|
vere
|
107
217
|
vix
|
108
|
-
].freeze
|
218
|
+
].to_set.freeze
|
109
219
|
|
110
220
|
VERBS = %w[
|
111
221
|
abeo
|
@@ -335,5 +445,5 @@ class MedievalLatina
|
|
335
445
|
voco
|
336
446
|
volo
|
337
447
|
vulnero
|
338
|
-
].freeze
|
448
|
+
].to_set.freeze
|
339
449
|
end
|
data/lib/medieval_latina.rb
CHANGED
@@ -4,13 +4,35 @@ require "set"
|
|
4
4
|
|
5
5
|
class MedievalLatina
|
6
6
|
def self.[](text)
|
7
|
-
|
7
|
+
prepare_text(text).map do |word|
|
8
8
|
DICTIONARY[word] || new(word).call
|
9
9
|
end.join(" ")
|
10
10
|
end
|
11
11
|
|
12
|
-
def self.
|
13
|
-
text.
|
12
|
+
def self.prepare_text(text)
|
13
|
+
text.split(" ").map do |word|
|
14
|
+
prepare_word(word)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.prepare_word(word)
|
19
|
+
word.gsub(/\W+/, " ").strip.downcase
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.adjective?(word)
|
23
|
+
ADJECTIVES.member?(prepare_word(word))
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.adverb?(word)
|
27
|
+
ADVERBS.member?(prepare_word(word))
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.verb?(word)
|
31
|
+
VERBS.member?(prepare_word(word))
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.adjectives
|
35
|
+
ADJECTIVES
|
14
36
|
end
|
15
37
|
|
16
38
|
def self.adverbs
|
@@ -21,6 +43,10 @@ class MedievalLatina
|
|
21
43
|
VERBS
|
22
44
|
end
|
23
45
|
|
46
|
+
def self.words
|
47
|
+
ADJECTIVES | ADVERBS | Set.new(DICTIONARY.keys) | VERBS
|
48
|
+
end
|
49
|
+
|
24
50
|
def initialize(word)
|
25
51
|
@index = 0
|
26
52
|
@word = word.downcase
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: medieval_latina
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jayson Virissimo
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-12-
|
11
|
+
date: 2022-12-18 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: |
|
14
14
|
There are good text-to-speech engines for English and classical Latin, but none for medieval Latin.
|