conjugate 1.4.4 → 1.4.5
Sign up to get free protection for your applications and to get access to all the features.
- data/conjugate.gemspec +1 -1
- data/lib/conjugate/common.rb +7 -7
- data/lib/conjugate/french.rb +9 -5
- data/lib/conjugate/french_templates/irregular_verbs.rb +27 -1
- metadata +1 -2
data/conjugate.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'conjugate'
|
3
|
-
s.version = '1.4.
|
3
|
+
s.version = '1.4.5'
|
4
4
|
s.date = '2012-02-15'
|
5
5
|
s.summary = "Conjugate Verbs using a version of the templates defined here http://en.wiktionary.org/wiki/Category:Spanish_verb_inflection-table_templates"
|
6
6
|
s.description = s.summary
|
data/lib/conjugate/common.rb
CHANGED
@@ -18,13 +18,12 @@ module Common
|
|
18
18
|
|
19
19
|
verb_parts = divide_infinitive(infinitive, verb)
|
20
20
|
debug(verb_parts)
|
21
|
-
|
22
|
-
return nil if template[tense].nil? || template[tense][opts[:pronoun].to_sym].nil?
|
23
|
-
|
21
|
+
debug(tense)
|
22
|
+
return nil if (tense != :passe_compose) && (template[tense].nil? || template[tense][opts[:pronoun].to_sym].nil?)
|
23
|
+
debug('v')
|
24
24
|
conjugation_template = nil
|
25
|
-
|
25
|
+
|
26
26
|
if defined? conjugation_template_finder
|
27
|
-
debug('s')
|
28
27
|
conjugation_template = conjugation_template_finder(template, tense, opts).dup
|
29
28
|
else
|
30
29
|
conjugation_template = template[tense][opts[:pronoun].to_sym].dup
|
@@ -88,8 +87,9 @@ module Common
|
|
88
87
|
# stubbed method individual languages override this to support multiple tenses names
|
89
88
|
def common_name(t)
|
90
89
|
return nil unless t
|
91
|
-
|
92
|
-
|
90
|
+
actual_tense = t.to_s.gsub(' ', '_').to_sym
|
91
|
+
changable_names = {:past => :preterite, :passé_composé => :passe_compose}
|
92
|
+
actual_tense = changable_names[actual_tense] || actual_tense
|
93
93
|
actual_tense
|
94
94
|
end
|
95
95
|
|
data/lib/conjugate/french.rb
CHANGED
@@ -21,12 +21,16 @@ module Conjugate
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def conjugation_template_finder(template, tense, opts)
|
24
|
-
|
25
|
-
if opts[:tense] == 'passé composé' || opts[:tense] == 'passe compose'
|
24
|
+
if tense == :passe_compose
|
26
25
|
if is_etre_verb(opts[:verb])
|
27
|
-
|
26
|
+
debug('h')
|
27
|
+
debug(FrenchTemplates[:être])
|
28
|
+
debug(FrenchTemplates[:être][:present])
|
29
|
+
debug(FrenchTemplates[:être][:present][opts[:pronoun].to_sym])
|
30
|
+
debug(template)
|
31
|
+
FrenchTemplates[:être][:present][opts[:pronoun].to_sym] + ' ' + template[:past_participle]
|
28
32
|
else
|
29
|
-
FrenchTemplates[:avoir][:present][opts[:pronoun]] + ' ' + template[:
|
33
|
+
FrenchTemplates[:avoir][:present][opts[:pronoun].to_sym] + ' ' + template[:past_participle]
|
30
34
|
end
|
31
35
|
else
|
32
36
|
template[tense][opts[:pronoun].to_sym]
|
@@ -34,7 +38,7 @@ module Conjugate
|
|
34
38
|
end
|
35
39
|
|
36
40
|
def is_etre_verb(verb)
|
37
|
-
['monter', 'rester', 'sortir', 'venir', 'aller', 'naître', 'descendre', 'entrer', 'retourner', 'tomber', 'renter', 'arriver', 'mourir', 'partir', 'passer', 'décéder'].include? verb.downcase
|
41
|
+
['monter', 'rester', 'sortir', 'venir', 'aller', 'naître', 'descendre', 'entrer', 'retourner', 'tomber', 'renter', 'arriver', 'mourir', 'partir', 'passer', 'décéder', 'redescendre', 'rentrer', 'remonter', 'repartir', 'renaître', 'retomber', 'ressortir', 'devenir', 'parvenir', 'revenir', 'survenir', 'provenir', 'intervenir', 'convenir', 'contrevenir', 'advenir'].include? verb.downcase
|
38
42
|
end
|
39
43
|
|
40
44
|
end
|
@@ -337,6 +337,32 @@ FrenchIrregularVerbs = {
|
|
337
337
|
|
338
338
|
'enjoindre' => :re_gn,
|
339
339
|
|
340
|
-
'rejoindre' => :re_gn
|
340
|
+
'rejoindre' => :re_gn,
|
341
|
+
|
342
|
+
'venir' => :venir,
|
343
|
+
|
344
|
+
'devenir' => :venir,
|
345
|
+
|
346
|
+
'advenir ' => :venir,
|
347
|
+
|
348
|
+
'contrevenir' => :venir,
|
349
|
+
|
350
|
+
'circonvenir' => :venir,
|
351
|
+
|
352
|
+
'convenir' => :venir,
|
353
|
+
|
354
|
+
'intervenir' => :venir,
|
355
|
+
|
356
|
+
'parvenir' => :venir,
|
357
|
+
|
358
|
+
'prévenir' => :venir,
|
359
|
+
|
360
|
+
'provenir' => :venir,
|
361
|
+
|
362
|
+
'revenir' => :venir,
|
363
|
+
|
364
|
+
'subvenir' => :venir,
|
365
|
+
|
366
|
+
'survenir' => :venir
|
341
367
|
|
342
368
|
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: conjugate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -19,7 +19,6 @@ extra_rdoc_files: []
|
|
19
19
|
files:
|
20
20
|
- .DS_Store
|
21
21
|
- README.markdown
|
22
|
-
- conjugate-1.4.4.gem
|
23
22
|
- conjugate.gemspec
|
24
23
|
- lib/.DS_Store
|
25
24
|
- lib/conjugate.rb
|