greek_stemmer 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 7d74d733ad6b73cb5ef7dd799abddaa9968723838d5905da7c087792fd62cbe3
4
- data.tar.gz: e4041de586528a85eeff003e894ffa4d6062dd696e87e144e362345f2b01da19
2
+ SHA1:
3
+ metadata.gz: b3a88c623110ed08b7da611e59ae3f562f9cae84
4
+ data.tar.gz: 22414bc204c9b89ec76e23f2bcadc8cf11334e65
5
5
  SHA512:
6
- metadata.gz: 481525b1f4c37ee929722bdcf8aec5ff6003e0cac65c4c3300a8eb51d12272305b71b257ae48c80affc9e25e5b9ee19cb4c08d5e5528a0a5fed6411b372881db
7
- data.tar.gz: efbc852c6a17d5a03d6c35a6edbfec7d809bb19cfcd26d7db4e1a63af0ff2b9de51a4b9c0723b294d6acc6608cd69e73428a0e2b6ff31466663fb729af1db6bc
6
+ metadata.gz: 1e0cd0e35ead19b2e42b6af5b8ff60b888479273636eb613ee4072afd79dca733d72262c3a2e22c789f5ad6eba5cb70588b28ec52e8b84af54afb35ff27624f5
7
+ data.tar.gz: 3965af3e9b4937abd7abe86cb1a390670522339e16bfe2c1e01cdf05640a6971a0473ca781a0b5f34b32c2a4ffc28c919c1167c44ab194aec0a5ed1a538405f5
@@ -6920,7 +6920,7 @@
6920
6920
  ΘΕΡΜΟΠΥΛ,ΘΕΡΜΟΠΥΛ
6921
6921
  ΘΕΡΜΟΠΥΛΕΣ,ΘΕΡΜΟΠΥΛ
6922
6922
  ΘΕΡΜΟΠΥΛΩΝ,ΘΕΡΜΟΠΥΛ
6923
- ΘΕΡΜΟΣ,ΘΕΡΜ
6923
+ ΘΕΡΜΟΣ,ΘΕΡΜΟΣ
6924
6924
  ΘΕΡΜΟΤΗΤ,ΘΕΡΜΟΤΗΤ
6925
6925
  ΘΕΡΜΟΤΗΤΑΣ,ΘΕΡΜΟΤΗΤ
6926
6926
  ΘΕΡΜΩ,ΘΕΡΜ
@@ -12744,12 +12744,12 @@
12744
12744
  ΠΑΣΤΑ,ΠΑΣΤ
12745
12745
  ΠΑΣΤΡΑ,ΠΑΣΤΡ
12746
12746
  ΠΑΣΧ,ΠΑΣΧ
12747
- ΠΑΣΧΑ,ΠΑΣΧ
12747
+ ΠΑΣΧΑ,ΠΑΣΧΑ
12748
12748
  ΠΑΣΧΑΛ,ΠΑΣΧΑΛ
12749
12749
  ΠΑΣΧΑΛΙΑ,ΠΑΣΧΑΛ
12750
12750
  ΠΑΣΧΑΛΙΝ,ΠΑΣΧΑΛΙΝ
12751
- ΠΑΣΧΑΛΙΝΑ,ΠΑΣΧΑΛΙΝ
12752
- ΠΑΣΧΑΛΙΝΕΣ,ΠΑΣΧΑΛΙΝ
12751
+ ΠΑΣΧΑΛΙΝΑ,ΠΑΣΧΑ
12752
+ ΠΑΣΧΑΛΙΝΕΣ,ΠΑΣΧΑ
12753
12753
  ΠΑΣΧΑΛΙΤΣ,ΠΑΣΧΑΛΙΤΣ
12754
12754
  ΠΑΣΧΑΛΙΤΣΑ,ΠΑΣΧΑΛΙΤΣ
12755
12755
  ΠΑΣΧΑΡΑΛΑΜΠ,ΠΑΣΧΑΡΑΛΑΜΠ
@@ -13449,7 +13449,7 @@
13449
13449
  ΠΟΔΗΛΑΤΙΚΟΣ,ΠΟΔΗΛΑΤ
13450
13450
  ΠΟΔΗΛΑΤΟ,ΠΟΔΗΛΑΤ
13451
13451
  ΠΟΔΗΛΑΤΟΥ,ΠΟΔΗΛΑΤ
13452
- ΠΟΔΙΑ,ΠΟΔ
13452
+ ΠΟΔΙΑ,ΠΟΔΙ
13453
13453
  ΠΟΔΙΑΣ,ΠΟΔ
13454
13454
  ΠΟΔΟΣΦΑΙΡ,ΠΟΔΟΣΦΑΙΡ
13455
13455
  ΠΟΔΟΣΦΑΙΡΙΚΑ,ΠΟΔΟΣΦΑΙΡ
@@ -17726,8 +17726,8 @@
17726
17726
  ΧΑΡΤΑΕΤ,ΧΑΡΤΑΕΤ
17727
17727
  ΧΑΡΤΑΕΤΟΣ,ΧΑΡΤΑΕΤ
17728
17728
  ΧΑΡΤΑΚΙΑ,ΧΑΡΤΑΚ
17729
- ΧΑΡΤΕΣ,ΧΑΡΤ
17730
- ΧΑΡΤΗΣ,ΧΑΡΤ
17729
+ ΧΑΡΤΕΣ,ΧΑΡΤΗ
17730
+ ΧΑΡΤΗΣ,ΧΑΡΤΗ
17731
17731
  ΧΑΡΤΙ,ΧΑΡΤ
17732
17732
  ΧΑΡΤΙΑ,ΧΑΡΤ
17733
17733
  ΧΑΡΤΙΝ,ΧΑΡΤΙΝ
@@ -17748,7 +17748,7 @@
17748
17748
  ΧΑΡΤΟΚΙΒΩΤΙΟ,ΧΑΡΤΟΚΙΒΩΤ
17749
17749
  ΧΑΡΤΟΦΥΛΑΚ,ΧΑΡΤΟΦΥΛΑΚ
17750
17750
  ΧΑΡΤΟΦΥΛΑΚΙΟΥ,ΧΑΡΤΟΦΥΛΑΚ
17751
- ΧΑΡΤΩΝ,ΧΑΡΤ
17751
+ ΧΑΡΤΩΝ,ΧΑΡΤΗ
17752
17752
  ΧΑΣΙΚ,ΧΑΣΙΚ
17753
17753
  ΧΑΣΙΚΟ,ΧΑΣΙΚ
17754
17754
  ΧΑΣΙΜ,ΧΑΣΙΜ
data/config/stemmer.yml CHANGED
@@ -1,11 +1,17 @@
1
1
  step_0_exceptions:
2
- ΡΟΛΟΓΙΑ: ΡΟΛ
3
- ΛΑΔΟΥΣΑ: ΛΑΔΟΥΣ
4
- ΣΚΙ: ΣΚ
5
- ΚΡΕΜΑΣ: ΚΡΕΜΑ
6
2
  ΒΕΡΜΟΥΔΕΣ: ΒΕΡΜΟΥΔ
3
+ ΚΡΕΜΑΣ: ΚΡΕΜΑ
4
+ ΚΡΕΜΕΣ: ΚΡΕΜΑ
5
+ ΛΑΒΑΣ: ΛΑΒΑ
6
+ ΛΑΔΟΥΣΑ: ΛΑΔΟΥΣ
7
+ ΛΙΒΑΝΗΣ: ΛΙΒΑΝΗ
7
8
  ΜΑΤΙΑ: ΜΑΤΙ
8
9
  ΜΑΤΙΩΝ: ΜΑΤΙ
10
+ ΠΑΤΑΚΗΣ: ΠΑΤΑΚΗ
11
+ ΠΟΔΙΑ: ΠΟΔΙ
12
+ ΡΟΛΟΓΙΑ: ΡΟΛ
13
+ ΣΚΙ: ΣΚ
14
+ ΤΑΜΠΟΥΡΑ: ΤΑΜΠΟΥΡΟ
9
15
  step_1_exceptions:
10
16
  ΦΑΓΙΑ: ΦΑ
11
17
  ΦΑΓΙΟΥ: ΦΑ
@@ -26,6 +32,9 @@ step_1_exceptions:
26
32
  ΚΡΕΑΤΟΣ: ΚΡΕ
27
33
  ΚΡΕΑΤΑ: ΚΡΕ
28
34
  ΚΡΕΑΤΩΝ: ΚΡΕ
35
+ ΝΤΟΥΛΑΠΑΣ: ΝΤΟΥΛΑΠΑ
36
+ ΝΤΟΥΛΑΠΩΝ: ΝΤΟΥΛΑΠΑ
37
+ ΝΤΟΥΛΑΠΕΣ: ΝΤΟΥΛΑΠΑ
29
38
  ΠΕΡΑΣ: ΠΕΡ
30
39
  ΠΕΡΑΤΟΣ: ΠΕΡ
31
40
  ΠΕΡΑΤΑ: ΠΕΡ
@@ -39,6 +48,9 @@ step_1_exceptions:
39
48
  ΦΩΤΑ: ΦΩ
40
49
  ΦΩΤΩΝ: ΦΩ
41
50
  ΦΩΤΟ: ΦΩ
51
+ ΧΑΡΤΕΣ: ΧΑΡΤΗ
52
+ ΧΑΡΤΩΝ: ΧΑΡΤΗ
53
+ ΧΑΡΤΗΣ: ΧΑΡΤΗ
42
54
  ΚΑΘΕΣΤΩΣ: ΚΑΘΕΣΤ
43
55
  ΚΑΘΕΣΤΩΤΟΣ: ΚΑΘΕΣΤ
44
56
  ΚΑΘΕΣΤΩΤΑ: ΚΑΘΕΣΤ
@@ -69,11 +81,14 @@ protected_words:
69
81
  - ΑΠΟΨΕ
70
82
  - ΑΡΑ
71
83
  - ΑΡΑΓΕ
84
+ - ΑΡΚΑΣ
72
85
  - ΑΥΡΙΟ
73
86
  - ΑΦΟΙ
74
87
  - ΑΦΟΥ
75
88
  - ΑΦΟΤΟΥ
89
+ - ΒΙΟΛΟΓΟΣ
76
90
  - ΒΡΕ
91
+ - ΓΑΖΙ
77
92
  - ΓΕΙΑ
78
93
  - ΓΙΑ
79
94
  - ΓΙΑΤΙ
@@ -131,6 +146,7 @@ protected_words:
131
146
  - ΗΜΙ
132
147
  - ΗΠΑ
133
148
  - ΗΤΟΙ
149
+ - ΘΕΡΜΟΣ
134
150
  - ΘΕΣ
135
151
  - ΙΔΙΩΣ
136
152
  - ΙΔΗ
@@ -156,9 +172,12 @@ protected_words:
156
172
  - ΚΥΡΙΩΣ
157
173
  - ΚΡΕΜΑ
158
174
  - ΚΩΣ
175
+ - ΛΑΒΑ
176
+ - ΛΙΒΑΝΗ
159
177
  - ΜΑΓΙΟ
160
178
  - ΜΑΓΙΩ
161
179
  - ΜΑΚΑΡΙ
180
+ - ΜΑΚΡΑΜΕ
162
181
  - ΜΑΛΙΣΤΑ
163
182
  - ΜΑΛΛΟΝ
164
183
  - ΜΑΙ
@@ -184,6 +203,7 @@ protected_words:
184
203
  - ΜΟΥ
185
204
  - ΜΠΑ
186
205
  - ΜΠΑΣ
206
+ - ΜΠΕΡΙ
187
207
  - ΜΠΕΤΟΝΙ
188
208
  - ΜΠΟΥΦΑΝ
189
209
  - ΜΠΡΟΣ
@@ -191,6 +211,7 @@ protected_words:
191
211
  - ΝΕΣ
192
212
  - ΝΤΑ
193
213
  - ΝΤΕ
214
+ - ΝΤΟΥΛΑΠΑ
194
215
  - ΞΑΝΑ
195
216
  - ΟΗΕ
196
217
  - ΟΚΤΩ
@@ -217,7 +238,9 @@ protected_words:
217
238
  - ΠΑΝΙ
218
239
  - ΠΕΡΑ
219
240
  - ΠΕΡΙ
241
+ - ΠΕΡΛΕ
220
242
  - ΠΕΡΙΠΟΥ
243
+ - ΠΑΤΑΚΗ
221
244
  - ΠΕΤΑΛΟ
222
245
  - ΠΙΑ
223
246
  - ΠΙΟ
@@ -225,6 +248,7 @@ protected_words:
225
248
  - ΠΛΑΙ
226
249
  - ΠΛΕΟΝ
227
250
  - ΠΛΗΝ
251
+ - ΠΟΔΙ
228
252
  - ΠΟΤΕ
229
253
  - ΠΟΥ
230
254
  - ΠΡΟ
@@ -233,6 +257,7 @@ protected_words:
233
257
  - ΠΡΟΧΘΕΣ
234
258
  - ΡΟΔΙ
235
259
  - ΡΟΛΑ
260
+ - ΡΟΥΤΕΡ
236
261
  - ΠΩΣ
237
262
  - ΣΑΙ
238
263
  - ΣΑΣ
@@ -242,10 +267,14 @@ protected_words:
242
267
  - ΣΟΙ
243
268
  - ΣΟΥ
244
269
  - ΣΡΙ
270
+ - ΣΤΡΑΤΑ
271
+ - ΣΤΥΛΟ
245
272
  - ΣΥΝ
246
273
  - ΣΥΝΑΜΑ
247
274
  - ΣΧΕΔΟΝ
248
275
  - ΤΑΔΕ
276
+ - ΤΑΜΠΟΥΡΕ
277
+ - ΤΑΜΠΟΥΡΟ
249
278
  - ΤΑΞΙ
250
279
  - ΤΑΧΑ
251
280
  - ΤΕΙ
@@ -271,6 +300,8 @@ protected_words:
271
300
  - ΦΙΣ
272
301
  - ΦΛΟΤΕΡ
273
302
  - ΦΠΑ
303
+ - ΦΤΕΡΗ
304
+ - ΧΑΡΤΗ
274
305
  - ΧΑΦ
275
306
  - ΧΘΕΣ
276
307
  - ΧΤΕΣ
@@ -1,3 +1,3 @@
1
1
  module GreekStemmer
2
- VERSION = "1.2.0"
2
+ VERSION = "1.3.0"
3
3
  end
data/lib/greek_stemmer.rb CHANGED
@@ -91,14 +91,18 @@ module GreekStemmer
91
91
  # step 4
92
92
  stem.scan(/^(.+?)(ΙΚΟΣ|ΙΚΟΝ|ΙΚΕΙΣ|ΙΚΟΙ|ΙΚΕΣ|ΙΚΟΥΣ|ΙΚΗ|ΙΚΗΣ|ΙΚΟ|ΙΚΑ|ΙΚΟΥ|ΙΚΩΝ|ΙΚΩΣ)$/u) do |st, suffix|
93
93
  stem = st
94
- stem << "ΙΚ" if ends_on_vowel?(st) || st =~ /^(ΑΔ|ΑΛ|ΑΜΑΝ|ΑΜΕΡ|ΑΜΜΟΧΑΛ|
95
- ΑΝΗΘ|ΑΝΤΙΔ|ΑΠΛ|ΑΤΤ|ΑΦΡ|ΒΑΣ|ΒΡΩΜ|ΓΕΝ|ΓΕΡ|Δ|ΔΙΑΦΟΡ|ΔΙΚΑΝ|
96
- ΔΥΤ|ΕΙΔ|ΕΝΔ|ΕΞΩΔ|ΗΘ|ΘΕΤ|ΚΑΛΛΙΝ|ΚΑΛΠ|ΚΑΤΑΔ|ΚΟΥΖΙΝ|ΚΡ|ΚΩΔ|
97
- ΛΑΔ|ΛΟΓ|Μ|ΜΕΡ|ΜΟΝΑΔ|ΜΟΥΛ|ΜΟΥΣ|ΜΠΑΓΙΑΤ|ΜΠΑΝ|ΜΠΟΛ|ΜΠΟΣ|ΜΥΣΤ|
98
- Ν|ΝΙΤ|ΞΙΚ|ΟΠΤ|ΠΑΝ|ΠΕΡΙΣΤΡΟΦ|ΠΕΤΣ|ΠΙΚΑΝΤ|ΠΙΤΣ|ΠΛΑΣΤ|ΠΛΙΑΤΣ|
99
- ΠΟΝΤ|ΠΟΣΤΕΛΝ|ΠΡΩΤΟΔ|ΣΕΡΤ|ΣΗΜΑΝΤ|ΣΤΑΤ|ΣΥΝΑΔ|ΣΥΝΟΜΗΛ|ΤΕΛ|
100
- ΤΕΧΝ|ΤΗΛΕΣΚΟΠ|ΤΡΟΠ|ΤΣΑΜ|ΥΠΟΔ|Φ|ΦΙΛΟΝ|ΦΥΛΟΔ|ΦΥΣ|ΧΑΣ|ΦΥΤ)
101
- $/ux || st =~ /(ΦΟΙΝ)$/u
94
+ if ends_on_vowel?(st) || st =~ /^(ΑΔ|ΑΛ|ΑΜΑΝ|ΑΜΕΡ|ΑΜΜΟΧΑΛ|
95
+ ΑΝΗΘ|ΑΝΤΙΔ|ΑΠΛ|ΑΤΤ|ΑΦΡ|ΒΑΣ|ΒΡΩΜ|ΓΕΝ|ΓΕΡ|Δ|ΔΙΑΦΟΡ|ΔΙΚΑΝ|
96
+ ΔΥΤ|ΕΙΔ|ΕΝΔ|ΕΞΩΔ|ΗΘ|ΘΕΤ|ΚΑΛΛΙΝ|ΚΑΛΠ|ΚΑΤΑΔ|ΚΟΥΖΙΝ|ΚΡ|ΚΩΔ|
97
+ ΛΑΔ|ΛΟΓ|Μ|ΜΕΡ|ΜΟΝΑΔ|ΜΟΥΛ|ΜΟΥΣ|ΜΠΑΓΙΑΤ|ΜΠΑΝ|ΜΠΟΛ|ΜΠΟΣ|ΜΥΣΤ|
98
+ Ν|ΝΙΤ|ΞΙΚ|ΟΠΤ|ΠΑΝ|ΠΕΡΙΣΤΡΟΦ|ΠΕΤΣ|ΠΙΚΑΝΤ|ΠΙΤΣ|ΠΛΑΣΤ|ΠΛΙΑΤΣ|
99
+ ΠΟΝΤ|ΠΟΣΤΕΛΝ|ΠΡΩΤΟΔ|ΣΕΡΤ|ΣΗΜΑΝΤ|ΣΤΑΤ|ΣΥΝΑΔ|ΣΥΝΟΜΗΛ|ΤΕΛ|
100
+ ΤΕΧΝ|ΤΗΛΕΣΚΟΠ|ΤΡΟΠ|ΤΣΑΜ|ΥΠΟΔ|Φ|ΦΙΛΟΝ|ΦΥΛΟΔ|ΦΥΣ|ΧΑΣ|ΦΥΤ)
101
+ $/ux || st =~ /(ΦΟΙΝ)$/u
102
+ stem << "ΙΚ"
103
+ elsif stem == 'ΠΑΣΧΑΛΙΑΤ'
104
+ stem = 'ΠΑΣΧΑ'
105
+ end
102
106
  end
103
107
 
104
108
  # step 5a
@@ -291,8 +295,13 @@ module GreekStemmer
291
295
  ΗΚΑΤΕ|ΗΚΑΝ|ΗΣ|ΗΣΑΝ|ΗΣΑΤΕ|ΗΣΕΙ|ΗΣΕΣ|ΗΣΟΥΝ|ΗΣΩ|Ο|ΟΙ|ΟΜΑΙ|ΟΜΑΣΤΑΝ|ΟΜΟΥΝ|ΟΜΟΥΝΑ|
292
296
  ΟΝΤΑΙ|ΟΝΤΑΝ|ΟΝΤΟΥΣΑΝ|ΟΣ|ΟΣΑΣΤΑΝ|ΟΣΑΣΤΕ|ΟΣΟΥΝ|ΟΣΟΥΝΑ|ΟΤΑΝ|ΟΥ|ΟΥΜΑΙ|ΟΥΜΑΣΤΕ|
293
297
  ΟΥΝ|ΟΥΝΤΑΙ|ΟΥΝΤΑΝ|ΟΥΣ|ΟΥΣΑΝ|ΟΥΣΑΤΕ|Υ||ΥΑ|ΥΣ|Ω|ΩΝ|ΟΙΣ)$/ux) do |st, suffix|
298
+ return word if word == 'ΠΑΣΧΑ'
294
299
  word = st
295
- word << "Ο" if st =~ /^(ΣΠΟΡ)$/u && suffix != ''
300
+ if st =~ /^(ΣΠΟΡ)$/u && suffix != ''
301
+ word << "Ο"
302
+ elsif st =~ /^(ΠΑΣΧΑΛΙΝ)$/u && suffix != ''
303
+ word = 'ΠΑΣΧΑ'
304
+ end
296
305
  end
297
306
  word
298
307
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: greek_stemmer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tasos Stathopoulos
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-08-06 00:00:00.000000000 Z
12
+ date: 2019-04-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -110,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
110
  version: '0'
111
111
  requirements: []
112
112
  rubyforge_project:
113
- rubygems_version: 2.7.6
113
+ rubygems_version: 2.5.2.1
114
114
  signing_key:
115
115
  specification_version: 4
116
116
  summary: A simple Greek stemmer