e4u-encode 0.0.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/.document +5 -0
- data/.gitignore +21 -0
- data/LICENSE +20 -0
- data/README.rdoc +17 -0
- data/Rakefile +50 -0
- data/VERSION +1 -0
- data/lib/e4u/encode/docomo/cp932/docomo_unicode.rb +301 -0
- data/lib/e4u/encode/docomo/cp932.rb +12 -0
- data/lib/e4u/encode/docomo/unicode/cp932.rb +5 -0
- data/lib/e4u/encode/docomo/unicode/google_unicode.rb +294 -0
- data/lib/e4u/encode/docomo/unicode/utf8.rb +5 -0
- data/lib/e4u/encode/docomo/unicode.rb +34 -0
- data/lib/e4u/encode/docomo/utf8/docomo_unicode.rb +300 -0
- data/lib/e4u/encode/docomo/utf8.rb +12 -0
- data/lib/e4u/encode/docomo.rb +50 -0
- data/lib/e4u/encode/encoding.rb +25 -0
- data/lib/e4u/encode/google/unicode/docomo_unicode.rb +818 -0
- data/lib/e4u/encode/google/unicode/kddi_unicode.rb +818 -0
- data/lib/e4u/encode/google/unicode/softbank_unicode.rb +818 -0
- data/lib/e4u/encode/google/unicode/utf8.rb +5 -0
- data/lib/e4u/encode/google/unicode.rb +45 -0
- data/lib/e4u/encode/google/utf8/unicode.rb +823 -0
- data/lib/e4u/encode/google/utf8.rb +12 -0
- data/lib/e4u/encode/google.rb +47 -0
- data/lib/e4u/encode/kddi/cp932/kddi_unicode.rb +667 -0
- data/lib/e4u/encode/kddi/cp932.rb +12 -0
- data/lib/e4u/encode/kddi/unicode/cp932.rb +5 -0
- data/lib/e4u/encode/kddi/unicode/google_unicode.rb +660 -0
- data/lib/e4u/encode/kddi/unicode/utf8.rb +5 -0
- data/lib/e4u/encode/kddi/unicode.rb +34 -0
- data/lib/e4u/encode/kddi/utf8/kddi_unicode.rb +1313 -0
- data/lib/e4u/encode/kddi/utf8.rb +12 -0
- data/lib/e4u/encode/kddi.rb +50 -0
- data/lib/e4u/encode/softbank/cp932/softbank_unicode.rb +504 -0
- data/lib/e4u/encode/softbank/cp932.rb +32 -0
- data/lib/e4u/encode/softbank/unicode/cp932.rb +5 -0
- data/lib/e4u/encode/softbank/unicode/google_unicode.rb +497 -0
- data/lib/e4u/encode/softbank/unicode/utf8.rb +5 -0
- data/lib/e4u/encode/softbank/unicode.rb +45 -0
- data/lib/e4u/encode/softbank/utf8/softbank_unicode.rb +503 -0
- data/lib/e4u/encode/softbank/utf8.rb +12 -0
- data/lib/e4u/encode/softbank.rb +53 -0
- data/lib/e4u/encode.rb +79 -0
- data/spec/docomo_spec.rb +230 -0
- data/spec/e4u_spec.rb +173 -0
- data/spec/encode_spec.rb +78 -0
- data/spec/encoding_spec.rb +47 -0
- data/spec/google_spec.rb +86 -0
- data/spec/kddi_spec.rb +130 -0
- data/spec/softbank_spec.rb +147 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +13 -0
- data/tasks/mk_docomo_cp932.rb +34 -0
- data/tasks/mk_docomo_unicode.rb +28 -0
- data/tasks/mk_docomo_utf8.rb +33 -0
- data/tasks/mk_google_unicode_docomo.rb +37 -0
- data/tasks/mk_google_unicode_kddi.rb +37 -0
- data/tasks/mk_google_unicode_softbank.rb +37 -0
- data/tasks/mk_google_utf8.rb +34 -0
- data/tasks/mk_kddi_cp932.rb +35 -0
- data/tasks/mk_kddi_unicode.rb +30 -0
- data/tasks/mk_kddi_utf8.rb +36 -0
- data/tasks/mk_softbank_cp932.rb +34 -0
- data/tasks/mk_softbank_unicode.rb +28 -0
- data/tasks/mk_softbank_utf8.rb +33 -0
- data/tasks/tables.rake +70 -0
- data/tasks/task_helper.rb +3 -0
- metadata +148 -0
data/spec/kddi_spec.rb
ADDED
@@ -0,0 +1,130 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
3
|
+
|
4
|
+
describe E4U::Encode::KDDI do
|
5
|
+
|
6
|
+
describe "encode" do
|
7
|
+
before :all do
|
8
|
+
@from, @to = {}, {}
|
9
|
+
end
|
10
|
+
|
11
|
+
it "from[:carrier]が:kddi以外ならば例外が起こる" do
|
12
|
+
@from.update :carrier => :not_kddi
|
13
|
+
lambda {
|
14
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
15
|
+
}.should raise_error
|
16
|
+
end
|
17
|
+
|
18
|
+
context "to[:carrier]が:kddi以外の時" do
|
19
|
+
before :all do
|
20
|
+
@to.update :carrier => :not_kddi
|
21
|
+
end
|
22
|
+
|
23
|
+
before :each do
|
24
|
+
@from.update :carrier => :kddi
|
25
|
+
end
|
26
|
+
|
27
|
+
it "from[:encoding]が:utf8なら :unicodeに変換される" do
|
28
|
+
@from.update :encoding => :utf8
|
29
|
+
lambda {
|
30
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
31
|
+
}.should change { @from[:encoding] }.from(:utf8).to(:unicode)
|
32
|
+
end
|
33
|
+
|
34
|
+
it "from[:encoding]が:sjisなら :unicodeに変換される" do
|
35
|
+
@from.update :encoding => :sjis
|
36
|
+
lambda {
|
37
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
38
|
+
}.should change { @from[:encoding] }.from(:sjis).to(:unicode)
|
39
|
+
end
|
40
|
+
|
41
|
+
it "from[:encoding]が:unicodeなら from[:carrier]が:googleに変換される" do
|
42
|
+
@from.update :encoding => :unicode
|
43
|
+
lambda {
|
44
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
45
|
+
}.should change { @from[:carrier] }.from(:kddi).to(:google)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
context "to[:carrier]が:kddiの時" do
|
50
|
+
before :all do
|
51
|
+
@to.update :carrier => :kddi
|
52
|
+
end
|
53
|
+
|
54
|
+
before :each do
|
55
|
+
@from.update :carrier => :kddi
|
56
|
+
end
|
57
|
+
|
58
|
+
it "from[:encoding]が:sjisならば、:unicodeに変換される" do
|
59
|
+
@from.update :encoding => :sjis
|
60
|
+
lambda {
|
61
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
62
|
+
}.should change { @from[:encoding] }.from(:sjis).to(:unicode)
|
63
|
+
end
|
64
|
+
|
65
|
+
it "from[:encoding]が:utf8ならば、:unicodeに変換される" do
|
66
|
+
@from.update :encoding => :utf8
|
67
|
+
lambda {
|
68
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
69
|
+
}.should change { @from[:encoding] }.from(:utf8).to(:unicode)
|
70
|
+
end
|
71
|
+
|
72
|
+
context "from[:encoding]が:unicodeの時" do
|
73
|
+
before :each do
|
74
|
+
@from.update :encoding => :unicode
|
75
|
+
end
|
76
|
+
|
77
|
+
it "to[:encoding]が:sjisならば、from[:encoding]も:sjisになる" do
|
78
|
+
@to.update :encoding => :sjis
|
79
|
+
lambda {
|
80
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
81
|
+
}.should change { @from[:encoding] }.from(:unicode).to(:sjis)
|
82
|
+
end
|
83
|
+
|
84
|
+
it "to[:encoding]が:utf8ならば、from[:encoding]も:utf8になる" do
|
85
|
+
@to.update :encoding => :utf8
|
86
|
+
lambda {
|
87
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
88
|
+
}.should change { @from[:encoding] }.from(:unicode).to(:utf8)
|
89
|
+
end
|
90
|
+
|
91
|
+
it "to[:encoding]が:sjis、:utf8以外ならば、例外が起こる" do
|
92
|
+
@to.update :encoding => :other_encoding
|
93
|
+
lambda {
|
94
|
+
E4U::Encode::KDDI.encode('', @from, @to)
|
95
|
+
}.should raise_error
|
96
|
+
end
|
97
|
+
|
98
|
+
it "to[:encoding]が:sjisならば、CP932な文字列が返ってくる" do
|
99
|
+
pending "only RUBY_VERSION >= '1.9.1'" unless RUBY_VERSION >= '1.9.1'
|
100
|
+
str = "とある文字列の符号化方式<エンコーディング>"
|
101
|
+
@to.update :encoding => :sjis
|
102
|
+
E4U::Encode::KDDI.encode(str, @from, @to).encoding.should == Encoding::Windows_31J
|
103
|
+
# lambda {
|
104
|
+
# E4U::Encode::KDDI.encode(str, @from, @to)
|
105
|
+
# }.should change(str, :encoding).from(Encoding::UTF_8).to(Encoding::Windows_31J)
|
106
|
+
end
|
107
|
+
|
108
|
+
it "to[:encoding]が:utf8ならば、UTF-8な文字列が返ってくる" do
|
109
|
+
pending "only RUBY_VERSION >= '1.9.1'" unless RUBY_VERSION >= '1.9.1'
|
110
|
+
str = "とある文字列の符号化方式<エンコーディング>"
|
111
|
+
@to.update :encoding => :utf8
|
112
|
+
E4U::Encode::KDDI.encode(str, @from, @to).encoding.should == Encoding::UTF_8
|
113
|
+
# lambda {
|
114
|
+
# E4U::Encode::KDDI.encode(str, @from, @to)
|
115
|
+
# }.should change(str, :encoding).from(Encoding::UTF_8).to(Encoding::UTF_8)
|
116
|
+
end
|
117
|
+
|
118
|
+
it "to[:encoding]が:unicodeならば、UTF-8な文字列が返ってくる" do
|
119
|
+
pending "only RUBY_VERSION >= '1.9.1'" unless RUBY_VERSION >= '1.9.1'
|
120
|
+
str = "とある文字列の符号化方式<エンコーディング>"
|
121
|
+
@to.update :encoding => :utf8
|
122
|
+
E4U::Encode::KDDI.encode(str, @from, @to).encoding.should == Encoding::UTF_8
|
123
|
+
# lambda {
|
124
|
+
# E4U::Encode::KDDI.encode(str, @from, @to)
|
125
|
+
# }.should change(str, :encoding).from(Encoding::UTF_8).to(Encoding::UTF_8)
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
end
|
130
|
+
end
|
@@ -0,0 +1,147 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
3
|
+
|
4
|
+
describe E4U::Encode::Softbank do
|
5
|
+
|
6
|
+
describe "encode" do
|
7
|
+
before :all do
|
8
|
+
@from, @to = {}, {}
|
9
|
+
end
|
10
|
+
|
11
|
+
it "from[:carrier]が:softbank以外ならば例外が起こる" do
|
12
|
+
@from.update :carrier => :not_softbank
|
13
|
+
lambda {
|
14
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
15
|
+
}.should raise_error
|
16
|
+
end
|
17
|
+
|
18
|
+
context "to[:carrier]が:softbank以外の時" do
|
19
|
+
before :all do
|
20
|
+
@to.update :carrier => :not_softbank
|
21
|
+
end
|
22
|
+
|
23
|
+
before :each do
|
24
|
+
@from.update :carrier => :softbank
|
25
|
+
end
|
26
|
+
|
27
|
+
it "from[:encoding]が:utf8なら :unicodeに変換される" do
|
28
|
+
@from.update :encoding => :utf8
|
29
|
+
lambda {
|
30
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
31
|
+
}.should change { @from[:encoding] }.from(:utf8).to(:unicode)
|
32
|
+
end
|
33
|
+
|
34
|
+
it "from[:encoding]が:sjisなら :unicodeに変換される" do
|
35
|
+
@from.update :encoding => :sjis
|
36
|
+
lambda {
|
37
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
38
|
+
}.should change { @from[:encoding] }.from(:sjis).to(:unicode)
|
39
|
+
end
|
40
|
+
|
41
|
+
it "from[:encoding]が:unicodeなら from[:carrier]が:googleに変換される" do
|
42
|
+
@from.update :encoding => :unicode
|
43
|
+
lambda {
|
44
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
45
|
+
}.should change { @from[:carrier] }.from(:softbank).to(:google)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
context "to[:carrier]が:softbankの時" do
|
50
|
+
before :all do
|
51
|
+
@to.update :carrier => :softbank
|
52
|
+
end
|
53
|
+
|
54
|
+
before :each do
|
55
|
+
@from.update :carrier => :softbank
|
56
|
+
end
|
57
|
+
|
58
|
+
it "from[:encoding]が:sjisならば、:unicodeに変換される" do
|
59
|
+
@from.update :encoding => :sjis
|
60
|
+
lambda {
|
61
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
62
|
+
}.should change { @from[:encoding] }.from(:sjis).to(:unicode)
|
63
|
+
end
|
64
|
+
|
65
|
+
it "from[:encoding]が:utf8ならば、:unicodeに変換される" do
|
66
|
+
@from.update :encoding => :utf8
|
67
|
+
lambda {
|
68
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
69
|
+
}.should change { @from[:encoding] }.from(:utf8).to(:unicode)
|
70
|
+
end
|
71
|
+
|
72
|
+
context "from[:encoding]が:unicodeの時" do
|
73
|
+
before :each do
|
74
|
+
@from.update :encoding => :unicode
|
75
|
+
end
|
76
|
+
|
77
|
+
it "to[:encoding]が:sjisならば、from[:encoding]も:sjisになる" do
|
78
|
+
@to.update :encoding => :sjis
|
79
|
+
lambda {
|
80
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
81
|
+
}.should change { @from[:encoding] }.from(:unicode).to(:sjis)
|
82
|
+
end
|
83
|
+
|
84
|
+
it "to[:encoding]が:utf8ならば、from[:encoding]も:utf8になる" do
|
85
|
+
@to.update :encoding => :utf8
|
86
|
+
lambda {
|
87
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
88
|
+
}.should change { @from[:encoding] }.from(:unicode).to(:utf8)
|
89
|
+
end
|
90
|
+
|
91
|
+
it "to[:encoding]が:webcodeならば、from[:encoding]も:webcodeになる" do
|
92
|
+
@to.update :encoding => :webcode
|
93
|
+
lambda {
|
94
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
95
|
+
}.should change { @from[:encoding] }.from(:unicode).to(:webcode)
|
96
|
+
end
|
97
|
+
|
98
|
+
it "to[:encoding]が:sjis、:utf8、:webcode以外ならば、例外が起こる" do
|
99
|
+
@to.update :encoding => :other_encoding
|
100
|
+
lambda {
|
101
|
+
E4U::Encode::Softbank.encode('', @from, @to)
|
102
|
+
}.should raise_error
|
103
|
+
end
|
104
|
+
|
105
|
+
it "to[:encoding]が:sjisならば、CP932な文字列が返ってくる" do
|
106
|
+
pending "only RUBY_VERSION >= '1.9.1'" unless RUBY_VERSION >= '1.9.1'
|
107
|
+
str = "とある文字列の符号化方式<エンコーディング>"
|
108
|
+
@to.update :encoding => :sjis
|
109
|
+
E4U::Encode::Softbank.encode(str, @from, @to).encoding.should == Encoding::Windows_31J
|
110
|
+
# lambda {
|
111
|
+
# E4U::Encode::Softbank.encode(str, @from, @to)
|
112
|
+
# }.should change(str, :encoding).from(Encoding::UTF_8).to(Encoding::Windows_31J)
|
113
|
+
end
|
114
|
+
|
115
|
+
it "to[:encoding]が:webcodeならば、CP932な文字列が返ってくる" do
|
116
|
+
pending "only RUBY_VERSION >= '1.9.1'" unless RUBY_VERSION >= '1.9.1'
|
117
|
+
str = "とある文字列の符号化方式<エンコーディング>"
|
118
|
+
@to.update :encoding => :webcode
|
119
|
+
E4U::Encode::Softbank.encode(str, @from, @to).encoding.should == Encoding::Windows_31J
|
120
|
+
# lambda {
|
121
|
+
# E4U::Encode::Softbank.encode(str, @from, @to)
|
122
|
+
# }.should change(str, :encoding).from(Encoding::UTF_8).to(Encoding::Windows_31J)
|
123
|
+
end
|
124
|
+
|
125
|
+
it "to[:encoding]が:utf8ならば、UTF-8な文字列が返ってくる" do
|
126
|
+
pending "only RUBY_VERSION >= '1.9.1'" unless RUBY_VERSION >= '1.9.1'
|
127
|
+
str = "とある文字列の符号化方式<エンコーディング>"
|
128
|
+
@to.update :encoding => :utf8
|
129
|
+
E4U::Encode::Softbank.encode(str, @from, @to).encoding.should == Encoding::UTF_8
|
130
|
+
# lambda {
|
131
|
+
# E4U::Encode::Softbank.encode(str, @from, @to)
|
132
|
+
# }.should change(str, :encoding).from(Encoding::UTF_8).to(Encoding::UTF_8)
|
133
|
+
end
|
134
|
+
|
135
|
+
it "to[:encoding]が:unicodeならば、UTF-8な文字列が返ってくる" do
|
136
|
+
pending "only RUBY_VERSION >= '1.9.1'" unless RUBY_VERSION >= '1.9.1'
|
137
|
+
str = "とある文字列の符号化方式<エンコーディング>"
|
138
|
+
@to.update :encoding => :utf8
|
139
|
+
E4U::Encode::Softbank.encode(str, @from, @to).encoding.should == Encoding::UTF_8
|
140
|
+
# lambda {
|
141
|
+
# E4U::Encode::Softbank.encode(str, @from, @to)
|
142
|
+
# }.should change(str, :encoding).from(Encoding::UTF_8).to(Encoding::UTF_8)
|
143
|
+
end
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
147
|
+
end
|
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
2
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
3
|
+
require 'e4u/encode'
|
4
|
+
require 'spec'
|
5
|
+
require 'spec/autorun'
|
6
|
+
|
7
|
+
require 'nkf'
|
8
|
+
require 'rubygems'
|
9
|
+
require 'e4u'
|
10
|
+
|
11
|
+
Spec::Runner.configure do |config|
|
12
|
+
|
13
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_docomo_cp932 target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
$KCODE = 'u' if RUBY_VERSION < '1.9.1'
|
8
|
+
module E4U
|
9
|
+
module Encode
|
10
|
+
module DoCoMo
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
class E4U::Encode::DoCoMo::Cp932
|
15
|
+
DOCOMO_UNICODE = {
|
16
|
+
<% E4U.docomo.each do |e| -%>
|
17
|
+
<% docomo = e.docomo_emoji -%>
|
18
|
+
((s = [0x<%= "%X" % docomo.sjis.unpack('n') %>].pack('n')) && RUBY_VERSION < '1.9.1' ? s : s.force_encoding('CP932')) => '<%= docomo.unicode.upcase %>'.freeze,
|
19
|
+
<% end -%>
|
20
|
+
}.freeze
|
21
|
+
|
22
|
+
DOCOMO_UNICODE_REGEXP = Regexp.union(*DOCOMO_UNICODE.keys.map(&((RUBY_VERSION < '1.9.1') ?
|
23
|
+
(lambda { |e|
|
24
|
+
Regexp.new(Regexp.escape(e,'s'),nil,'s')
|
25
|
+
}) :
|
26
|
+
(lambda { |e|
|
27
|
+
Regexp.new(Regexp.escape(e))
|
28
|
+
})))).freeze
|
29
|
+
end
|
30
|
+
ERB
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_docomo_unicode target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
module E4U
|
8
|
+
module Encode
|
9
|
+
module DoCoMo
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
class E4U::Encode::DoCoMo::Unicode
|
14
|
+
GOOGLE_UNICODE = {
|
15
|
+
<% E4U.docomo.each do |e| -%>
|
16
|
+
<% docomo = e.docomo_emoji -%>
|
17
|
+
<% google = E4U.google.find{|emoji| docomo.unicode == emoji[:docomo] } -%>
|
18
|
+
'<%= docomo.unicode.upcase %>' => '<%= google[:google].upcase %>'.freeze,
|
19
|
+
<% end -%>
|
20
|
+
}.freeze
|
21
|
+
|
22
|
+
GOOGLE_UNICODE_REGEXP = Regexp.new("&#x((?i:#{GOOGLE_UNICODE.keys.join('|')}));").freeze
|
23
|
+
end
|
24
|
+
ERB
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_docomo_utf8 target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
module E4U
|
8
|
+
module Encode
|
9
|
+
module DoCoMo
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
class E4U::Encode::DoCoMo::Utf8
|
14
|
+
DOCOMO_UNICODE = {
|
15
|
+
<% E4U.docomo.each do |e| -%>
|
16
|
+
<% docomo = e.docomo_emoji -%>
|
17
|
+
[0x<%= docomo.unicode %>].pack('U') => '<%= docomo.unicode.upcase %>'.freeze,
|
18
|
+
<% end -%>
|
19
|
+
}.freeze
|
20
|
+
|
21
|
+
DOCOMO_UNICODE_REGEXP = Regexp.union(*DOCOMO_UNICODE.keys.map(&((RUBY_VERSION < '1.9.1') ?
|
22
|
+
(lambda { |e|
|
23
|
+
Regexp.new(Regexp.escape(e,'u'),nil,'u')
|
24
|
+
}) :
|
25
|
+
(lambda { |e|
|
26
|
+
Regexp.new(Regexp.escape(e))
|
27
|
+
})))).freeze
|
28
|
+
end
|
29
|
+
ERB
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_google_unicode_docomo target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
# -*- coding:utf-8 -*-
|
8
|
+
module E4U
|
9
|
+
module Encode
|
10
|
+
module Google
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
class E4U::Encode::Google::Unicode
|
15
|
+
DOCOMO_UNICODE = {
|
16
|
+
<% E4U.google.each do |data| -%>
|
17
|
+
<% next unless data[:google] -%>
|
18
|
+
<% if data[:docomo] -%>
|
19
|
+
<% google = data.google_emoji -%>
|
20
|
+
<% next if google.alternate? -%>
|
21
|
+
<% docomo = data.docomo_emoji -%>
|
22
|
+
'<%= google.google %>' => "<%= docomo.utf8.unpack('U*').map{ |e| "&#x%04X;" % e }.join %>".freeze,
|
23
|
+
<% else -%>
|
24
|
+
<% google = data.google_emoji -%>
|
25
|
+
<% text = google.text_fallback || google.text_repr || [0x3013].pack('U'); -%>
|
26
|
+
'<%= google.google %>' => "<%= text %>".freeze,
|
27
|
+
<% end -%>
|
28
|
+
<% end -%>
|
29
|
+
}.freeze
|
30
|
+
|
31
|
+
DOCOMO_UNICODE_REGEXP = Regexp.new("&#x((?i:#{DOCOMO_UNICODE.keys.join('|')}));").freeze
|
32
|
+
end
|
33
|
+
ERB
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_google_unicode_kddi target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
# -*- coding:utf-8 -*-
|
8
|
+
module E4U
|
9
|
+
module Encode
|
10
|
+
module Google
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
class E4U::Encode::Google::Unicode
|
15
|
+
KDDI_UNICODE = {
|
16
|
+
<% E4U.google.each do |data| -%>
|
17
|
+
<% next unless data[:google] -%>
|
18
|
+
<% if data[:kddi] -%>
|
19
|
+
<% google = data.google_emoji -%>
|
20
|
+
<% next if google.alternate? -%>
|
21
|
+
<% kddi = data.kddiweb_emoji -%>
|
22
|
+
'<%= google.google %>' => "<%= kddi.utf8.unpack('U*').map{ |e| "&#x%04X;" % e }.join %>".freeze,
|
23
|
+
<% else -%>
|
24
|
+
<% google = data.google_emoji -%>
|
25
|
+
<% text = google.text_fallback || google.text_repr || [0x3013].pack('U') -%>
|
26
|
+
'<%= google.google %>' => "<%= text %>".freeze,
|
27
|
+
<% end -%>
|
28
|
+
<% end -%>
|
29
|
+
}.freeze
|
30
|
+
|
31
|
+
KDDI_UNICODE_REGEXP = Regexp.new("&#x((?i:#{KDDI_UNICODE.keys.join('|')}));").freeze
|
32
|
+
end
|
33
|
+
ERB
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_google_unicode_softbank target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
# -*- coding:utf-8 -*-
|
8
|
+
module E4U
|
9
|
+
module Encode
|
10
|
+
module Google
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
class E4U::Encode::Google::Unicode
|
15
|
+
SOFTBANK_UNICODE = {
|
16
|
+
<% E4U.google.each do |data| -%>
|
17
|
+
<% next unless data[:google] -%>
|
18
|
+
<% if data[:softbank] -%>
|
19
|
+
<% google = data.google_emoji -%>
|
20
|
+
<% next if google.alternate? -%>
|
21
|
+
<% softbank = data.softbank_emoji -%>
|
22
|
+
'<%= google.google %>' => "<%= softbank.utf8.unpack('U*').map{ |e| "&#x%04X;" % e }.join %>".freeze,
|
23
|
+
<% else -%>
|
24
|
+
<% google = data.google_emoji -%>
|
25
|
+
<% text = google.text_fallback || google.text_repr || [0x3013].pack('U') -%>
|
26
|
+
'<%= google.google %>' => "<%= text %>".freeze,
|
27
|
+
<% end -%>
|
28
|
+
<% end -%>
|
29
|
+
}.freeze
|
30
|
+
|
31
|
+
SOFTBANK_UNICODE_REGEXP = Regexp.new("&#x((?i:#{SOFTBANK_UNICODE.keys.join('|')}));").freeze
|
32
|
+
end
|
33
|
+
ERB
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_google_utf8 target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
module E4U
|
8
|
+
module Encode
|
9
|
+
module Google
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
class E4U::Encode::Google::Utf8
|
14
|
+
UNICODE = {
|
15
|
+
<% E4U.google.each do |google| -%>
|
16
|
+
<% next unless google[:google] -%>
|
17
|
+
<% next if google.google_emoji.alternate? -%>
|
18
|
+
[0x<%= google[:google] %>].pack('U') => '<%= google[:google] %>'.freeze,
|
19
|
+
<% end -%>
|
20
|
+
}.freeze
|
21
|
+
|
22
|
+
UNICODE_REGEXP = Regexp.union(*UNICODE.keys.map(&((RUBY_VERSION < '1.9.1') ?
|
23
|
+
(lambda { |e|
|
24
|
+
Regexp.new(Regexp.escape(e,'u'),nil,'u')
|
25
|
+
}) :
|
26
|
+
(lambda { |e|
|
27
|
+
Regexp.new(Regexp.escape(e))
|
28
|
+
})))).freeze
|
29
|
+
end
|
30
|
+
ERB
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_kddi_cp932 target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
require 'e4u/encode/docomo/cp932/docomo_unicode'
|
8
|
+
$KCODE = 'u' if RUBY_VERSION < '1.9.1'
|
9
|
+
module E4U
|
10
|
+
module Encode
|
11
|
+
module KDDI
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
class E4U::Encode::KDDI::Cp932
|
16
|
+
KDDI_UNICODE = {
|
17
|
+
<% E4U.kddi.each do |e| -%>
|
18
|
+
<% kddi = e.kddiweb_emoji -%>
|
19
|
+
((s = [0x<%= "%X" % kddi.sjis.unpack('n') %>].pack('n')) && RUBY_VERSION < '1.9.1' ? s : s.force_encoding('CP932')) => '<%= kddi.unicode.upcase %>'.freeze,
|
20
|
+
<% end -%>
|
21
|
+
}.merge(E4U::Encode::DoCoMo::Cp932::DOCOMO_UNICODE).freeze
|
22
|
+
|
23
|
+
KDDI_UNICODE_REGEXP = Regexp.union(*KDDI_UNICODE.keys.map(&((RUBY_VERSION < '1.9.1') ?
|
24
|
+
(lambda { |e|
|
25
|
+
Regexp.new(Regexp.escape(e,'s'),nil,'s')
|
26
|
+
}) :
|
27
|
+
(lambda { |e|
|
28
|
+
Regexp.new(Regexp.escape(e))
|
29
|
+
})))).freeze
|
30
|
+
end
|
31
|
+
ERB
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_kddi_unicode target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
require 'e4u/encode/docomo/unicode/google_unicode'
|
8
|
+
module E4U
|
9
|
+
module Encode
|
10
|
+
module KDDI
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
class E4U::Encode::KDDI::Unicode
|
15
|
+
GOOGLE_UNICODE = {
|
16
|
+
<% E4U.kddi.each do |e| -%>
|
17
|
+
<% kddi = e.kddi_emoji -%>
|
18
|
+
<% kddiweb = e.kddiweb_emoji -%>
|
19
|
+
<% google = E4U.google.find{|emoji| kddi.unicode == emoji[:kddi] } -%>
|
20
|
+
'<%= kddiweb.unicode.upcase %>' => '<%= google[:google].upcase %>'.freeze,
|
21
|
+
<% end -%>
|
22
|
+
}.merge(E4U::Encode::DoCoMo::Unicode::GOOGLE_UNICODE).freeze
|
23
|
+
|
24
|
+
GOOGLE_UNICODE_REGEXP = Regexp.new("&#x((?i:#{GOOGLE_UNICODE.keys.join('|')}));").freeze
|
25
|
+
end
|
26
|
+
ERB
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_kddi_utf8 target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
require 'e4u/encode/docomo/utf8/docomo_unicode'
|
8
|
+
module E4U
|
9
|
+
module Encode
|
10
|
+
module KDDI
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
class E4U::Encode::KDDI::Utf8
|
15
|
+
KDDI_UNICODE = {
|
16
|
+
<% E4U.kddi.each do |e| -%>
|
17
|
+
<% kddi = e.kddiweb_emoji -%>
|
18
|
+
<% kddiapp = e.kddi_emoji -%>
|
19
|
+
[0x<%= kddi.unicode %>].pack('U') => '<%= kddi.unicode.upcase %>'.freeze,
|
20
|
+
[0x<%= kddiapp.unicode %>].pack('U') => '<%= kddi.unicode.upcase %>'.freeze,
|
21
|
+
<% end -%>
|
22
|
+
}.merge(E4U::Encode::DoCoMo::Utf8::DOCOMO_UNICODE).freeze
|
23
|
+
|
24
|
+
KDDI_UNICODE_REGEXP = Regexp.union(*KDDI_UNICODE.keys.map(&((RUBY_VERSION < '1.9.1') ?
|
25
|
+
(lambda { |e|
|
26
|
+
Regexp.new(Regexp.escape(e,'u'),nil,'u')
|
27
|
+
}) :
|
28
|
+
(lambda { |e|
|
29
|
+
Regexp.new(Regexp.escape(e))
|
30
|
+
})))).freeze
|
31
|
+
end
|
32
|
+
ERB
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/task_helper')
|
2
|
+
module Update
|
3
|
+
class Table
|
4
|
+
def self.mk_softbank_cp932 target
|
5
|
+
File.open(target, 'wb') do |out|
|
6
|
+
out.print ERB.new(<<'ERB', nil, '-').result
|
7
|
+
$KCODE = 'u' if RUBY_VERSION < '1.9.1'
|
8
|
+
module E4U
|
9
|
+
module Encode
|
10
|
+
module Softbank
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
class E4U::Encode::Softbank::Cp932
|
15
|
+
SOFTBANK_UNICODE = {
|
16
|
+
<% E4U.softbank.each do |e| -%>
|
17
|
+
<% softbank = e.softbank_emoji -%>
|
18
|
+
((s = [0x<%= "%X" % softbank.sjis.unpack('n') %>].pack('n')) && RUBY_VERSION < '1.9.1' ? s : s.force_encoding('CP932')) => '<%= softbank.unicode.upcase %>'.freeze,
|
19
|
+
<% end -%>
|
20
|
+
}.freeze
|
21
|
+
|
22
|
+
SOFTBANK_UNICODE_REGEXP = Regexp.union(*SOFTBANK_UNICODE.keys.map(&((RUBY_VERSION < '1.9.1') ?
|
23
|
+
(lambda { |e|
|
24
|
+
Regexp.new(Regexp.escape(e,'s'),nil,'s')
|
25
|
+
}) :
|
26
|
+
(lambda { |e|
|
27
|
+
Regexp.new(Regexp.escape(e))
|
28
|
+
})))).freeze
|
29
|
+
end
|
30
|
+
ERB
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|