arabic 0.1.0 → 0.1.1

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: 604dc2ca22bfa714e7789ff093f2ad9a66d94b261f83aeb551677ecfd3ae15e5
4
- data.tar.gz: 4f5bba1c1fe794afb1616d5df2a5c0b1cb8d302fd3c271d7ec601fcc3faa37c6
3
+ metadata.gz: 725c593f87db1e23cd83c06ff187eb7f9a029113fbc28af4681dda49fb81fec4
4
+ data.tar.gz: 4ea32537bc586d2db4e89ecdf7c653ff7b5cbaa7927fb042e2dffcd2a9d3f9b6
5
5
  SHA512:
6
- metadata.gz: 66663069f059beffcea27210dff95284e213bba88da0f6e45ad559f4f7cdb0f58915cdac17a98f911ad076f2199e6c7754926e56a5f61cb7a796d42eca45ed0f
7
- data.tar.gz: cfc371b34deb2bd777373dde9e999923b0692ddc1a7db53caa9a4e4009b28d001dd9c417e97098d83e358da1183c820ac5b31637f4a8590566ec870b5a32dc85
6
+ metadata.gz: be4569349dda9d805576da0276cae66f9356da53f3851ab2443121a71a2967b9e0aa71a35bbd8e3278958e6b7f45b21c61472b8de2d3823968d8e20128fab1f8
7
+ data.tar.gz: 8abba0bcfe3f6548e6234b57830e194afb5b09bc9696193e6eaa1b043869d0f04fc5f96bb7a1a2df9be3cf5d2269f115c7836fa9f6741c5e0952f08241f795f6
data/Gemfile.lock ADDED
@@ -0,0 +1,22 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ arabic (0.1.1)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ minitest (5.11.3)
10
+ rake (10.5.0)
11
+
12
+ PLATFORMS
13
+ ruby
14
+
15
+ DEPENDENCIES
16
+ arabic!
17
+ bundler (~> 1.16)
18
+ minitest (~> 5.0)
19
+ rake (~> 10.0)
20
+
21
+ BUNDLED WITH
22
+ 1.16.2
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Arabic
2
2
 
3
- Romanization of Arabic. It transliterates Arabic text to the Roman (Latin) script
3
+ Romanization of Arabic. It transliterates Arabic text to the Roman (Latin) script.
4
4
 
5
5
  ## Installation
6
6
 
@@ -20,6 +20,12 @@ Or install it yourself as:
20
20
 
21
21
  ## Usage
22
22
 
23
+ ```ruby
24
+ require "arabic"
25
+ ```
26
+
27
+ And then
28
+
23
29
  ```ruby
24
30
  Arabic.transliterate("العربية")
25
31
  ```
data/lib/arabic.rb CHANGED
@@ -2,63 +2,127 @@ require "arabic/version"
2
2
 
3
3
  module Arabic
4
4
  CHARACTER_TABLE = {
5
- "٠" => "0",
6
- "١" => "1",
7
- "٢" => "2",
8
- "٣" => "3",
9
- "٤" => "4",
10
- "٥" => "5",
11
- "٦" => "6",
12
- "٧" => "7",
13
- "۸" => "8",
14
- "٩" => "9",
15
- "،" => ",",
16
- "؟" => "?",
17
- "ء" => "e",
18
- "آ" => "a",
19
- "أ" => "a",
20
- "ؤ" => "w",
21
- "إ" => "i",
22
- "ئ" => "y",
23
- "ا" => "a",
24
- "ب" => "b",
25
- "ة" => "t",
26
- "ت" => "t",
27
- "ث" => "th",
28
- "ج" => "j",
29
- "ح" => "h",
30
- "خ" => "kh",
31
- "د" => "d",
32
- "ذ" => "dh",
33
- "ر" => "r",
34
- "ز" => "z",
35
- "س" => "s",
36
- "ش" => "sh",
37
- "ص" => "s",
38
- "ض" => "d",
39
- "ط" => "t",
40
- "ظ" => "z",
41
- "ع" => "e",
42
- "غ" => "gh",
43
- "ف" => "f",
44
- "ق" => "q",
45
- "ك" => "k",
46
- "ل" => "l",
47
- "م" => "m",
48
- "ن" => "n",
49
- "ه" => "h",
50
- "و" => "w",
51
- "ى" => "a",
52
- "ي" => "y",
53
- "و‎" => "u",
54
- "َ‎" => "a",
55
- "ُ" => "u",
56
- "ِ‎" => "i"
5
+ :arabic => {
6
+ # Numbers
7
+ "٠" => "0",
8
+ "١" => "1",
9
+ "٢" => "2",
10
+ "٣" => "3",
11
+ "٤" => "4",
12
+ "٥" => "5",
13
+ "٦" => "6",
14
+ "٧" => "7",
15
+ "۸" => "8",
16
+ "٩" => "9",
17
+ # Punctuation
18
+ "،" => ",",
19
+ "؛" => ";",
20
+ "؟" => "?",
21
+ # Consonants (Letters of the Alphabet)
22
+ "ء" => "e",
23
+ "آ" => "a",
24
+ "أ" => "a",
25
+ "ؤ" => "w",
26
+ "إ" => "i",
27
+ "ئ" => "y",
28
+ "ا" => "a",
29
+ "ب" => "b",
30
+ "ة" => "t",
31
+ "ت" => "t",
32
+ "ث" => "th",
33
+ "ج" => "j",
34
+ "ح" => "h",
35
+ "خ" => "kh",
36
+ "د" => "d",
37
+ "ذ" => "dh",
38
+ "ر" => "r",
39
+ "ز" => "z",
40
+ "س" => "s",
41
+ "ش" => "sh",
42
+ "ص" => "s",
43
+ "ض" => "d",
44
+ "ط" => "t",
45
+ "ظ" => "z",
46
+ "ع" => "e",
47
+ "غ" => "gh",
48
+ "ف" => "f",
49
+ "ق" => "q",
50
+ "ك" => "k",
51
+ "ل" => "l",
52
+ "م" => "m",
53
+ "ن" => "n",
54
+ "ه" => "h",
55
+ "و" => "w",
56
+ "ى" => "a",
57
+ "ي" => "y",
58
+ "و‎" => "u",
59
+ # Vowels and Diphthongs
60
+ "َ‎" => "a",
61
+ "ُ" => "u",
62
+ "ِ‎" => "i"
63
+ },
64
+ :urdu => {
65
+ # Numbers
66
+ "٠" => "0",
67
+ "١" => "1",
68
+ "٢" => "2",
69
+ "٣" => "3",
70
+ "٤" => "4",
71
+ "٥" => "5",
72
+ "٦" => "6",
73
+ "٧" => "7",
74
+ "۸" => "8",
75
+ "٩" => "9",
76
+ # Punctuation
77
+ "،" => ",",
78
+ "؛" => ";",
79
+ "؟" => "?",
80
+ # Consonants (Letters of the Alphabet)
81
+ "ا" => "a",
82
+ "ب" => "b",
83
+ "پ" => "p",
84
+ "ت" => "t",
85
+ "ٹ" => "ṭ",
86
+ "ث" => "th",
87
+ "ج" => "j",
88
+ "چ" => "h",
89
+ "خ" => "kh",
90
+ "د" => "d",
91
+ "ڈ" => "ḍ",
92
+ "ذ" => "dh",
93
+ "ر" => "r",
94
+ "ڑ" => "ṛ",
95
+ "ز" => "z",
96
+ "ژ" => "zh",
97
+ "س" => "s",
98
+ "ش" => "sh",
99
+ "ص" => "ṣ",
100
+ "ض" => "z̤",
101
+ "ط" => "t",
102
+ "ظ" => "ẓ",
103
+ "ع" => "'",
104
+ "غ" => "gh",
105
+ "ف" => "f",
106
+ "ق" => "q",
107
+ "ک" => "k",
108
+ "گ" => "g",
109
+ "ل" => "l",
110
+ "م" => "m",
111
+ "ن" => "n",
112
+ "و" => "ū",
113
+ "ﮨ" => "h",
114
+ "ﮩ" => "h",
115
+ "ہ" => "h",
116
+ "ھ" => "h",
117
+ "ء" => "'",
118
+ "ی" => "i",
119
+ "ے" => "e"
120
+ }
57
121
  }
58
122
 
59
123
  class << self
60
- def transliterate(string="")
61
- string.to_s.gsub(Regexp.union(CHARACTER_TABLE.keys.map(&:to_s)), CHARACTER_TABLE)
124
+ def transliterate(string="", lang=:arabic)
125
+ string.to_s.gsub(Regexp.union(CHARACTER_TABLE[lang].keys.map(&:to_s)), CHARACTER_TABLE[lang])
62
126
  end
63
127
  alias_method :t, :transliterate
64
128
  end
@@ -1,3 +1,3 @@
1
1
  module Arabic
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arabic
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - rovetz
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-04-04 00:00:00.000000000 Z
11
+ date: 2018-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -63,6 +63,7 @@ files:
63
63
  - ".travis.yml"
64
64
  - CODE_OF_CONDUCT.md
65
65
  - Gemfile
66
+ - Gemfile.lock
66
67
  - LICENSE.txt
67
68
  - README.md
68
69
  - Rakefile
@@ -91,7 +92,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
92
  version: '0'
92
93
  requirements: []
93
94
  rubyforge_project:
94
- rubygems_version: 2.7.6
95
+ rubygems_version: 2.7.7
95
96
  signing_key:
96
97
  specification_version: 4
97
98
  summary: Romanization (transliteration) of Arabic