srbovanje 0.1.0 → 0.2.0

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.
data/README.md ADDED
@@ -0,0 +1,28 @@
1
+ srbovanje
2
+ =========
3
+
4
+ Ruby gem za transliteraciju ćirilice na latinicu i tzv. ASCII latinicu
5
+
6
+
7
+ ## Instaliranje
8
+
9
+ gem install srbovanje
10
+
11
+
12
+ ## Korišćenje
13
+
14
+ >> "Ђурђевак".recode_sr_latin
15
+ => "Đurđevak"
16
+
17
+ >> "Железница Србије".recode_sr_ascii_latin
18
+ => "Zeleznica Srbije"
19
+
20
+
21
+ ## Zašto "recode_sr_latin" kao naziv metode?
22
+
23
+ Zbog http://man.he.net/man1/recode-sr-latin
24
+
25
+
26
+ ## Autor
27
+
28
+ [Dejan Simić](http://github.com/dejan)
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require 'rake/testtask'
2
+
3
+ desc 'Test srbovanje'
4
+ Rake::TestTask.new(:test) do |t|
5
+ t.pattern = 'test/**/*_test.rb'
6
+ end
data/lib/srbovanje.rb CHANGED
@@ -1,3 +1,5 @@
1
- $KCODE = 'UTF8'
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ $KCODE = 'UTF8' if RUBY_VERSION.to_f < 1.9
2
4
 
3
5
  require 'srbovanje/string_ext.rb'
@@ -1,6 +1,7 @@
1
- class String
1
+ # -*- encoding: utf-8 -*-
2
2
 
3
- @@latin_map = {
3
+ String.class_eval do
4
+ @@recode_sr_latin_map = {
4
5
  'а' => 'a',
5
6
  'А' => 'A',
6
7
  'б' => 'b',
@@ -62,8 +63,8 @@ class String
62
63
  'ш' => 'š',
63
64
  'Ш' => 'Š' }
64
65
 
65
- @@ascii_latin_map =
66
- @@latin_map.merge(
66
+ @@recode_sr_ascii_latin_map =
67
+ @@recode_sr_latin_map.merge(
67
68
  'ћ' => 'c',
68
69
  'ć' => 'c',
69
70
  'ч' => 'c',
@@ -87,24 +88,20 @@ class String
87
88
  'џ' => 'dz',
88
89
  'Џ' => 'DZ')
89
90
 
90
- def latin
91
- self.class.recode(self.dup, @@latin_map)
91
+ def recode_sr_latin
92
+ self.class.recode(self.dup, @@recode_sr_latin_map)
92
93
  end
93
94
 
94
- def latin!
95
- self.class.recode(self, @@latin_map)
95
+ def recode_sr_latin!
96
+ self.class.recode(self, @@recode_sr_latin_map)
96
97
  end
97
98
 
98
- def ascii_latin
99
- self.class.recode(self.dup, @@ascii_latin_map)
99
+ def recode_sr_ascii_latin
100
+ self.class.recode(self.dup, @@recode_sr_ascii_latin_map)
100
101
  end
101
102
 
102
- def ascii_latin!
103
- self.class.recode(self, @@ascii_latin_map)
104
- end
105
-
106
- def self.abeceda
107
- @@abeceda ||= %w(A B C Č Ć D DŽ Đ E F G H I J K L LJ M N NJ O P R S Š T U V Z Ž)
103
+ def recode_sr_ascii_latin!
104
+ self.class.recode(self, @@recode_sr_ascii_latin_map)
108
105
  end
109
106
 
110
107
  def self.abeceda
@@ -112,7 +109,7 @@ class String
112
109
  end
113
110
 
114
111
  def slugify(separator = '-', return_separator_if_empty = true)
115
- s = parameterize(self.ascii_latin, separator)
112
+ s = parameterize(self.recode_sr_ascii_latin, separator)
116
113
  s.empty? && return_separator_if_empty ? separator : s
117
114
  end
118
115
 
@@ -1,38 +1,40 @@
1
+ # -*- encoding: utf-8 -*-
2
+
1
3
  require File.dirname(__FILE__) + '/test_helper'
2
4
 
3
5
  class TestStringExt < Test::Unit::TestCase
4
- def test_latin
6
+ def test_recode_sr_latin
5
7
  # don't change argument
6
8
  str = "ЊЕГОШ"
7
- assert_equal("NJEGOŠ", str.latin)
9
+ assert_equal("NJEGOŠ", str.recode_sr_latin)
8
10
  assert_equal("ЊЕГОШ", str)
9
11
 
10
12
  # plain
11
- assert_equal("NJEGOŠ", "ЊЕГОШ".latin)
12
- assert_equal("Šaban Šaulić", "Шабан Шаулић".latin)
13
- assert_equal("elektrodistribucija", "електродистрибуција".latin)
14
- assert_equal("Đurđevak", "Ђурђевак".latin)
13
+ assert_equal("NJEGOŠ", "ЊЕГОШ".recode_sr_latin)
14
+ assert_equal("Šaban Šaulić", "Шабан Шаулић".recode_sr_latin)
15
+ assert_equal("elektrodistribucija", "електродистрибуција".recode_sr_latin)
16
+ assert_equal("Đurđevak", "Ђурђевак".recode_sr_latin)
15
17
 
16
18
  # non_convertive_characters
17
- assert_equal("Latinica", "Latinica".latin)
18
- assert_equal('[]2#}(,.);2@$"', '[]2#}(,.);2@$"'.latin)
19
+ assert_equal("Latinica", "Latinica".recode_sr_latin)
20
+ assert_equal('[]2#}(,.);2@$"', '[]2#}(,.);2@$"'.recode_sr_latin)
19
21
  end
20
22
 
21
- def test_latin!
23
+ def test_recode_sr_latin!
22
24
  str = "ноћ"
23
- assert_equal("noć", str.latin!)
25
+ assert_equal("noć", str.recode_sr_latin!)
24
26
  assert_equal("noć", str)
25
27
  end
26
28
 
27
- def test_ascii_latin
29
+ def test_recode_sr_ascii_latin
28
30
  str = "Железница Србије"
29
- assert_equal("Zeleznica Srbije", str.ascii_latin)
31
+ assert_equal("Zeleznica Srbije", str.recode_sr_ascii_latin)
30
32
  assert_equal("Железница Србије", str)
31
33
  end
32
34
 
33
- def test_latin!
35
+ def test_recode_sr_ascii_latin!
34
36
  str = "ноћ"
35
- assert_equal("noc", str.ascii_latin!)
37
+ assert_equal("noc", str.recode_sr_ascii_latin!)
36
38
  assert_equal("noc", str)
37
39
  end
38
40
 
data/test/test_helper.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # -*- encoding: utf-8 -*-
2
+
1
3
  require "test/unit"
2
4
 
3
5
  require File.dirname(__FILE__) + '/../lib/srbovanje'
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: srbovanje
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ hash: 23
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 2
9
+ - 0
10
+ version: 0.2.0
5
11
  platform: ruby
6
12
  authors:
7
13
  - Dejan Simic
@@ -9,11 +15,11 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2009-03-14 00:00:00 +01:00
18
+ date: 2011-01-05 00:00:00 +01:00
13
19
  default_executable:
14
20
  dependencies: []
15
21
 
16
- description: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu"
22
+ description: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu."
17
23
  email: desimic@gmail.com
18
24
  executables: []
19
25
 
@@ -22,40 +28,45 @@ extensions: []
22
28
  extra_rdoc_files: []
23
29
 
24
30
  files:
25
- - README.rdoc
26
- - VERSION.yml
31
+ - Rakefile
27
32
  - lib/srbovanje/string_ext.rb
28
33
  - lib/srbovanje.rb
29
34
  - test/string_ext_test.rb
30
35
  - test/test_helper.rb
36
+ - README.md
31
37
  has_rdoc: true
32
38
  homepage: http://github.com/dejan/srbovanje
33
39
  licenses: []
34
40
 
35
41
  post_install_message:
36
- rdoc_options:
37
- - --inline-source
38
- - --charset=UTF-8
42
+ rdoc_options: []
43
+
39
44
  require_paths:
40
45
  - lib
41
46
  required_ruby_version: !ruby/object:Gem::Requirement
47
+ none: false
42
48
  requirements:
43
49
  - - ">="
44
50
  - !ruby/object:Gem::Version
51
+ hash: 3
52
+ segments:
53
+ - 0
45
54
  version: "0"
46
- version:
47
55
  required_rubygems_version: !ruby/object:Gem::Requirement
56
+ none: false
48
57
  requirements:
49
58
  - - ">="
50
59
  - !ruby/object:Gem::Version
60
+ hash: 3
61
+ segments:
62
+ - 0
51
63
  version: "0"
52
- version:
53
64
  requirements: []
54
65
 
55
66
  rubyforge_project:
56
- rubygems_version: 1.3.5
67
+ rubygems_version: 1.3.7
57
68
  signing_key:
58
- specification_version: 2
59
- summary: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu"
69
+ specification_version: 3
70
+ summary: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu."
60
71
  test_files: []
61
72
 
data/README.rdoc DELETED
@@ -1,33 +0,0 @@
1
- = srbovanje
2
-
3
- Esencijalni Ruby Gem za Ruby aplikaciju na srpskom. Pruža mogućnosti:
4
-
5
- * transliteracije ćirilice na latinicu (npr. "Ђурђевак" u "Đurđevak")
6
- * transliteracije ćirilice na ascii latinicu (npr. "Ђурђевак" u "Djurdjevak")
7
- * slugifikacije (parametrizaciju) stringa na srpskom (npr: "Železnica Srbije" u "zeleznica-srbije")
8
- * ispisa relativnih vremena u rečima, pravopisno ispravno (npr. "3 sata"; Rails lokalizacija ne razlikuje različite oblike u zavisnosti od količine i ispisao bi pogrešno "3 sati")
9
-
10
-
11
- == Upotreba
12
-
13
- === Transliteracije ćirilice na latinicu
14
-
15
- >> "Ђурђевак".latin
16
- => "Đurđevak"
17
-
18
- === Transliteracije ćirilice na ascii latinicu
19
-
20
- >> "Ђурђевак".ascii_latin
21
- => "Djurdjevak"
22
-
23
- === slugifikacije (parametrizaciju) stringa na srpskom
24
-
25
- >> "Železnica Srbije".ascii_latin
26
- => "zeleznica-srbije"
27
-
28
- === ispisa relativnih vremena u rečima (npr. "3 sata")
29
-
30
-
31
- == Autor
32
-
33
- {Dejan Simić}[http://github.com/dejan]
data/VERSION.yml DELETED
@@ -1,4 +0,0 @@
1
- ---
2
- :major: 1
3
- :minor: 0
4
- :patch: 0