linguistics 2.0.3 → 2.0.4

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
2
  SHA1:
3
- metadata.gz: 9acfd8f14c782221d110dd3dcce11f8bb9381e9c
4
- data.tar.gz: 791a541430535c481839ae83b8b71ceb90cf74d7
3
+ metadata.gz: fdef8fce2a3ef1d42a5eebbee59b9da384cfe783
4
+ data.tar.gz: b4bc7c0581b2f5b4a13af5a92e3217d0e35fdb20
5
5
  SHA512:
6
- metadata.gz: a1ac3cbfb3683f83b1ed075610277d5e79de4054a4fa9e78d79ce66dd811fcd1cf17c1ca8b8f39c0b0b296ebb00c62e331b208c33c7afbbad1cd263e21b2b9fe
7
- data.tar.gz: a5294773167d72c45c6d52ffc4cb0fd614c4ab10b9383cb9e1de58bfeb5cc50b6373da02b6e0128358a37e4857203e0e8748f9b1e2956dd22b9afe5b73fa1de4
6
+ metadata.gz: 6bde8e8fda5a99fb34c1359ff223384244239b3b13050b95afe126a6e8205402edae8c442c67f40f93e3387642f1ee22ec031f80a80e860dc977927cef1bc669
7
+ data.tar.gz: 1cf8553c4245c731e56a5c3543761aec0c2c9c5348fc248f10917ccc9feaf423120bf029c706db3b4a47e32a21831bc0e08f4c441ca17946b535ccafe8d162f7
Binary file
data.tar.gz.sig CHANGED
Binary file
data/.simplecov CHANGED
@@ -1,12 +1,9 @@
1
- # -*- ruby -*-
2
- #encoding: utf-8
3
-
4
- require 'simplecov'
5
-
6
1
  SimpleCov.start do
7
2
  add_filter 'spec'
3
+ add_group "English" do |file|
4
+ file.filename =~ %r{/en/}
5
+ end
8
6
  add_group "Needing tests" do |file|
9
7
  file.covered_percent < 90
10
8
  end
11
9
  end
12
-
data/ChangeLog CHANGED
@@ -1,12 +1,74 @@
1
+ 2015-03-01 Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * .simplecov, .travis.yml, Gemfile, Rakefile, linguistics.gemspec:
4
+ Prep for travis-ci builds
5
+ [9966bdb76f0e] [github/master, tip]
6
+
7
+ * spec/helpers.rb, spec/linguistics/en/articles_spec.rb:
8
+ Fix some missed RSpec 3 updates
9
+ [a4ce7f00edb7]
10
+
11
+ * .rvmrc:
12
+ Bump the rvmrc Ruby version
13
+ [ec800816d314]
14
+
15
+ 2015-01-26 Michael Granger <ged@FaerieMUD.org>
16
+
17
+ * lib/linguistics/en/linkparser.rb,
18
+ spec/linguistics/en/conjugation_spec.rb,
19
+ spec/linguistics/en/wordnet_spec.rb, spec/linguistics/en_spec.rb,
20
+ spec/linguistics/iso639_spec.rb:
21
+ Fix up some tests for the newest version of RSpec
22
+ [4f23d2cfc1f8]
23
+
1
24
  2013-12-02 Michael Granger <ged@FaerieMUD.org>
2
25
 
26
+ * .hgtags:
27
+ Added tag v2.0.3 for changeset 6829f7b30b38
28
+ [bf624e6c6b51]
29
+
30
+ * .hgsigs:
31
+ Added signature for changeset ca93740ec59c
32
+ [6829f7b30b38] [v2.0.3]
33
+
34
+ * History.rdoc, lib/linguistics.rb:
35
+ Bump the patch version, update history
36
+ [ca93740ec59c]
37
+
38
+ * .simplecov, Manifest.txt, README.rdoc,
39
+ examples/generalize_sentence.rb, experiments/TEMPLATE.rb.tpl,
40
+ experiments/api.rb, experiments/conjunct-with-block.rb,
41
+ experiments/farmobjs.rb, experiments/lafcadio_plural.rb,
42
+ experiments/lprintf.rb, lib/linguistics.rb,
43
+ lib/linguistics/en/articles.rb, lib/linguistics/en/conjunctions.rb,
44
+ lib/linguistics/en/infinitives.rb, lib/linguistics/en/linkparser.rb,
45
+ lib/linguistics/en/numbers.rb, lib/linguistics/en/participles.rb,
46
+ lib/linguistics/en/pluralization.rb, lib/linguistics/en/wordnet.rb,
47
+ lib/linguistics/languagebehavior.rb, spec/constants.rb,
48
+ spec/helpers.rb, spec/lib/constants.rb, spec/lib/helpers.rb,
49
+ spec/linguistics/en/articles_spec.rb,
50
+ spec/linguistics/en/conjugation_spec.rb,
51
+ spec/linguistics/en/conjunctions_spec.rb,
52
+ spec/linguistics/en/infinitives_spec.rb,
53
+ spec/linguistics/en/linkparser_spec.rb,
54
+ spec/linguistics/en/numbers_spec.rb,
55
+ spec/linguistics/en/participles_spec.rb,
56
+ spec/linguistics/en/pluralization_spec.rb,
57
+ spec/linguistics/en/stemmer_spec.rb,
58
+ spec/linguistics/en/titlecase_spec.rb,
59
+ spec/linguistics/en/wordnet_spec.rb, spec/linguistics/en_spec.rb,
60
+ spec/linguistics/inflector_spec.rb, spec/linguistics/iso639_spec.rb,
61
+ spec/linguistics/monkeypatches_spec.rb, spec/linguistics_spec.rb:
62
+ Convert to modern RSpec syntax/config.
63
+ [fea5d38ea57f]
64
+
3
65
  * lib/linguistics/en/conjugation.rb,
4
66
  spec/linguistics/en/conjugation_spec.rb:
5
67
  Merge pull request #5 from ippeiukai/fix-
6
68
  issue10-past_tense_for_words_end_with_y
7
69
 
8
70
  fix past tense for words end with y
9
- [de381a81754d] [github/master, tip]
71
+ [de381a81754d]
10
72
 
11
73
  * lib/linguistics/en/conjugation.rb,
12
74
  spec/linguistics/en/conjugation_spec.rb:
@@ -1,3 +1,8 @@
1
+ == v2.0.4 [2015-03-12] Michael Granger <ged@FaerieMUD.org>
2
+
3
+ Updates and bugfixes for Ruby 2.2.
4
+
5
+
1
6
  == v2.0.3 [2013-12-02] Michael Granger <ged@FaerieMUD.org>
2
7
 
3
8
  A bunch of fixes from Ippei UKAI <ippei_ukai@mac.com>
data/Rakefile CHANGED
@@ -1,11 +1,7 @@
1
1
  #!/usr/bin/env rake
2
2
 
3
- begin
4
- require 'rspec'
5
- require 'rspec/core/rake_task'
6
- rescue LoadError
7
- abort "This Rakefile requires RSpec. Try again after doing 'gem install rspec'"
8
- end
3
+ require 'rake/clean'
4
+ require 'rdoc/task'
9
5
 
10
6
  begin
11
7
  require 'hoe'
@@ -13,11 +9,9 @@ rescue LoadError
13
9
  abort "This Rakefile requires Hoe. Try again after doing 'gem install hoe'"
14
10
  end
15
11
 
16
- # The path to the generated .gemspec file
17
- GEMSPEC = '.gemspec'
12
+ GEMSPEC = 'linguistics.gemspec'
18
13
 
19
14
  Hoe.plugin :mercurial
20
- Hoe.plugin :bundler
21
15
  Hoe.plugin :publish
22
16
  Hoe.plugin :signing
23
17
 
@@ -32,32 +26,30 @@ hoespec = Hoe.spec 'linguistics' do |spec|
32
26
 
33
27
  spec.developer 'Michael Granger', 'ged@FaerieMUD.org'
34
28
 
35
- spec.dependency 'loggability', '~> 0.7'
29
+ spec.dependency 'loggability', '~> 0.11'
36
30
 
37
- spec.dependency 'hoe-deveiate', '~> 0.3', :development
38
- spec.dependency 'hoe-bundler', '~> 1.2', :development
31
+ spec.dependency 'hoe-deveiate', '~> 0.5', :development
39
32
  spec.dependency 'linkparser', '~> 1.1', :development
40
33
  spec.dependency 'wordnet', '~> 1.0', :development
41
34
  spec.dependency 'wordnet-defaultdb', '~> 1.0', :development
42
35
  spec.dependency 'ruby-stemmer', '~> 0.9', :development
36
+ spec.dependency 'rdoc-generator-fivefish', '~> 0', :development
43
37
 
44
- spec.spec_extras[:rdoc_options] = ['-f', 'fivefish', '-t', 'Ruby Linguistics Toolkit']
45
38
  spec.spec_extras[:post_install_message] = [
46
39
  "This library also presents tie-ins for the 'linkparser' and",
47
40
  "'wordnet' libraries, which you can enable by installing the",
48
41
  "gems of the same name."
49
42
  ].join( "\n" )
50
43
 
51
- spec.require_ruby_version( '>=1.9.3' )
44
+ spec.require_ruby_version( '>=2.0.0' )
52
45
  spec.hg_sign_tags = true if spec.respond_to?( :hg_sign_tags= )
53
46
  spec.check_history_on_release = true if spec.respond_to?( :check_history_on_release= )
54
-
55
47
  spec.rdoc_locations << "deveiate:/usr/local/www/public/code/#{remote_rdoc_dir}"
56
48
  end
57
49
 
58
50
  ENV['VERSION'] ||= hoespec.spec.version.to_s
59
51
 
60
- task 'hg:precheckin' => [ :check_history, :check_manifest, :spec ]
52
+ task 'hg:precheckin' => [ :check_history, :check_manifest, :gemspec, :spec ]
61
53
 
62
54
  desc "Build a coverage report"
63
55
  task :coverage do
@@ -66,13 +58,30 @@ task :coverage do
66
58
  end
67
59
 
68
60
 
69
- desc "generate a gemspec from your Hoe.spec"
70
- file GEMSPEC => 'Rakefile' do |task|
71
- spec = hoespec.spec.dup
61
+ # Use the fivefish formatter for docs generated from development checkout
62
+ if File.directory?( '.hg' )
63
+ require 'rdoc/task'
64
+
65
+ Rake::Task[ 'docs' ].clear
66
+ RDoc::Task.new( 'docs' ) do |rdoc|
67
+ rdoc.main = "README.rdoc"
68
+ rdoc.rdoc_files.include( "*.rdoc", "ChangeLog", "lib/**/*.rb" )
69
+ rdoc.generator = :fivefish
70
+ rdoc.title = "Ruby Linguistics"
71
+ rdoc.rdoc_dir = 'doc'
72
+ end
73
+ end
74
+
75
+ task :gemspec => GEMSPEC
76
+ file GEMSPEC => __FILE__
77
+ task GEMSPEC do |task|
78
+ spec = $hoespec.spec
72
79
  spec.files.delete( '.gemtest' )
73
- spec.version = "#{spec.version}.pre.#{Time.now.strftime("%Y%m%d%H%M%S")}"
80
+ spec.version = "#{spec.version.bump}.0.pre#{Time.now.strftime("%Y%m%d%H%M%S")}"
74
81
  File.open( task.name, 'w' ) do |fh|
75
82
  fh.write( spec.to_ruby )
76
83
  end
77
84
  end
78
85
 
86
+ CLOBBER.include( GEMSPEC.to_s )
87
+ task :default => :gemspec
@@ -12,10 +12,10 @@ module Linguistics
12
12
 
13
13
 
14
14
  # Release version
15
- VERSION = '2.0.3'
15
+ VERSION = '2.0.4'
16
16
 
17
17
  # VCS version
18
- REVISION = %q$Revision: ca93740ec59c $
18
+ REVISION = %q$Revision: 32d9bdeaf0ea $
19
19
 
20
20
  # The list of Classes to add linguistic behaviours to.
21
21
  DEFAULT_EXT_CLASSES = [ String, Numeric, Array ]
@@ -7,7 +7,7 @@ require 'linguistics/en' unless defined?( Linguistics::EN )
7
7
  #
8
8
  # == Version
9
9
  #
10
- # $Id: conjugation.rb,v de381a81754d 2013/12/02 18:09:29 ged $
10
+ # $Id: conjugation.rb,v 08d2e43206b3 2015/03/12 20:32:17 ged $
11
11
  #
12
12
  # == Authors
13
13
  #
@@ -187,12 +187,14 @@ module Linguistics::EN::Conjugation
187
187
  [ verb, person, tense ]
188
188
 
189
189
  irregular = IRREGULAR_VERBS[ verb ] or return nil
190
- self.log.debug " %p is irregular: %p, selecting %p person" %
190
+ self.log.debug " %p is irregular: %p, selecting %p variant" %
191
191
  [ verb, irregular, person ]
192
192
  irrperson = irregular[ person ] || irregular[ :* ] or return nil
193
193
  self.log.debug " selected %p. Using %p tense: %p" %
194
194
  [ irrperson, tense, irrperson[tense] ]
195
- return irrperson[ tense ]
195
+ word = irrperson[ tense ] or return nil
196
+
197
+ return word.sub( /\|.*/, '' )
196
198
  end
197
199
 
198
200
 
@@ -78,7 +78,7 @@ module Linguistics::EN::LinkParser
78
78
  if !self.has_linkparser?
79
79
  raise NotImplementedError,
80
80
  "LinkParser functions are not loaded: %s" %
81
- self.lp_error.message
81
+ self.linkparser_error.message
82
82
  end
83
83
 
84
84
  return @lp_dict ||= LinkParser::Dictionary.new( :verbosity => 0 )
@@ -24,35 +24,35 @@ module Linguistics::EN::Pluralization
24
24
  #
25
25
 
26
26
  PL_sb_irregular_s = {
27
- "ephemeris" => "ephemerides",
28
- "iris" => "irises|irides",
29
- "clitoris" => "clitorises|clitorides",
30
- "corpus" => "corpuses|corpora",
31
- "opus" => "opuses|opera",
32
- "genus" => "genera",
33
- "mythos" => "mythoi",
34
- "penis" => "penises|penes",
35
- "testis" => "testes",
27
+ "ephemeris" => "ephemerides",
28
+ "iris" => "irises|irides",
29
+ "clitoris" => "clitorises|clitorides",
30
+ "corpus" => "corpuses|corpora",
31
+ "opus" => "opuses|opera",
32
+ "genus" => "genera",
33
+ "mythos" => "mythoi",
34
+ "penis" => "penises|penes",
35
+ "testis" => "testes",
36
36
  }
37
37
 
38
38
  PL_sb_irregular_h = {
39
- "child" => "children",
40
- "brother" => "brothers|brethren",
41
- "loaf" => "loaves",
42
- "hoof" => "hoofs|hooves",
43
- "beef" => "beefs|beeves",
44
- "money" => "monies",
45
- "mongoose" => "mongooses",
46
- "ox" => "oxen",
47
- "cow" => "cows|kine",
48
- "soliloquy" => "soliloquies",
49
- "graffito" => "graffiti",
50
- "prima donna" => "prima donnas|prime donne",
51
- "octopus" => "octopuses|octopodes",
52
- "genie" => "genies|genii",
53
- "ganglion" => "ganglions|ganglia",
54
- "trilby" => "trilbys",
55
- "turf" => "turfs|turves",
39
+ "child" => "children",
40
+ "brother" => "brothers|brethren",
41
+ "loaf" => "loaves",
42
+ "hoof" => "hoofs|hooves",
43
+ "beef" => "beefs|beeves",
44
+ "money" => "monies",
45
+ "mongoose" => "mongooses",
46
+ "ox" => "oxen",
47
+ "cow" => "cows|kine",
48
+ "soliloquy" => "soliloquies",
49
+ "graffito" => "graffiti",
50
+ "prima donna" => "prima donnas|prime donne",
51
+ "octopus" => "octopuses|octopodes",
52
+ "genie" => "genies|genii",
53
+ "ganglion" => "ganglions|ganglia",
54
+ "trilby" => "trilbys",
55
+ "turf" => "turfs|turves",
56
56
  }.update( PL_sb_irregular_s )
57
57
  PL_sb_irregular = matchgroup PL_sb_irregular_h.keys
58
58
 
@@ -81,7 +81,7 @@ module Linguistics::EN::Pluralization
81
81
 
82
82
  # Classical "..en" -> "..ina"
83
83
  PL_sb_C_en_ina = matchgroup %w[
84
- stamen foramen lumen
84
+ stamen foramen lumen
85
85
  ].collect {|word| word[0...-2] }
86
86
 
87
87
  # Unconditional "..um" -> "..a"
@@ -104,16 +104,16 @@ module Linguistics::EN::Pluralization
104
104
 
105
105
  # Unconditional "..us" -> "i"
106
106
  PL_sb_U_us_i = matchgroup %w[
107
- alumnus alveolus bacillus bronchus
108
- locus nucleus stimulus meniscus
107
+ alumnus alveolus bacillus bronchus
108
+ locus nucleus stimulus meniscus
109
109
  ].collect {|word| word[0...-2]}
110
110
 
111
111
  # Classical "..us" -> "..i"
112
112
  PL_sb_C_us_i = matchgroup %w[
113
- focus radius genius
114
- incubus succubus nimbus
115
- fungus nucleolus stylus
116
- torus umbilicus uterus
113
+ focus radius genius
114
+ incubus succubus nimbus
115
+ fungus nucleolus stylus
116
+ torus umbilicus uterus
117
117
  hippopotamus
118
118
  ].collect {|word| word[0...-2]}
119
119
 
@@ -125,9 +125,9 @@ module Linguistics::EN::Pluralization
125
125
 
126
126
  # Unconditional "..on" -> "a"
127
127
  PL_sb_U_on_a = matchgroup %w[
128
- criterion perihelion aphelion
129
- phenomenon prolegomenon noumenon
130
- organon asyndeton hyperbaton
128
+ criterion perihelion aphelion
129
+ phenomenon prolegomenon noumenon
130
+ organon asyndeton hyperbaton
131
131
  ].collect {|word| word[0...-2]}
132
132
 
133
133
  # Classical "..on" -> "..a"
@@ -137,37 +137,37 @@ module Linguistics::EN::Pluralization
137
137
 
138
138
  # Classical "..o" -> "..i" (but normally -> "..os")
139
139
  PL_sb_C_o_i_a = %w[
140
- solo soprano basso alto
141
- contralto tempo piano
140
+ solo soprano basso alto
141
+ contralto tempo piano
142
142
  ]
143
143
  PL_sb_C_o_i = matchgroup PL_sb_C_o_i_a.collect{|word| word[0...-1]}
144
144
 
145
145
  # Always "..o" -> "..os"
146
146
  PL_sb_U_o_os = matchgroup( %w[
147
- albino archipelago armadillo
148
- commando crescendo fiasco
149
- ditto dynamo embryo
150
- ghetto guano inferno
151
- jumbo lumbago magneto
152
- manifesto medico octavo
153
- photo pro quarto
154
- canto lingo generalissimo
155
- stylo rhino
147
+ albino archipelago armadillo
148
+ commando crescendo fiasco
149
+ ditto dynamo embryo
150
+ ghetto guano inferno
151
+ jumbo lumbago magneto
152
+ manifesto medico octavo
153
+ photo pro quarto
154
+ canto lingo generalissimo
155
+ stylo rhino
156
156
  ] | PL_sb_C_o_i_a )
157
157
 
158
158
 
159
159
  # Unconditional "..[ei]x" -> "..ices"
160
160
  PL_sb_U_ex_ices = matchgroup %w[
161
- codex murex silex
161
+ codex murex silex
162
162
  ].collect {|word| word[0...-2]}
163
163
  PL_sb_U_ix_ices = matchgroup %w[
164
- radix helix
164
+ radix helix
165
165
  ].collect {|word| word[0...-2]}
166
166
 
167
167
  # Classical "..[ei]x" -> "..ices"
168
168
  PL_sb_C_ex_ices = matchgroup %w[
169
- vortex vertex cortex latex
170
- pontifex apex index simplex
169
+ vortex vertex cortex latex
170
+ pontifex apex index simplex
171
171
  ].collect {|word| word[0...-2]}
172
172
  PL_sb_C_ix_ices = matchgroup %w[
173
173
  appendix
@@ -176,13 +176,13 @@ module Linguistics::EN::Pluralization
176
176
 
177
177
  # Arabic: ".." -> "..i"
178
178
  PL_sb_C_i = matchgroup %w[
179
- afrit afreet efreet
179
+ afrit afreet efreet
180
180
  ]
181
181
 
182
182
 
183
183
  # Hebrew: ".." -> "..im"
184
184
  PL_sb_C_im = matchgroup %w[
185
- goy seraph cherub
185
+ goy seraph cherub
186
186
  ]
187
187
 
188
188
  # Unconditional "..man" -> "..mans"
@@ -272,10 +272,8 @@ module Linguistics::EN::Pluralization
272
272
  ]
273
273
 
274
274
  PL_sb_postfix_adj = '(' + {
275
-
276
275
  'general' => '(?!major|lieutenant|brigadier|adjutant)\S+',
277
276
  'martial' => "court",
278
-
279
277
  }.collect {|key,val|
280
278
  "(?:#{val})(?=(?:-|\\s+)#{key})"
281
279
  }.join("|") + ")(.*)"
@@ -296,64 +294,64 @@ module Linguistics::EN::Pluralization
296
294
 
297
295
 
298
296
  PL_pron_nom_h = {
299
- # Nominative Reflexive
300
- "i" => "we", "myself" => "ourselves",
301
- "you" => "you", "yourself" => "yourselves",
302
- "she" => "they", "herself" => "themselves",
303
- "he" => "they", "himself" => "themselves",
304
- "it" => "they", "itself" => "themselves",
305
- "they" => "they", "themself" => "themselves",
306
-
307
- # Possessive
308
- "mine" => "ours",
309
- "yours" => "yours",
310
- "hers" => "theirs",
311
- "his" => "theirs",
312
- "its" => "theirs",
297
+ # Nominative Reflexive
298
+ "i" => "we", "myself" => "ourselves",
299
+ "you" => "you", "yourself" => "yourselves",
300
+ "she" => "they", "herself" => "themselves",
301
+ "he" => "they", "himself" => "themselves",
302
+ "it" => "they", "itself" => "themselves",
303
+ "they" => "they", "themself" => "themselves",
304
+
305
+ # Possessive
306
+ "mine" => "ours",
307
+ "yours" => "yours",
308
+ "hers" => "theirs",
309
+ "his" => "theirs",
310
+ "its" => "theirs",
313
311
  "theirs" => "theirs",
314
312
  }
315
313
  PL_pron_nom = Regexp.new( PL_pron_nom_h.keys.join('|'), Regexp::IGNORECASE )
316
314
 
317
315
  PL_pron_acc_h = {
318
- # Accusative Reflexive
319
- "me" => "us", "myself" => "ourselves",
320
- "you" => "you", "yourself" => "yourselves",
321
- "her" => "them", "herself" => "themselves",
322
- "him" => "them", "himself" => "themselves",
323
- "it" => "them", "itself" => "themselves",
324
- "them" => "them", "themself" => "themselves",
316
+ # Accusative Reflexive
317
+ "me" => "us", "myself" => "ourselves",
318
+ "you" => "you", "yourself" => "yourselves",
319
+ "her" => "them", "herself" => "themselves",
320
+ "him" => "them", "himself" => "themselves",
321
+ "it" => "them", "itself" => "themselves",
322
+ "them" => "them", "themself" => "themselves",
325
323
  }
326
324
  PL_pron_acc = matchgroup PL_pron_acc_h.keys
327
325
 
328
326
  PL_v_irregular_pres_h = {
329
- # 1St pers. sing. 2nd pers. sing. 3rd pers. singular
330
- # 3rd pers. (indet.)
331
- "am" => "are", "are" => "are", "is" => "are",
332
- "was" => "were", "were" => "were", "was" => "were",
333
- "have" => "have", "have" => "have", "has" => "have",
327
+ # 1St pers. sing. 2nd pers. sing. 3rd pers. singular
328
+ # 3rd pers. (indet.)
329
+ "am" => "are", "are" => "are", "is" => "are",
330
+ "was" => "were", "were" => "were",
331
+ "have" => "have", "has" => "have",
334
332
  }
335
333
  PL_v_irregular_pres = matchgroup PL_v_irregular_pres_h.keys
336
334
 
337
335
  PL_v_ambiguous_pres_h = {
338
- # 1st pers. sing. 2nd pers. sing. 3rd pers. singular
339
- # 3rd pers. (indet.)
340
- "act" => "act", "act" => "act", "acts" => "act",
341
- "blame" => "blame", "blame" => "blame", "blames" => "blame",
342
- "can" => "can", "can" => "can", "can" => "can",
343
- "must" => "must", "must" => "must", "must" => "must",
344
- "fly" => "fly", "fly" => "fly", "flies" => "fly",
345
- "copy" => "copy", "copy" => "copy", "copies" => "copy",
346
- "drink" => "drink", "drink" => "drink", "drinks" => "drink",
347
- "fight" => "fight", "fight" => "fight", "fights" => "fight",
348
- "fire" => "fire", "fire" => "fire", "fires" => "fire",
349
- "like" => "like", "like" => "like", "likes" => "like",
350
- "look" => "look", "look" => "look", "looks" => "look",
351
- "make" => "make", "make" => "make", "makes" => "make",
352
- "reach" => "reach", "reach" => "reach", "reaches" => "reach",
353
- "run" => "run", "run" => "run", "runs" => "run",
354
- "sink" => "sink", "sink" => "sink", "sinks" => "sink",
355
- "sleep" => "sleep", "sleep" => "sleep", "sleeps" => "sleep",
356
- "view" => "view", "view" => "view", "views" => "view",
336
+ # 1st pers. sing. 2nd pers. sing. 3rd pers. singular
337
+ # 3rd pers. (indet.)
338
+ "act" => "act", "acts" => "act",
339
+ "blame" => "blame", "blames" => "blame",
340
+ "can" => "can",
341
+ "must" => "must",
342
+ "fly" => "fly", "flies" => "fly",
343
+ "copy" => "copy", "copies" => "copy",
344
+ "drink" => "drink", "drinks" => "drink",
345
+ "fight" => "fight", "fights" => "fight",
346
+ "fire" => "fire", "fires" => "fire",
347
+ "like" => "like", "likes" => "like",
348
+ "look" => "look", "looks" => "look",
349
+ "make" => "make", "makes" => "make",
350
+ "reach" => "reach", "reaches" => "reach",
351
+ "run" => "run", "runs" => "run",
352
+ "sink" => "sink", "sinks" => "sink",
353
+ "sleep" => "sleep", "sleeps" => "sleep",
354
+ "view" => "view", "views" => "view",
357
355
  }
358
356
  PL_v_ambiguous_pres = matchgroup PL_v_ambiguous_pres_h.keys
359
357
 
@@ -376,18 +374,18 @@ module Linguistics::EN::Pluralization
376
374
  ]
377
375
 
378
376
  PL_adj_special_h = {
379
- "a" => "some", "an" => "some",
380
- "this" => "these", "that" => "those",
377
+ "a" => "some", "an" => "some",
378
+ "this" => "these", "that" => "those",
381
379
  }
382
380
  PL_adj_special = matchgroup PL_adj_special_h.keys
383
381
 
384
382
  PL_adj_poss_h = {
385
383
  "my" => "our",
386
- "your" => "your",
387
- "its" => "their",
388
- "her" => "their",
389
- "his" => "their",
390
- "their" => "their",
384
+ "your" => "your",
385
+ "its" => "their",
386
+ "her" => "their",
387
+ "his" => "their",
388
+ "their" => "their",
391
389
  }
392
390
  PL_adj_poss = matchgroup PL_adj_poss_h.keys
393
391