gioext-sinatra-emoji 0.1.2
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.textile +14 -0
- data/lib/sinatra/emoji.rb +260 -0
- metadata +63 -0
data/README.textile
ADDED
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
require 'nkf'
|
|
2
|
+
|
|
3
|
+
helpers do
|
|
4
|
+
alias_method :__erb__, :erb
|
|
5
|
+
alias_method :__haml__, :haml
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
module Sinatra
|
|
9
|
+
module Emoji
|
|
10
|
+
module Helpers
|
|
11
|
+
def emoji(no)
|
|
12
|
+
"{$#{no}}"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def erb(template, opts={}, locals={})
|
|
16
|
+
html = __erb__(template, opts, locals)
|
|
17
|
+
p options
|
|
18
|
+
html = NKF.nkf('-s -x', html) if options.output_encoding_sjis
|
|
19
|
+
parseEmoji(html)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def haml(template, opts={}, locals={})
|
|
23
|
+
html = __haml__(template, opts, locals)
|
|
24
|
+
html = NKF.nkf('-s -x', html) if options.output_encoding_sjis
|
|
25
|
+
html = parseEmoji(html)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def isDocomo
|
|
29
|
+
agent =~ /^DoCoMo/
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def isAU
|
|
33
|
+
agent =~ /^UP.Browser|^KDDI/
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def isSoftbank
|
|
37
|
+
agent =~ /^J-PHONE|^Vodafone|^SoftBank/
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
private
|
|
41
|
+
def parseEmoji(html)
|
|
42
|
+
html.gsub(/\{\$(\d+)\}/) do |no|
|
|
43
|
+
encodeEmoji($1.to_i)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def encodeEmoji(no)
|
|
48
|
+
return '' unless EMOJI_TBL[no]
|
|
49
|
+
|
|
50
|
+
carrier = ''
|
|
51
|
+
if isDocomo
|
|
52
|
+
carrier = :i
|
|
53
|
+
elsif isSoftbank
|
|
54
|
+
carrier = :s
|
|
55
|
+
elsif isAU
|
|
56
|
+
carrier = :e
|
|
57
|
+
else
|
|
58
|
+
return ''
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
code = EMOJI_TBL[no][carrier]
|
|
62
|
+
if code.empty?
|
|
63
|
+
code = EMOJI_TBL[options.default_emoji][carrier]
|
|
64
|
+
end
|
|
65
|
+
[code].pack('H*')
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def agent
|
|
69
|
+
env["HTTP_USER_AGENT"]
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def self.registered(app)
|
|
74
|
+
app.helpers Emoji::Helpers
|
|
75
|
+
app.set :default_emoji, 0
|
|
76
|
+
app.set :output_encoding_sjis, true
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
register Emoji
|
|
81
|
+
|
|
82
|
+
EMOJI_TBL = [
|
|
83
|
+
{ :i => 'F89F', :e => 'F660', :s => '1B24476A0F' }, # 0:晴れ
|
|
84
|
+
{ :i => 'F8A0', :e => 'F665', :s => '1B2447690F' }, # 1:曇り
|
|
85
|
+
{ :i => 'F8A1', :e => 'F664', :s => '1B24476B0F' }, # 2:雨
|
|
86
|
+
{ :i => 'F8A2', :e => 'F65D', :s => '1B2447680F' }, # 3:雪
|
|
87
|
+
{ :i => 'F8A3', :e => 'F65F', :s => '1B24455D0F' }, # 4:雷
|
|
88
|
+
{ :i => 'F8A4', :e => 'F641', :s => '1B24476B0F' }, # 5:台風
|
|
89
|
+
{ :i => 'F8A5', :e => 'F7B5', :s => '1B2447690F' }, # 6:霧
|
|
90
|
+
{ :i => 'F8A6', :e => 'F6BF', :s => '1B24476B0F' }, # 7:小雨
|
|
91
|
+
{ :i => 'F8A7', :e => 'F667', :s => '1B24465F0F' }, # 8:牡羊座
|
|
92
|
+
{ :i => 'F8A8', :e => 'F668', :s => '1B2446600F' }, # 9:牡牛座
|
|
93
|
+
{ :i => 'F8A9', :e => 'F669', :s => '1B2446610F' }, # 10:双子座
|
|
94
|
+
{ :i => 'F8AA', :e => 'F66A', :s => '1B2446620F' }, # 11:蟹座
|
|
95
|
+
{ :i => 'F8AB', :e => 'F66B', :s => '1B2446630F' }, # 12:獅子座
|
|
96
|
+
{ :i => 'F8AC', :e => 'F66C', :s => '1B2446640F' }, # 13:乙女座
|
|
97
|
+
{ :i => 'F8AD', :e => 'F66D', :s => '1B2446650F' }, # 14:天秤座
|
|
98
|
+
{ :i => 'F8AE', :e => 'F66E', :s => '1B2446660F' }, # 15:蠍座
|
|
99
|
+
{ :i => 'F8AF', :e => 'F66F', :s => '1B2446670F' }, # 16:射手座
|
|
100
|
+
{ :i => 'F8B0', :e => 'F670', :s => '1B2446680F' }, # 17:山羊座
|
|
101
|
+
{ :i => 'F8B1', :e => 'F671', :s => '1B2446690F' }, # 18:水瓶座
|
|
102
|
+
{ :i => 'F8B2', :e => 'F672', :s => '1B24466A0F' }, # 19:魚座
|
|
103
|
+
{ :i => 'F8B3', :e => 'F643', :s => '1B2447260F' }, # 20:スポーツ
|
|
104
|
+
{ :i => 'F8B4', :e => 'F693', :s => '1B2447360F' }, # 21:野球
|
|
105
|
+
{ :i => 'F8B5', :e => 'F7B6', :s => '1B2447340F' }, # 22:ゴルフ
|
|
106
|
+
{ :i => 'F8B6', :e => 'F690', :s => '1B2447350F' }, # 23:テニス
|
|
107
|
+
{ :i => 'F8B7', :e => 'F68F', :s => '1B2447380F' }, # 24:サッカー
|
|
108
|
+
{ :i => 'F8B8', :e => 'F691', :s => '1B2447330F' }, # 25:スキー
|
|
109
|
+
{ :i => 'F8B9', :e => 'F7B7', :s => '1B2445510F' }, # 26:バスケットボール
|
|
110
|
+
{ :i => 'F8BA', :e => 'F692', :s => '1B2445520F' }, # 27:モータースポーツ
|
|
111
|
+
{ :i => 'F8BB', :e => 'F7B8', :s => '1B24456E0F' }, # 28:ポケットベル
|
|
112
|
+
{ :i => 'F8BC', :e => 'F68E', :s => '1B24473E0F' }, # 29:電車
|
|
113
|
+
{ :i => 'F8BD', :e => 'F68E', :s => '1B2450540F' }, # 30:地下鉄
|
|
114
|
+
{ :i => 'F8BE', :e => 'F689', :s => '1B24473F0F' }, # 31:新幹線
|
|
115
|
+
{ :i => 'F8BF', :e => 'F68A', :s => '1B24473B0F' }, # 32:車(セダン)
|
|
116
|
+
{ :i => 'F8C0', :e => 'F68A', :s => '1B24473B0F' }, # 33:車(RV)
|
|
117
|
+
{ :i => 'F8C1', :e => 'F688', :s => '1B2445790F' }, # 34:バス
|
|
118
|
+
{ :i => 'F8C2', :e => 'F68D', :s => '1B2446220F' }, # 35:船
|
|
119
|
+
{ :i => 'F8C3', :e => 'F68C', :s => '1B24473D0F' }, # 36:飛行機
|
|
120
|
+
{ :i => 'F8C4', :e => 'F684', :s => '1B2447560F' }, # 37:家
|
|
121
|
+
{ :i => 'F8C5', :e => 'F686', :s => '1B2447580F' }, # 38:ビル
|
|
122
|
+
{ :i => 'F8C6', :e => 'F6F4', :s => '1B2445730F' }, # 39:郵便局
|
|
123
|
+
{ :i => 'F8C7', :e => 'F758', :s => '1B2445750F' }, # 40:病院
|
|
124
|
+
{ :i => 'F8C8', :e => 'F683', :s => '1B24456D0F' }, # 41:銀行
|
|
125
|
+
{ :i => 'F8C9', :e => 'F67B', :s => '1B2445740F' }, # 42:ATM
|
|
126
|
+
{ :i => 'F8CA', :e => 'F686', :s => '1B2445780F' }, # 43:ホテル
|
|
127
|
+
{ :i => 'F8CB', :e => 'F67C', :s => '1B2445760F' }, # 44:コンビニ
|
|
128
|
+
{ :i => 'F8CC', :e => 'F78E', :s => '1B24475A0F' }, # 45:ガソリンスタンド
|
|
129
|
+
{ :i => 'F8CD', :e => 'F67E', :s => '1B24456F0F' }, # 46:駐車場
|
|
130
|
+
{ :i => 'F8CE', :e => 'F642', :s => '1B24456E0F' }, # 47:信号
|
|
131
|
+
{ :i => 'F8CF', :e => 'F67D', :s => '1B2445590F' }, # 48:トイレ
|
|
132
|
+
{ :i => 'F8D0', :e => 'F685', :s => '1B2447630F' }, # 49:レストラン
|
|
133
|
+
{ :i => 'F8D1', :e => 'F7B4', :s => '1B2447650F' }, # 50:喫茶店
|
|
134
|
+
{ :i => 'F8D2', :e => 'F69B', :s => '1B2447640F' }, # 51:バー
|
|
135
|
+
{ :i => 'F8D3', :e => 'F69C', :s => '1B2447670F' }, # 52:ビール
|
|
136
|
+
{ :i => 'F8D4', :e => 'F6AF', :s => '1B2445400F' }, # 53:ファーストフード
|
|
137
|
+
{ :i => 'F8D5', :e => 'F6E6', :s => '1B24455E0F' }, # 54:ブティック
|
|
138
|
+
{ :i => 'F8D6', :e => 'F6EF', :s => '1B24454E0F' }, # 55:美容院
|
|
139
|
+
{ :i => 'F8D7', :e => 'F6DC', :s => '1B24475C0F' }, # 56:カラオケ
|
|
140
|
+
{ :i => 'F8D8', :e => 'F6F0', :s => '1B24475D0F' }, # 57:映画
|
|
141
|
+
{ :i => 'F8D9', :e => 'F771', :s => '1B2446560F' }, # 58:右斜め上
|
|
142
|
+
{ :i => 'F8DA', :e => 'F645', :s => '1B2445440F' }, # 59:遊園地
|
|
143
|
+
{ :i => 'F8DB', :e => 'F6DE', :s => '1B24475E0F' }, # 60:音楽
|
|
144
|
+
{ :i => 'F8DC', :e => 'F7B9', :s => '1B2446250F' }, # 61:アート
|
|
145
|
+
{ :i => 'F8DD', :e => 'F66C', :s => '1B2447240F' }, # 62:演劇
|
|
146
|
+
{ :i => 'F8DE', :e => 'F7BB', :s => '1B2447570F' }, # 63:イベント
|
|
147
|
+
{ :i => 'F8DF', :e => 'F676', :s => '1B2445450F' }, # 64:チケット
|
|
148
|
+
{ :i => 'F8E0', :e => 'F655', :s => '1B24453D0F' }, # 65:喫煙
|
|
149
|
+
{ :i => 'F8E1', :e => 'F656', :s => '1B2446280F' }, # 66:禁煙
|
|
150
|
+
{ :i => 'F8E2', :e => 'F6EE', :s => '1B2447280F' }, # 67:カメラ
|
|
151
|
+
{ :i => 'F8E3', :e => 'F674', :s => '1B24453E0F' }, # 68:カバン
|
|
152
|
+
{ :i => 'F8E4', :e => 'F782', :s => '1B2445680F' }, # 69:本
|
|
153
|
+
{ :i => 'F8E5', :e => 'F7BC', :s => '1B2445300F' }, # 70:リボン
|
|
154
|
+
{ :i => 'F8E6', :e => 'F6A8', :s => '1B2445320F' }, # 71:プレゼント
|
|
155
|
+
{ :i => 'F8E7', :e => 'F7BD', :s => '1B2447660F' }, # 72:バースデー
|
|
156
|
+
{ :i => 'F8E8', :e => 'F7B3', :s => '1B2447290F' }, # 73:電話
|
|
157
|
+
{ :i => 'F8E9', :e => 'F7A5', :s => '1B24472A0F' }, # 74:携帯電話
|
|
158
|
+
{ :i => 'F8EA', :e => 'F78B', :s => '1B2445680F' }, # 75:メモ
|
|
159
|
+
{ :i => 'F8EB', :e => 'F6DB', :s => '1B24454A0F' }, # 76:TV
|
|
160
|
+
{ :i => 'F8EC', :e => 'F69F', :s => '1B24454B0F' }, # 77:ゲーム
|
|
161
|
+
{ :i => 'F8ED', :e => 'F6E5', :s => '1B2445460F' }, # 78:CD
|
|
162
|
+
{ :i => 'F8EE', :e => 'F7B2', :s => '1B24462C0F' }, # 79:ハート
|
|
163
|
+
{ :i => 'F8EF', :e => 'F7BE', :s => '1B24462E0F' }, # 80:スペード
|
|
164
|
+
{ :i => 'F8F0', :e => 'F7BF', :s => '1B24462D0F' }, # 81:ダイヤ
|
|
165
|
+
{ :i => 'F8F1', :e => 'F7C0', :s => '1B24462F0F' }, # 82:クラブ
|
|
166
|
+
{ :i => 'F8F2', :e => 'F7C1', :s => '1B2445250F' }, # 83:目
|
|
167
|
+
{ :i => 'F8F3', :e => 'F7C2', :s => '1B2445610F' }, # 84:耳
|
|
168
|
+
{ :i => 'F8F4', :e => 'F6CC', :s => '1B24472D0F' }, # 85:グー
|
|
169
|
+
{ :i => 'F8F5', :e => 'F7C3', :s => '1B2447310F' }, # 86:チョキ
|
|
170
|
+
{ :i => 'F8F6', :e => 'F7C4', :s => '1B2447320F' }, # 87:パー
|
|
171
|
+
{ :i => 'F8F7', :e => 'F769', :s => '1B2446580F' }, # 88:右斜め下
|
|
172
|
+
{ :i => 'F8F8', :e => 'F768', :s => '1B2446570F' }, # 89:左斜め上
|
|
173
|
+
{ :i => 'F8F9', :e => 'F6C7', :s => '1B2446210F' }, # 90:足
|
|
174
|
+
{ :i => 'F8FA', :e => 'F6F3', :s => '1B2447270F' }, # 91:くつ
|
|
175
|
+
{ :i => 'F8FB', :e => 'F6D7', :s => '1B2446310F' }, # 92:眼鏡
|
|
176
|
+
{ :i => 'F8FC', :e => 'F657', :s => '1B24462A0F' }, # 93:車椅子
|
|
177
|
+
{ :i => 'F940', :e => 'F7C5', :s => '' }, # 94:新月
|
|
178
|
+
{ :i => 'F941', :e => 'F7C6', :s => '1B24476C0F' }, # 95:やや欠け月
|
|
179
|
+
{ :i => 'F942', :e => 'F7C7', :s => '1B24476C0F' }, # 96:半月
|
|
180
|
+
{ :i => 'F943', :e => 'F65E', :s => '1B24476C0F' }, # 97:三日月
|
|
181
|
+
{ :i => 'F944', :e => 'F661', :s => '' }, # 98:満月
|
|
182
|
+
{ :i => 'F945', :e => 'F6BA', :s => '1B2447730F' }, # 99:犬
|
|
183
|
+
{ :i => 'F946', :e => 'F6B4', :s => '1B2447700F' }, # 100:猫
|
|
184
|
+
{ :i => 'F947', :e => 'F6BB', :s => '1B24473C0F' }, # 101:リゾート
|
|
185
|
+
{ :i => 'F948', :e => 'F6A2', :s => '1B2447530F' }, # 102:クリスマス
|
|
186
|
+
{ :i => 'F949', :e => 'F772', :s => '1B2446590F' }, # 103:左斜め下
|
|
187
|
+
{ :i => 'F972', :e => 'F6F7', :s => '1B2445240F' }, # 104:phoneto
|
|
188
|
+
{ :i => 'F973', :e => 'F6FA', :s => '1B2445230F' }, # 105:mailto
|
|
189
|
+
{ :i => 'F974', :e => 'F6F9', :s => '1B24472B0F' }, # 106:faxto
|
|
190
|
+
{ :i => 'F975', :e => 'F65A', :s => '' }, # 107:iモード
|
|
191
|
+
{ :i => 'F976', :e => 'F65A', :s => '' }, # 108:iモード
|
|
192
|
+
{ :i => 'F977', :e => 'F7AE', :s => '1B2445230F' }, # 109:メール
|
|
193
|
+
{ :i => 'F978', :e => 'F6B0', :s => '' }, # 110:ドコモ提供
|
|
194
|
+
{ :i => 'F979', :e => 'F6B1', :s => '' }, # 111:ドコモポイント
|
|
195
|
+
{ :i => 'F97A', :e => 'F79A', :s => '1B2446350F' }, # 112:有料
|
|
196
|
+
{ :i => 'F97B', :e => 'F795', :s => '1B2446360F' }, # 113:無料
|
|
197
|
+
{ :i => 'F97C', :e => 'F6C3', :s => '1B2446490F' }, # 114:ID
|
|
198
|
+
{ :i => 'F97D', :e => 'F6F2', :s => '1B24475F0F' }, # 115:パスワード
|
|
199
|
+
{ :i => 'F97E', :e => 'F779', :s => '1B2446500F' }, # 116:次頁有
|
|
200
|
+
{ :i => 'F980', :e => 'F7C8', :s => '' }, # 117:クリア
|
|
201
|
+
{ :i => 'F981', :e => 'F6F1', :s => '1B2445340F' }, # 118:サーチ
|
|
202
|
+
{ :i => 'F982', :e => 'F7E5', :s => '1B2446320F' }, # 119:NEW
|
|
203
|
+
{ :i => 'F983', :e => 'F78F', :s => '1B24456B0F' }, # 120:位置情報
|
|
204
|
+
{ :i => 'F984', :e => 'F795', :s => '1B2446310F' }, # 121:フリーダイヤル
|
|
205
|
+
{ :i => 'F985', :e => 'F7B3', :s => '1B2446300F' }, # 122:シャープダイヤル
|
|
206
|
+
{ :i => 'F986', :e => 'F748', :s => '' }, # 123:モバQ
|
|
207
|
+
{ :i => 'F987', :e => 'F6FB', :s => '1B24463C0F' }, # 124:1
|
|
208
|
+
{ :i => 'F988', :e => 'F6FC', :s => '1B24463D0F' }, # 125:2
|
|
209
|
+
{ :i => 'F989', :e => 'F740', :s => '1B24463E0F' }, # 126:3
|
|
210
|
+
{ :i => 'F98A', :e => 'F741', :s => '1B24463F0F' }, # 127:4
|
|
211
|
+
{ :i => 'F98B', :e => 'F742', :s => '1B2446400F' }, # 128:5
|
|
212
|
+
{ :i => 'F98C', :e => 'F743', :s => '1B2446410F' }, # 129:6
|
|
213
|
+
{ :i => 'F98D', :e => 'F744', :s => '1B2446420F' }, # 130:7
|
|
214
|
+
{ :i => 'F98E', :e => 'F745', :s => '1B2446430F' }, # 131:8
|
|
215
|
+
{ :i => 'F98F', :e => 'F746', :s => '1B2446440F' }, # 132:9
|
|
216
|
+
{ :i => 'F990', :e => 'F7C9', :s => '1B2446450F' }, # 133:0
|
|
217
|
+
{ :i => 'F9B0', :e => 'F7CA', :s => '1B24466D0F' }, # 135:決定
|
|
218
|
+
{ :i => 'F991', :e => 'F6C3', :s => '1B2447420F' }, # 135:黒ハート
|
|
219
|
+
{ :i => 'F992', :e => 'F7CC', :s => '1B2447420F' }, # 136:揺れるハート
|
|
220
|
+
{ :i => 'F993', :e => 'F64F', :s => '1B2447430F' }, # 137:失恋
|
|
221
|
+
{ :i => 'F994', :e => 'F650', :s => '1B2447420F' }, # 138:ハート達
|
|
222
|
+
{ :i => 'F995', :e => 'F649', :s => '1B2447770F' }, # 139:わーい
|
|
223
|
+
{ :i => 'F996', :e => 'F64A', :s => '1B2447790F' }, # 140:ちっ
|
|
224
|
+
{ :i => 'F997', :e => 'F64B', :s => '1B2447780F' }, # 141:がく〜
|
|
225
|
+
{ :i => 'F998', :e => 'F64C', :s => '1B2445270F' }, # 142:もうやだ〜
|
|
226
|
+
{ :i => 'F999', :e => 'F7CB', :s => '1B2445270F' }, # 143:ふらふら
|
|
227
|
+
{ :i => 'F99A', :e => 'F3EE', :s => '1B2446560F' }, # 144:グッド
|
|
228
|
+
{ :i => 'F99B', :e => 'F7EE', :s => '1B24475E0F' }, # 145:るんるん
|
|
229
|
+
{ :i => 'F99C', :e => 'F695', :s => '1B2445430F' }, # 146:いい気分(温泉)
|
|
230
|
+
{ :i => 'F99D', :e => 'F6B0', :s => '1B2446240F' }, # 147:かわいい
|
|
231
|
+
{ :i => 'F99E', :e => 'F6C4', :s => '1B2447230F' }, # 148:キスマーク
|
|
232
|
+
{ :i => 'F99F', :e => 'F37E', :s => '1B244F4E0F' }, # 149:ぴかぴか(新しい)
|
|
233
|
+
{ :i => 'F9A0', :e => 'F64E', :s => '1B24452F0F' }, # 150:ひらめき
|
|
234
|
+
{ :i => 'F9A1', :e => 'F64A', :s => '1B2446260F' }, # 151:むかっ(怒り)
|
|
235
|
+
{ :i => 'F9A2', :e => 'F6CC', :s => '1B24472D0F' }, # 152:パンチ
|
|
236
|
+
{ :i => 'F9A3', :e => 'F652', :s => '1B24453C0F' }, # 153:爆弾
|
|
237
|
+
{ :i => 'F9A4', :e => 'F65E', :s => '1B24475E0F' }, # 154:ムード
|
|
238
|
+
{ :i => 'F9A5', :e => 'F75C', :s => '1B2446580F' }, # 155:バッド
|
|
239
|
+
{ :i => 'F9A6', :e => 'F64D', :s => '1B24455C0F' }, # 156:眠い(睡眠)
|
|
240
|
+
{ :i => 'F9A7', :e => 'F65A', :s => '1B2447410F' }, # 157:exclamation
|
|
241
|
+
{ :i => 'F9A8', :e => 'F65B', :s => '1B2447400F' }, # 158:exclamation&question
|
|
242
|
+
{ :i => 'F9A9', :e => 'F3F1', :s => '1B2447410F' }, # 159:exclamation×2
|
|
243
|
+
{ :i => 'F9AA', :e => 'F7CD', :s => '1B2446260F' }, # 160:どんっ(衝撃)
|
|
244
|
+
{ :i => 'F9AB', :e => 'F7CE', :s => '1B2446390F' }, # 161:あせあせ(飛び散る汗)
|
|
245
|
+
{ :i => 'F9AC', :e => 'F6BF', :s => '1B2445280F' }, # 162:たらーっ(汗)
|
|
246
|
+
{ :i => 'F9AD', :e => 'F6CD', :s => '1B2445350F' }, # 163:ダッシュ(走り出す様)
|
|
247
|
+
{ :i => 'F9AE', :e => 'F74D', :s => '' }, # 164:ー(長音記号1)
|
|
248
|
+
{ :i => 'F9AF', :e => 'F74E', :s => '' }, # 165:ー(長音記号2)
|
|
249
|
+
{ :i => 'F950', :e => 'F697', :s => '1B2445330F' }, # 166:カチンコ
|
|
250
|
+
{ :i => 'F951', :e => 'F6A0', :s => '1B24454F0F' }, # 167:袋
|
|
251
|
+
{ :i => 'F952', :e => 'F679', :s => '1B2445680F' }, # 168:ペン
|
|
252
|
+
{ :i => 'F955', :e => 'F6D4', :s => '1B2447210F' }, # 169:人影
|
|
253
|
+
{ :i => 'F956', :e => 'F657', :s => '1B24453F0F' }, # 170:椅子
|
|
254
|
+
{ :i => 'F957', :e => 'F640', :s => '1B2445660F' }, # 171:夜
|
|
255
|
+
{ :i => 'F95B', :e => 'F778', :s => '1B2446510F' }, # 172:soon
|
|
256
|
+
{ :i => 'F95C', :e => 'F6E8', :s => '1B24465A0F' }, # 173:on
|
|
257
|
+
{ :i => 'F95D', :e => 'F779', :s => '1B2446500F' }, # 174:end
|
|
258
|
+
{ :i => 'F95E', :e => 'F7B1', :s => '1B24474D0F' } # 175:時計
|
|
259
|
+
]
|
|
260
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: gioext-sinatra-emoji
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.1.2
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- gioext
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
|
|
12
|
+
date: 2009-09-06 00:00:00 -07:00
|
|
13
|
+
default_executable:
|
|
14
|
+
dependencies:
|
|
15
|
+
- !ruby/object:Gem::Dependency
|
|
16
|
+
name: sinatra
|
|
17
|
+
type: :runtime
|
|
18
|
+
version_requirement:
|
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
20
|
+
requirements:
|
|
21
|
+
- - ">="
|
|
22
|
+
- !ruby/object:Gem::Version
|
|
23
|
+
version: "0"
|
|
24
|
+
version:
|
|
25
|
+
description:
|
|
26
|
+
email: gioext@gmail.com
|
|
27
|
+
executables: []
|
|
28
|
+
|
|
29
|
+
extensions: []
|
|
30
|
+
|
|
31
|
+
extra_rdoc_files: []
|
|
32
|
+
|
|
33
|
+
files:
|
|
34
|
+
- README.textile
|
|
35
|
+
- lib/sinatra/emoji.rb
|
|
36
|
+
has_rdoc: "false"
|
|
37
|
+
homepage: http://github.com/gioext/sinatra-emoji
|
|
38
|
+
post_install_message:
|
|
39
|
+
rdoc_options: []
|
|
40
|
+
|
|
41
|
+
require_paths:
|
|
42
|
+
- lib
|
|
43
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: "0"
|
|
48
|
+
version:
|
|
49
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - ">="
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: "0"
|
|
54
|
+
version:
|
|
55
|
+
requirements: []
|
|
56
|
+
|
|
57
|
+
rubyforge_project:
|
|
58
|
+
rubygems_version: 1.2.0
|
|
59
|
+
signing_key:
|
|
60
|
+
specification_version: 2
|
|
61
|
+
summary: Mobile emoji on Sinatra
|
|
62
|
+
test_files: []
|
|
63
|
+
|