czech_declensions 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -164,7 +164,7 @@ module CzechDeclensions
164
164
  @vzor << [ "ž","-[gh]a","0y","ze","0u","0o","ze","0ou", "-0y","0","0ám","0y","0y","0ách","0ami" ]
165
165
  @vzor << [ "ž","-ňa","ni","ně","ňou","ňo","ni","ňou", "-ně/ničky","ň","ňám","ně/ničky","ně/ničky","ňách","ňami" ]
166
166
  @vzor << [ "ž","-[šč]a", "0i","0e","0u","0o","0e","0ou", "-0e/0i","0","0ám","0e/0i","0e/0i","0ách","0ami" ]
167
- # @vzor << [ "ž","-r", "r","ry","ře","ru","ro","ře","rou", "-ry","r","rám","ry","ry","rách","rami" ]
167
+ @vzor << [ "ž","-r", "ry","ře","ru","ro","ře","rou", "-ry","r","rám","ry","ry","rách","rami" ]
168
168
  @vzor << [ "ž","-a", "y","e","u","o","e","ou", "-y","","ám","y","y","ách","ami" ]
169
169
 
170
170
  # vz. píseň
@@ -431,6 +431,10 @@ module CzechDeclensions
431
431
  @v10 << "alois"
432
432
  @v10 << "bartoloměj"
433
433
  @v10 << "Bartoloměj"
434
+ @v10 << "ernst"
435
+ @v10 << "Ernst"
436
+ @v10 << "ernest"
437
+ @v10 << "Ernest"
434
438
 
435
439
  # v11 - zmena rodu na zensky
436
440
  @v11 = []
@@ -552,9 +556,7 @@ module CzechDeclensions
552
556
  @vysledek = []
553
557
  @prefrod = "0"
554
558
 
555
- @ncmpreg = 0
556
- @acmpreg = ["","","","","","","","","","","",""]
557
-
559
+ @acmpreg = []
558
560
 
559
561
  end
560
562
 
@@ -562,7 +564,7 @@ module CzechDeclensions
562
564
  initialize
563
565
  on_sklonuj(slovo)
564
566
  #puts @vysledek.inspect
565
- return @vysledek[pad]
567
+ return [@vysledek[pad], @prefrod]
566
568
  end
567
569
 
568
570
  def self.on_sklonuj(vstup)
@@ -595,6 +597,8 @@ module CzechDeclensions
595
597
  vz = vz.mb_chars.downcase
596
598
  i = vz.mb_chars.length
597
599
  j = txt.mb_chars.length
600
+
601
+ @acmpreg = [] if @acmpreg.nil?
598
602
 
599
603
  if i == 0 || j == 0
600
604
  return -1
@@ -602,8 +606,6 @@ module CzechDeclensions
602
606
  i -= 1
603
607
  j -= 1
604
608
 
605
- @ncmpreg = 0
606
-
607
609
  while i >= 0 && j >= 0 do
608
610
  if vz[i] == "]"
609
611
  i -= 1
@@ -611,8 +613,7 @@ module CzechDeclensions
611
613
  while i >= 0 && vz[i] != "[" do
612
614
  if vz[i] == txt[j]
613
615
  quit = 0
614
- @acmpreg[@ncmpreg] = vz[i]
615
- @ncmpreg += 1
616
+ @acmpreg << vz[i]
616
617
  end
617
618
  i -= 1
618
619
  end
@@ -652,10 +653,9 @@ module CzechDeclensions
652
653
 
653
654
  #flgv1 = ndxv1(slovo) # je ve vyjímkách???
654
655
  flgv1 = @v1.transpose.slice(0).index(slovo)
656
+
655
657
  if flgv1.nil?
656
658
  flgv1 = -1
657
- else
658
- flgv1 = flgv1 / 3
659
659
  end
660
660
 
661
661
  if flgv1 >= 0
@@ -704,20 +704,21 @@ module CzechDeclensions
704
704
 
705
705
  def self.xedeten(txt2)
706
706
  xdetenerv = ""
707
- for xdetenei in 0...txt2.length-1 do
708
- if txt2[xdetenei] == "d" && (txt2[xdetenei + 1] == "ě" || txt2[xdetenei + 1]=="i")
707
+ xdetenei = 0
708
+ while xdetenei < txt2.length do
709
+ if txt2[xdetenei] == "d" && (txt2[xdetenei + 1] == "ě" || txt2[xdetenei + 1] == "i")
709
710
  xdetenerv += "ď"
710
711
  if txt2[xdetenei + 1] == "ě"
711
712
  xdetenerv += "e"
712
713
  xdetenei += 1
713
714
  end
714
- elsif txt2[xdetenei] == "t" && (txt2[xdetenei + 1] == "ě" || txt2[xdetenei + 1]=="i")
715
+ elsif txt2[xdetenei] == "t" && (txt2[xdetenei + 1] == "ě" || txt2[xdetenei + 1] == "i")
715
716
  xdetenerv += "ť"
716
717
  if txt2[xdetenei + 1] == "ě"
717
718
  xdetenerv += "e"
718
719
  xdetenei += 1
719
720
  end
720
- elsif txt2[xdetenei] == "n" && (txt2[xdetenei + 1] == "ě" || txt2[xdetenei + 1]=="i")
721
+ elsif txt2[xdetenei] == "n" && (txt2[xdetenei + 1] == "ě" || txt2[xdetenei + 1] == "i")
721
722
  xdetenerv += "ň";
722
723
  if txt2[xdetenei + 1] == "ě"
723
724
  xdetenerv += "e"
@@ -726,6 +727,7 @@ module CzechDeclensions
726
727
  else
727
728
  xdetenerv += txt2[xdetenei]
728
729
  end
730
+ xdetenei += 1
729
731
  end
730
732
 
731
733
  xdetenei += 1
@@ -738,7 +740,8 @@ module CzechDeclensions
738
740
 
739
741
  def self.xdetene(txt2)
740
742
  xdetenerv = ""
741
- for xdetenei in 0...txt2.length-1 do
743
+ xdetenei = 0
744
+ while xdetenei < txt2.length do
742
745
  if txt2[xdetenei] == "ď" && (txt2[xdetenei + 1] == "e" || txt2[xdetenei + 1] == "i" || txt2[xdetenei + 1] == "í")
743
746
  xdetenerv += "d"
744
747
  if txt2[xdetenei + 1] == "e"
@@ -760,6 +763,7 @@ module CzechDeclensions
760
763
  else
761
764
  xdetenerv += txt2[xdetenei]
762
765
  end
766
+ xdetenei += 1
763
767
  end
764
768
 
765
769
  xdetenei += 1
@@ -1,3 +1,3 @@
1
1
  module CzechDeclensions
2
- VERSION = "0.1.2"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: czech_declensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-01 00:00:00.000000000Z
12
+ date: 2012-08-02 00:00:00.000000000Z
13
13
  dependencies: []
14
14
  description: Tool for czech declensions
15
15
  email: