medieval_latina 1.1.6 → 1.2.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: d8b7d545c7b5e3d5f1fb03ae4d93be757402a1851907adbfbf85e0154531abea
4
- data.tar.gz: efd4992fa3790119c6e6b8ee0008c38079ca247364c1b8147e3cf2e54c8a4083
3
+ metadata.gz: 4fb30498f15ce0e4ff9b7b7e773dbfa36ed5da395b5a7599345f7c4f05b90e2a
4
+ data.tar.gz: 1fd0f7637559568e4c76e65a3e5a18350e2fb97004a6ca385dec61084b972c23
5
5
  SHA512:
6
- metadata.gz: b935847348129a60937e49420cd4f9515e35f9c8dd647271b7853c6050e57c67e5694ad5075469cfd80b160bd678dde1ae3d5022832d6b4c5cb3d58f018d2729
7
- data.tar.gz: 2f7251e8d402e942344edc95a8c4dc9a0380a532514fd40fd6f654191ce4e1bb2be4d62aa57a8abeffd6944b08854315f0714f3de0e4e4011984a81fc04aca34
6
+ metadata.gz: 4f928bdd12c37f4e2de41d52527d562d79e1da32abb9c1efbc63e4121a68b9b68827002ffa30023c93fa59f1785262bf3bdc51c09502cfb3023af8fa5e38168d
7
+ data.tar.gz: 11bc3bddf13d84080c3c526e09515ca3aa19a477bec2da343eb9a50fca38d9fe414549016d513ac977132fba06b6a3470a2dfaec0ade35a803c08374a717ab8c
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- medieval_latina (1.1.6)
4
+ medieval_latina (1.2.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -30,6 +30,7 @@ class MedievalLatina
30
30
  "principio" => "preen-cheepio",
31
31
  "puella" => "poo-elah",
32
32
  "quo" => "quo",
33
+ "rhenus" => "ray-noose",
33
34
  "repetite" => "reppa-teetay",
34
35
  "rex" => "rex",
35
36
  "sanctificetur" => "sahnk-teefee-chaytoor",
@@ -1,3 +1,3 @@
1
1
  class MedievalLatina
2
- VERSION = "1.1.6"
2
+ VERSION = "1.2.0"
3
3
  end
@@ -4,19 +4,13 @@ require "set"
4
4
 
5
5
  class MedievalLatina
6
6
  def self.[](text)
7
- clean(text).split(" ").map { |word|
8
- DICTIONARY[word.downcase] || new(word).call
9
- }.join(" ")
7
+ prepare(text).map do |word|
8
+ DICTIONARY[word] || new(word).call
9
+ end.join(" ")
10
10
  end
11
11
 
12
- def self.clean(text)
13
- text.chars.map do |character|
14
- if PUNCTUATION.member?(character)
15
- " "
16
- else
17
- character
18
- end
19
- end.join
12
+ def self.prepare(text)
13
+ text.gsub(/\W+/, " ").downcase.split(" ")
20
14
  end
21
15
 
22
16
  def initialize(word)
@@ -50,7 +44,6 @@ class MedievalLatina
50
44
  x: ->(rest) { "ks" }
51
45
  }
52
46
  CONSONENT_TEAMS = {gn: "n-y", qu: "kw"}.freeze
53
- PUNCTUATION = Set.new([".", ",", "!"]).freeze
54
47
  SOFT_C = ["e", "i", "ae", "oe"].freeze
55
48
  SOFT_G = SOFT_C
56
49
  SOFT_T = ["i"].freeze
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: medieval_latina
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.6
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jayson Virissimo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-10-13 00:00:00.000000000 Z
11
+ date: 2022-10-23 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: |
14
14
  There are good text-to-speech engines for English and classical Latin, but none for medieval Latin.