stringex 2.2.1 → 2.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/Gemfile +1 -1
- data/VERSION +1 -1
- data/lib/stringex/unidecoder.rb +17 -16
- data/stringex.gemspec +5 -5
- data/test/unit/unicode_point_suite/basic_latin_test.rb +3 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NDFjMTk3NzM4MjA3YjNjYWYzNzVlYTNhMmU5M2IyNDM1YTAxZDY0OQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
OTNhMjhlZmYwYTFjN2E3MmI3ZmQyZDIxNmYwZGQ0NTU3ZjhmNTVmZg==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MjE0YjM3ZDI5NzA1ZWQ4YmI1ZDAwNTMzYWY0MzlhMjFlNWVkYmQ4YzViOWUw
|
10
|
+
MjRjOTQ5ODBmNzE1YTZmYjg2NGZlMDg5MDg0MDgwOWFhZjcxYTNlNDdmMTE1
|
11
|
+
OGIyN2VjN2UyODk2N2IxNzM1YjdiZjYwOWZhZjUzYWYyM2Y2NTY=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MDZmYTE4OTIzZGIyYTQ1ZTEwNzY5MTIyZTVkNTY0YmY3YmM3ZWNmMTQ1MzEw
|
14
|
+
MzQ5NzM1MTBlMzAyYmM4N2ViNTQwMzFmNGIwNTEzZGE3MzQyYzEyOTlmNDI5
|
15
|
+
ZDFlNmU4ODRhNzQ5ZWVjNTFjM2JkMjYxM2UzOWI2MmRlYTQxMzA=
|
data/Gemfile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.2.
|
1
|
+
2.2.2
|
data/lib/stringex/unidecoder.rb
CHANGED
@@ -14,20 +14,7 @@ module Stringex
|
|
14
14
|
#
|
15
15
|
# You're probably better off just using the added String#to_ascii
|
16
16
|
def decode(string)
|
17
|
-
string.
|
18
|
-
if localized = translate(codepoint)
|
19
|
-
localized
|
20
|
-
else
|
21
|
-
begin
|
22
|
-
unpacked = codepoint.unpack("U")[0]
|
23
|
-
CODEPOINTS[code_group(unpacked)][grouped_point(unpacked)]
|
24
|
-
rescue
|
25
|
-
# Hopefully this won't come up much
|
26
|
-
# TODO: Make this note something to the user that is reportable to me perhaps
|
27
|
-
"?"
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
17
|
+
string.chars.map{|char| decoded(char)}.join
|
31
18
|
end
|
32
19
|
|
33
20
|
# Returns character for the given Unicode codepoint
|
@@ -49,8 +36,22 @@ module Stringex
|
|
49
36
|
|
50
37
|
private
|
51
38
|
|
52
|
-
def
|
53
|
-
|
39
|
+
def decoded(character)
|
40
|
+
localized(character) || from_yaml(character)
|
41
|
+
end
|
42
|
+
|
43
|
+
def localized(character)
|
44
|
+
Localization.translate(:transliterations, character)
|
45
|
+
end
|
46
|
+
|
47
|
+
def from_yaml(character)
|
48
|
+
return character unless character.ord > 128
|
49
|
+
unpacked = character.unpack("U")[0]
|
50
|
+
CODEPOINTS[code_group(unpacked)][grouped_point(unpacked)]
|
51
|
+
rescue
|
52
|
+
# Hopefully this won't come up much
|
53
|
+
# TODO: Make this note something to the user that is reportable to me perhaps
|
54
|
+
"?"
|
54
55
|
end
|
55
56
|
|
56
57
|
# Returns the Unicode codepoint grouping for the given character
|
data/stringex.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "stringex"
|
8
|
-
s.version = "2.2.
|
8
|
+
s.version = "2.2.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Russell Norris"]
|
12
|
-
s.date = "2014-03-
|
12
|
+
s.date = "2014-03-10"
|
13
13
|
s.description = "Some [hopefully] useful extensions to Ruby's String class. Stringex is made up of three libraries: ActsAsUrl [permalink solution with better character translation], Unidecoder [Unicode to ASCII transliteration], and StringExtensions [miscellaneous helper methods for the String class]."
|
14
14
|
s.email = "rsl@luckysneaks.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -272,7 +272,7 @@ Gem::Specification.new do |s|
|
|
272
272
|
s.specification_version = 4
|
273
273
|
|
274
274
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
275
|
-
s.add_development_dependency(%q<jeweler>, ["=
|
275
|
+
s.add_development_dependency(%q<jeweler>, ["= 2.0.1"])
|
276
276
|
s.add_development_dependency(%q<travis-lint>, ["= 1.7.0"])
|
277
277
|
s.add_development_dependency(%q<RedCloth>, ["= 4.2.9"])
|
278
278
|
s.add_development_dependency(%q<sqlite3>, ["= 1.3.7"])
|
@@ -280,7 +280,7 @@ Gem::Specification.new do |s|
|
|
280
280
|
s.add_development_dependency(%q<i18n>, ["= 0.6.9"])
|
281
281
|
s.add_development_dependency(%q<i18n>, ["= 0.6.9"])
|
282
282
|
else
|
283
|
-
s.add_dependency(%q<jeweler>, ["=
|
283
|
+
s.add_dependency(%q<jeweler>, ["= 2.0.1"])
|
284
284
|
s.add_dependency(%q<travis-lint>, ["= 1.7.0"])
|
285
285
|
s.add_dependency(%q<RedCloth>, ["= 4.2.9"])
|
286
286
|
s.add_dependency(%q<sqlite3>, ["= 1.3.7"])
|
@@ -289,7 +289,7 @@ Gem::Specification.new do |s|
|
|
289
289
|
s.add_dependency(%q<i18n>, ["= 0.6.9"])
|
290
290
|
end
|
291
291
|
else
|
292
|
-
s.add_dependency(%q<jeweler>, ["=
|
292
|
+
s.add_dependency(%q<jeweler>, ["= 2.0.1"])
|
293
293
|
s.add_dependency(%q<travis-lint>, ["= 1.7.0"])
|
294
294
|
s.add_dependency(%q<RedCloth>, ["= 4.2.9"])
|
295
295
|
s.add_dependency(%q<sqlite3>, ["= 1.3.7"])
|
@@ -108,7 +108,9 @@ class BasicLatinTest < Test::Unit::TestCase
|
|
108
108
|
end
|
109
109
|
|
110
110
|
def test_grave_accents
|
111
|
-
assert_equal_encoded "'", %w{
|
111
|
+
assert_equal_encoded "'", %w{02cb 2035}
|
112
|
+
# Ascii grave accent should remain as ascii!
|
113
|
+
assert_equal_encoded "`", "0060"
|
112
114
|
end
|
113
115
|
|
114
116
|
def test_bars
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stringex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Russell Norris
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-03-
|
11
|
+
date: 2014-03-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jeweler
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 2.0.1
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 2.0.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: travis-lint
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|