dwc_agent 3.0.17.0 → 3.0.19.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
2
  SHA256:
3
- metadata.gz: fbf89a09b7566139a99cd8cd3a41daa5866a0546fb8ddbfefe8fa75d304f9760
4
- data.tar.gz: 2f2a4799fd33449ecfe00055250c9dbdbf82199e78fbcdfb43510098868cdfbb
3
+ metadata.gz: 232c24dde9ae5ecd8221049ab24283c2480c7d09df539f0eeef6b03729295360
4
+ data.tar.gz: 3fa7afa2113b78326938849744cf2e6a5a1f4949ba8567c0dac200872a72c62f
5
5
  SHA512:
6
- metadata.gz: 604501af44237d83613eee5e5922e6d3d1fade4095d22af0060cd6c3374a78d4267abe06146929b1e313e5ce659cbdedc6d230227a72f792e80e8f9ba85efc46
7
- data.tar.gz: cacc2b1e925ab4024ffd32a1af5f6ba773e006c7ad1b0d0d512994f74bd15ec583b9742e8e92e174be180c122a491d215bce6832534180585bd370dbd5f4717f
6
+ metadata.gz: 4a5778f3d32830ff95a2790c320d838df3c2e08937d8ca66cd1d3bf2a84560ce46b286f259bb213b7cf29c298d817c5f33d8ec09f958d65fd255825dc9dc1860
7
+ data.tar.gz: 8c01720ea2044073e3c850956e74b0a01f723350abb8b6d98183f9f8a6952f17dcbb5f64ab19311d72d57ff191634c783bc2b9e93cd40fd6c1819fa6c8de83fe
@@ -78,7 +78,6 @@ module DwcAgent
78
78
  parsed_namae.family &&
79
79
  parsed_namae.family.length <=3 &&
80
80
  parsed_namae.family == parsed_namae.family.upcase &&
81
- #parsed_namae.family != NameCase(parsed_namae.family) &&
82
81
  parsed_namae.given[-1] != "."
83
82
  given = parsed_namae.given
84
83
  family = parsed_namae.family
@@ -168,6 +167,11 @@ module DwcAgent
168
167
  return default
169
168
  end
170
169
 
170
+ if !family.nil? && family.downcase.count(VOWELS) == 0 &&
171
+ !FAMILY_GREENLIST.any?{ |s| s.casecmp(family) == 0 }
172
+ return default
173
+ end
174
+
171
175
  name = {
172
176
  title: title,
173
177
  appellation: appellation,
@@ -208,7 +208,8 @@ module DwcAgent
208
208
  '-Jr' => ' Jr.',
209
209
  'Dr.' => 'Dr. ',
210
210
  'prof.' => 'Prof. ',
211
- ' .;' => '. ;'
211
+ ' .;' => '. ;',
212
+ ', &' => ' &'
212
213
  }
213
214
 
214
215
  SEPARATORS = {
@@ -219,9 +220,10 @@ module DwcAgent
219
220
  "(\\S{1}\\.)([[:alpha:]]{2,})" => "\\1 \\2",
220
221
  "^([[:alpha:]]{2,})(?:\\s+)((?:\\S{1}\\.\\s?){1,})$" => "\\1, \\2",
221
222
  "([[:alpha:]]*),?\\s*(.*)\\s+(van|von|v\\.|v(a|o)n\\s+der?)$" => "\\3 \\1, \\2",
222
- "^([A-Z.\\s]+)\\s+(?:and|&|et|e)\\s+([A-Z.\\s]+)\\s+([[:alpha:]’`'-]{2,})\\s+([[:alpha:]’`'-]{2,})$" => "\\1 \\4 | \\2 \\3 \\4",
223
- "^([A-Z.\\s]+)\\s+(?:and|&|et|e)\\s+([A-Z.\\s]+)\\s+([[:alpha:]’`'-]{2,})(.*)$" => "\\1 \\3 | \\2 \\3 | \\4",
224
- "^([A-Z.\\s]+),\\s+([A-Z.\\s]+)\\s+(?:and|&|et|e)\\s+([A-Z.\\s]+)\\s+([[:alpha:]’`'-]{2,})(.*)$" => "\\1 \\4 | \\2 \\4 | \\3 \\4 | \\5",
223
+ "^((?i:[A-Z]\\.\\s?){1,})\\s?(?:and|&|et|e)\\s+((?i:[A-Z]\\.\\s?){1,})\\s+([[:alpha:]’`'-]{2,})\\s+([[:alpha:]’`'-]{2,})$" => "\\1 \\4 | \\2 \\3 \\4",
224
+ "^((?i:[A-Z]\\.\\s?){1,})\\s?(?:and|&|et|e)\\s+((?i:[A-Z]\\.\\s?){1,})\\s+([[:alpha:]’`'-]{2,})(.*)$" => "\\1 \\3 | \\2 \\3 | \\4",
225
+ "^([A-Z]{1,3})\\s+(?:and|&|et|e)\\s+([A-Z]{1,3})\\s+([[:alpha:]’`'-]{2,})(.*)$" => "\\1 \\3 | \\2 \\3 | \\4",
226
+ "^((?i:[A-Z]\\.\\s?){1,}),\\s+([A-Z.\\s]+)\\s+(?:and|&|et|e)\\s+((?i:[A-Z]\\.\\s?){1,})\\s+([[:alpha:]’`'-]{2,})(.*)$" => "\\1 \\4 | \\2 \\4 | \\3 \\4 | \\5",
225
227
  "^([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,})\\s*?(?i:and|&|et|e|,)\\s+([A-Z][[:alpha:]]{2,})$" => "\\1 | \\2 | \\3",
226
228
  "^([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,})\\s*?(?i:and|&|et|e|,)\\s+([A-Z][[:alpha:]]{3,})$" => "\\1 | \\2 | \\3 | \\4",
227
229
  "^([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,})\\s*?(?i:and|&|et|e|,)\\s+([A-Z][[:alpha:]]{3,})$" => "\\1 | \\2 | \\3 | \\4 | \\5"
@@ -300,6 +302,18 @@ module DwcAgent
300
302
  ^\s*?de\s*?$
301
303
  }x
302
304
 
305
+ FAMILY_GREENLIST = [
306
+ "Ng",
307
+ "Srb",
308
+ "Srp",
309
+ "Vlk",
310
+ "Smrz",
311
+ "Smrž",
312
+ "Smrt",
313
+ "Krc",
314
+ "Krč"
315
+ ]
316
+
303
317
  FAMILY_BLACKLIST = [
304
318
  "a b",
305
319
  "a e",
@@ -402,4 +416,6 @@ module DwcAgent
402
416
  "von der"
403
417
  ]
404
418
 
419
+ VOWELS = "aeiouäèéêëìíôöü"
420
+
405
421
  end
@@ -4,7 +4,7 @@ module DwcAgent
4
4
 
5
5
  MAJOR = 3
6
6
  MINOR = 0
7
- PATCH = 17
7
+ PATCH = 19
8
8
  BUILD = 0
9
9
 
10
10
  def self.version
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dwc_agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.17.0
4
+ version: 3.0.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David P. Shorthouse
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-23 00:00:00.000000000 Z
11
+ date: 2024-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: namae