linguistics 2.0.3 → 2.0.4

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 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