srbovanje 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -17,10 +17,15 @@ Ruby gem za transliteraciju ćirilice na latinicu i tzv. ASCII latinicu
17
17
  >> "Железница Србије".recode_sr_ascii_latin
18
18
  => "Zeleznica Srbije"
19
19
 
20
+ >> "Железница Србије".slugify
21
+ => "zeleznica-srbije"
22
+
23
+ >> String.abeceda
24
+ => ["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", "Ž"]
20
25
 
21
26
  ## Zašto "recode_sr_latin" kao naziv metode?
22
27
 
23
- Zbog http://man.he.net/man1/recode-sr-latin
28
+ Zbog <http://man.he.net/man1/recode-sr-latin>
24
29
 
25
30
 
26
31
  ## Autor
@@ -1,111 +1,115 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
 
3
3
  String.class_eval do
4
- @@recode_sr_latin_map = {
5
- 'а' => 'a',
6
- 'А' => 'A',
7
- 'б' => 'b',
8
- 'Б' => 'B',
9
- 'в' => 'v',
10
- 'В' => 'V',
11
- 'г' => 'g',
12
- 'Г' => 'G',
13
- 'д' => 'd',
14
- 'Д' => 'D',
15
- 'ђ' => 'đ',
16
- 'Ђ' => 'Đ',
17
- 'е' => 'e',
18
- 'Е' => 'E',
19
- 'ж' => 'ž',
20
- 'Ж' => 'Ž',
21
- 'з' => 'z',
22
- 'З' => 'Z',
23
- 'и' => 'i',
24
- 'И' => 'I',
25
- 'ј' => 'j',
26
- 'Ј' => 'J',
27
- 'к' => 'k',
28
- 'К' => 'K',
29
- 'л' => 'l',
30
- 'Л' => 'L',
31
- 'љ' => 'lj',
32
- 'Љ' => 'LJ',
33
- 'м' => 'm',
34
- 'М' => 'M',
35
- 'н' => 'n',
36
- 'Н' => 'N',
37
- 'њ' => 'nj',
38
- 'Њ' => 'NJ',
39
- 'о' => 'o',
40
- 'О' => 'O',
41
- 'п' => 'p',
42
- 'П' => 'P',
43
- 'р' => 'r',
44
- 'Р' => 'R',
45
- 'с' => 's',
46
- 'С' => 'S',
47
- 'т' => 't',
48
- 'Т' => 'T',
49
- 'ћ' => 'ć',
50
- 'Ћ' => 'Ć',
51
- 'ц' => 'c',
52
- 'Ц' => 'C',
53
- 'у' => 'u',
54
- 'У' => 'U',
55
- 'ф' => 'f',
56
- 'Ф' => 'F',
57
- 'х' => 'h',
58
- 'Х' => 'H',
59
- 'ч' => 'č',
60
- 'Ч' => 'Č',
61
- 'џ' => '',
62
- 'Џ' => '',
63
- 'ш' => 'š',
64
- 'Ш' => 'Š' }
4
+ def self.recode_sr_latin_map
5
+ @@recode_sr_latin_map ||= {
6
+ 'а' => 'a',
7
+ 'А' => 'A',
8
+ 'б' => 'b',
9
+ 'Б' => 'B',
10
+ 'в' => 'v',
11
+ 'В' => 'V',
12
+ 'г' => 'g',
13
+ 'Г' => 'G',
14
+ 'д' => 'd',
15
+ 'Д' => 'D',
16
+ 'ђ' => 'đ',
17
+ 'Ђ' => 'Đ',
18
+ 'е' => 'e',
19
+ 'Е' => 'E',
20
+ 'ж' => 'ž',
21
+ 'Ж' => 'Ž',
22
+ 'з' => 'z',
23
+ 'З' => 'Z',
24
+ 'и' => 'i',
25
+ 'И' => 'I',
26
+ 'ј' => 'j',
27
+ 'Ј' => 'J',
28
+ 'к' => 'k',
29
+ 'К' => 'K',
30
+ 'л' => 'l',
31
+ 'Л' => 'L',
32
+ 'љ' => 'lj',
33
+ 'Љ' => 'LJ',
34
+ 'м' => 'm',
35
+ 'М' => 'M',
36
+ 'н' => 'n',
37
+ 'Н' => 'N',
38
+ 'њ' => 'nj',
39
+ 'Њ' => 'NJ',
40
+ 'о' => 'o',
41
+ 'О' => 'O',
42
+ 'п' => 'p',
43
+ 'П' => 'P',
44
+ 'р' => 'r',
45
+ 'Р' => 'R',
46
+ 'с' => 's',
47
+ 'С' => 'S',
48
+ 'т' => 't',
49
+ 'Т' => 'T',
50
+ 'ћ' => 'ć',
51
+ 'Ћ' => 'Ć',
52
+ 'ц' => 'c',
53
+ 'Ц' => 'C',
54
+ 'у' => 'u',
55
+ 'У' => 'U',
56
+ 'ф' => 'f',
57
+ 'Ф' => 'F',
58
+ 'х' => 'h',
59
+ 'Х' => 'H',
60
+ 'ч' => 'č',
61
+ 'Ч' => 'Č',
62
+ 'џ' => '',
63
+ 'Џ' => '',
64
+ 'ш' => 'š',
65
+ 'Ш' => 'Š' }
66
+ end
67
+
68
+ def self.recode_sr_ascii_latin_map
69
+ @@recode_sr_ascii_latin_map ||=
70
+ recode_sr_latin_map.merge(
71
+ 'ћ' => 'c',
72
+ 'ć' => 'c',
73
+ 'ч' => 'c',
74
+ 'č' => 'c',
75
+ 'Ћ' => 'C',
76
+ 'Ć' => 'C',
77
+ 'Ч' => 'C',
78
+ 'Č' => 'C',
79
+ 'ж' => 'z',
80
+ 'ž' => 'z',
81
+ 'Ж' => 'Z',
82
+ 'Ž' => 'Z',
83
+ 'š' => 's',
84
+ 'ш' => 's',
85
+ 'Ш' => 'S',
86
+ 'Š' => 'S',
87
+ 'đ' => 'dj',
88
+ 'ђ' => 'dj',
89
+ 'Ђ' => 'DJ',
90
+ 'Đ' => 'DJ',
91
+ 'џ' => 'dz',
92
+ 'Џ' => 'DZ')
93
+ end
65
94
 
66
- @@recode_sr_ascii_latin_map =
67
- @@recode_sr_latin_map.merge(
68
- 'ћ' => 'c',
69
- 'ć' => 'c',
70
- 'ч' => 'c',
71
- 'č' => 'c',
72
- 'Ћ' => 'C',
73
- 'Ć' => 'C',
74
- 'Ч' => 'C',
75
- 'Č' => 'C',
76
- 'ж' => 'z',
77
- 'ž' => 'z',
78
- 'Ж' => 'Z',
79
- 'Ž' => 'Z',
80
- 'š' => 's',
81
- 'ш' => 's',
82
- 'Ш' => 'S',
83
- 'Š' => 'S',
84
- 'đ' => 'dj',
85
- 'ђ' => 'dj',
86
- 'Ђ' => 'DJ',
87
- 'Đ' => 'DJ',
88
- 'џ' => 'dz',
89
- 'Џ' => 'DZ')
95
+ def self.abeceda
96
+ @@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 Ž)
97
+ end
90
98
 
91
99
  def recode_sr_latin
92
- self.class.recode(self.dup, @@recode_sr_latin_map)
100
+ self.class.recode(self.dup, self.class.recode_sr_latin_map)
93
101
  end
94
102
 
95
103
  def recode_sr_latin!
96
- self.class.recode(self, @@recode_sr_latin_map)
104
+ self.class.recode(self, self.class.recode_sr_latin_map)
97
105
  end
98
106
 
99
107
  def recode_sr_ascii_latin
100
- self.class.recode(self.dup, @@recode_sr_ascii_latin_map)
108
+ self.class.recode(self.dup, self.class.recode_sr_ascii_latin_map)
101
109
  end
102
110
 
103
111
  def recode_sr_ascii_latin!
104
- self.class.recode(self, @@recode_sr_ascii_latin_map)
105
- end
106
-
107
- def self.abeceda
108
- @@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 Ž)
112
+ self.class.recode(self, self.class.recode_sr_ascii_latin_map)
109
113
  end
110
114
 
111
115
  def slugify(separator = '-', return_separator_if_empty = true)
@@ -1,4 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ $: << "."
2
3
 
3
4
  require File.dirname(__FILE__) + '/test_helper'
4
5
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: srbovanje
3
3
  version: !ruby/object:Gem::Version
4
- hash: 23
4
+ hash: 21
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 2
9
- - 0
10
- version: 0.2.0
9
+ - 1
10
+ version: 0.2.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Dejan Simic