rabbit-slide-tommy-mojibake 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.rabbit +1 -0
- data/MyBooks.jpg +0 -0
- data/README.rd +24 -0
- data/Rakefile +17 -0
- data/color-emoji.png +0 -0
- data/config.yaml +19 -0
- data/icon.jpg +0 -0
- data/lavie.png +0 -0
- data/mojibake.png +0 -0
- data/mojibake.rab +496 -0
- data/pdf/mojibake-mojibake.pdf +0 -0
- data/pepper.png +0 -0
- data//343/202/265/343/203/263/343/203/201/343/203/274/343/203/240.png +0 -0
- data//343/203/241/343/203/274/343/203/253/343/202/242/343/203/211/343/203/254/343/202/271/346/255/243/350/246/217/350/241/250/347/217/276.png +0 -0
- data//345/206/231/347/234/237.png +0 -0
- data//346/226/207/345/255/227/345/214/226/343/201/221.pdf +0 -0
- metadata +73 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e6b3c4463895185375cbd44b8524a4cb53efe445
|
4
|
+
data.tar.gz: 603591f36e1b03757ffa03ff85aff2a443d523ae
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 6154c5e79659a6fb5d5629a3c86d8339b0d646f83205c072b3d323721aaff69bd031171ed272a7f735ab8b0b4eadc7b9937e5b06efe69df25d2ae1e367357d2e
|
7
|
+
data.tar.gz: 7fae4bb51c27bc25619b4c7135898aa0405042d2d76d24f3bc6e48f04c38388c4d17f4dde3d084a2a263aea63a1c8c701720d9269758bf24b1328cc634d881b1
|
data/.rabbit
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
mojibake.rab
|
data/MyBooks.jpg
ADDED
Binary file
|
data/README.rd
ADDED
data/Rakefile
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require "rabbit/task/slide"
|
2
|
+
|
3
|
+
# Edit ./config.yaml to customize meta data
|
4
|
+
|
5
|
+
spec = nil
|
6
|
+
Rabbit::Task::Slide.new do |task|
|
7
|
+
spec = task.spec
|
8
|
+
# spec.files += Dir.glob("doc/**/*.*")
|
9
|
+
# spec.files -= Dir.glob("private/**/*.*")
|
10
|
+
# spec.add_runtime_dependency("YOUR THEME")
|
11
|
+
end
|
12
|
+
|
13
|
+
desc "Tag #{spec.version}"
|
14
|
+
task :tag do
|
15
|
+
sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
|
16
|
+
sh("git", "push", "--tags")
|
17
|
+
end
|
data/color-emoji.png
ADDED
Binary file
|
data/config.yaml
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
---
|
2
|
+
id: mojibake
|
3
|
+
base_name: mojibake
|
4
|
+
tags: []
|
5
|
+
presentation_date:
|
6
|
+
version: 1.0.0
|
7
|
+
licenses: []
|
8
|
+
slideshare_id: mojibake-49053739
|
9
|
+
speaker_deck_id:
|
10
|
+
ustream_id:
|
11
|
+
vimeo_id:
|
12
|
+
youtube_id:
|
13
|
+
author:
|
14
|
+
markup_language: :rd
|
15
|
+
name: "とみたまさひろ"
|
16
|
+
email: tommy@tmtm.org
|
17
|
+
rubygems_user: tommy
|
18
|
+
slideshare_user: tmtm
|
19
|
+
speaker_deck_user:
|
data/icon.jpg
ADDED
Binary file
|
data/lavie.png
ADDED
Binary file
|
data/mojibake.png
ADDED
Binary file
|
data/mojibake.rab
ADDED
@@ -0,0 +1,496 @@
|
|
1
|
+
= 文字化け
|
2
|
+
|
3
|
+
# : subtitle
|
4
|
+
# サブタイトル
|
5
|
+
: author
|
6
|
+
とみたまさひろ
|
7
|
+
# : institution
|
8
|
+
# 所属
|
9
|
+
: content-source
|
10
|
+
bitの会
|
11
|
+
: date
|
12
|
+
2015-06-06
|
13
|
+
: allotted-time
|
14
|
+
30m
|
15
|
+
: theme
|
16
|
+
clear-blue+
|
17
|
+
|
18
|
+
= 自己紹介
|
19
|
+
|
20
|
+
# image
|
21
|
+
# src = icon.jpg
|
22
|
+
# relative-height = 30
|
23
|
+
# align = right
|
24
|
+
# relative-margin-top = -30
|
25
|
+
# relative-margin-right = -10
|
26
|
+
|
27
|
+
* とみた まさひろ
|
28
|
+
* 長野県北部在住プログラマー
|
29
|
+
* 言語: C(('note:(1989〜)')) Ruby(('note:(1998〜)'))
|
30
|
+
* 日本MySQLユーザ会代表
|
31
|
+
* 長野ソフトウェア技術者グループ(NSEG)
|
32
|
+
|
33
|
+
= 自己紹介
|
34
|
+
|
35
|
+
* http://((*tmtms*)).hatenablog.com
|
36
|
+
* http://twitter.com/((*tmtms*))
|
37
|
+
* https://github.com/((*tmtm*))
|
38
|
+
* MySQL 3.21 の日本語対応 (('note:(1998 )'))
|
39
|
+
* MySQLのRubyバインディング作成 (('note:(1998 )'))
|
40
|
+
|
41
|
+
= 執筆書籍
|
42
|
+
|
43
|
+
# image
|
44
|
+
# src = MyBooks.jpg
|
45
|
+
# relative-width = 95
|
46
|
+
|
47
|
+
= 自己紹介
|
48
|
+
|
49
|
+
* もっともRTされたツイート
|
50
|
+
|
51
|
+
# image
|
52
|
+
# src = サンチーム.png
|
53
|
+
# relative-height = 100
|
54
|
+
|
55
|
+
= 自己紹介
|
56
|
+
|
57
|
+
* もっともブクマされたブログ
|
58
|
+
|
59
|
+
# image
|
60
|
+
# src = メールアドレス正規表現.png
|
61
|
+
# relative-height = 90
|
62
|
+
|
63
|
+
= 宣伝その1 NSEG
|
64
|
+
|
65
|
+
* http://nseg.jp
|
66
|
+
* 長野のIT技術者のゆるい集まり
|
67
|
+
* 2010年2月発足\n(('note:(発起人:おびなたさん、しむやさん、おかもとさん)'))
|
68
|
+
* 毎月勉強会開催(今までに63回)主に長野市
|
69
|
+
* 「理論から学ぶデータベース実践入門」読書会(隔週水曜日) at ギークラボ長野
|
70
|
+
|
71
|
+
= 宣伝その2 ギークラボ長野
|
72
|
+
|
73
|
+
# image
|
74
|
+
# src = pepper.png
|
75
|
+
# relative-height = 50
|
76
|
+
# align = right
|
77
|
+
# relative-margin-right = -10
|
78
|
+
|
79
|
+
* http://geeklab-nagano.com
|
80
|
+
* 県庁近く
|
81
|
+
* 無料で利用できる作業スペース
|
82
|
+
* 電源 & WiFi & Pepperくん あり
|
83
|
+
* 6/13 ハンズオン「はじめての Unity 〜2D ゲームを作ってみよう〜」
|
84
|
+
|
85
|
+
= 文字化け
|
86
|
+
|
87
|
+
= 文字化けに関するトラブルシューティング
|
88
|
+
|
89
|
+
# image
|
90
|
+
# src = mojibake.png
|
91
|
+
# relative-height = 90
|
92
|
+
|
93
|
+
(('note:http://www.geocities.co.jp/Playtown/7711/gallaly/trableshooting.html'))
|
94
|
+
|
95
|
+
= 文字化けを直してみた
|
96
|
+
|
97
|
+
残念ながら現バージョンのWindowsでは
|
98
|
+
文字化けをなおすことは出来ません。
|
99
|
+
2025年発売予定のWindowsでは対応します。
|
100
|
+
このトラブルシューティングでは、
|
101
|
+
このような問題の原因を突き止め、
|
102
|
+
問題を解決する手順を示します。
|
103
|
+
質問の答えをクリックしてください。
|
104
|
+
手順に従って進みながら問題を解決できます。
|
105
|
+
|
106
|
+
どうしますか?
|
107
|
+
|
108
|
+
□ 仕方がないから「ダイアログで遊ぼう」を閲覧。
|
109
|
+
□ 「渡部シンイチのDejavu WORLD」を閲覧。
|
110
|
+
|
111
|
+
= 文字化けの原因\n\n1. 文字コードが正しくない
|
112
|
+
|
113
|
+
= 文字コード
|
114
|
+
|
115
|
+
* Charset, 文字集合
|
116
|
+
* エンコーディング方式
|
117
|
+
* シフトJIS, 日本語EUC, UTF-8 等
|
118
|
+
* 文字のバイト表現
|
119
|
+
|
120
|
+
= 日本語の文字コード
|
121
|
+
|
122
|
+
* UTF-8 (Unicode 今は普通はこれ)
|
123
|
+
* SHIFT_JIS (Windows)
|
124
|
+
* EUC-JP (昔の UNIX)
|
125
|
+
* ISO-2022-JP (メール)
|
126
|
+
|
127
|
+
= 同じ文字でも異なるコード
|
128
|
+
|
129
|
+
「あ」
|
130
|
+
|
131
|
+
* UTF-8 (E3 81 82)
|
132
|
+
* EUC-JP (A4 A2)
|
133
|
+
* SHIFT_JIS (82 A0)
|
134
|
+
|
135
|
+
= 同じバイト列でも別の文字
|
136
|
+
|
137
|
+
C2 A9
|
138
|
+
|
139
|
+
* UTF-8 「©」
|
140
|
+
* EUC-JP 「息」
|
141
|
+
* SHIFT_JIS 「ツゥ」
|
142
|
+
|
143
|
+
= バイト列だけでは\n文字コードはわからない
|
144
|
+
|
145
|
+
= ところで
|
146
|
+
|
147
|
+
日本語文字のことを「((*2バイト文字*))」と言ってませんか?
|
148
|
+
|
149
|
+
UTF-8は日本語はだいたい((*3バイト*))
|
150
|
+
|
151
|
+
* 「あ」(E3 81 82)
|
152
|
+
* 「ア」(EF BD B1)
|
153
|
+
|
154
|
+
= 文字化けした文字列の\n元の文字コードの見分け方
|
155
|
+
|
156
|
+
= 慣れるとパッと見でわかる
|
157
|
+
|
158
|
+
= EUC-JP を SHIFT_JIS として表示
|
159
|
+
|
160
|
+
# image
|
161
|
+
# src = mojibake.png
|
162
|
+
# align = right
|
163
|
+
# relative-width = 50
|
164
|
+
# relative-margin-top = -10
|
165
|
+
# relative-margin-right = -10
|
166
|
+
|
167
|
+
半角カナが多い
|
168
|
+
|
169
|
+
日本語にほんごニホンゴ
|
170
|
+
|
171
|
+
ニ?ワク?ヒ、ロ、?エ・ヒ・ロ・?エ
|
172
|
+
|
173
|
+
= UTF-8 を SHIFT_JIS として表示
|
174
|
+
|
175
|
+
画数の多い漢字の中に半角カナが少々混じってる
|
176
|
+
|
177
|
+
日本語にほんごニホンゴ
|
178
|
+
|
179
|
+
譌・譛ャ隱槭↓縺サ繧薙#繝九?繝ウ繧エ
|
180
|
+
|
181
|
+
|
182
|
+
= ISO-2022-JP の ESC 落ち
|
183
|
+
|
184
|
+
ASCII文字だけで構成されて「$B」「(B」がある
|
185
|
+
|
186
|
+
日本語にほんごニホンゴ
|
187
|
+
|
188
|
+
?$BF|K\8l$K$[$s$4%K%[%s%4?(B
|
189
|
+
|
190
|
+
= 文字化けの原因\n\n2. 文字コードが不明
|
191
|
+
|
192
|
+
= 自動判定もできるけど\n完全じゃない
|
193
|
+
|
194
|
+
= 同じバイト列でも別の文字(再掲)
|
195
|
+
|
196
|
+
C2 A9
|
197
|
+
|
198
|
+
* UTF-8 「©」
|
199
|
+
* EUC-JP 「息」
|
200
|
+
* SHIFT_JIS 「ツゥ」
|
201
|
+
|
202
|
+
= 自動判定
|
203
|
+
|
204
|
+
* バイト列が文字コードの正当な範囲にあるかどうかで判定
|
205
|
+
* 文字列が短いと難しい
|
206
|
+
* 文字列が長ければ精度は上がる
|
207
|
+
* へんなバイトが混在してたらアウト
|
208
|
+
* 日本語じゃないのに日本語と誤判定したり
|
209
|
+
|
210
|
+
= EUC - Extended Unix Code
|
211
|
+
|
212
|
+
* EUC-JP : 日本語EUC
|
213
|
+
* EUC-KR : 韓国語EUC
|
214
|
+
* EUC-CN : 簡体字中国語EUC
|
215
|
+
|
216
|
+
文字コードの範囲は同じだけど文字が違う
|
217
|
+
|
218
|
+
* BB FA : 字(JP) / 샙(KR) / 机(CN)
|
219
|
+
|
220
|
+
= 文字境界
|
221
|
+
|
222
|
+
* EUC
|
223
|
+
* (('tag:small:1バイト文字 (00-7F) ← ASCII'))
|
224
|
+
* (('tag:small:2バイト文字 (A1-F4 | A1-FE)'))
|
225
|
+
* (('tag:small:文字列の先頭から見ないとわからない'))
|
226
|
+
* SHIFT_JIS
|
227
|
+
* (('tag:small:1バイト文字 (00-7F A1-DF) ← JISX0201'))
|
228
|
+
* (('tag:small:2バイト文字 (81-9F E0-FC | 40-7E 80-FC)'))
|
229
|
+
* ((*(('tag:small:2バイト目に ASCII 範囲含んでてやばい'))*))
|
230
|
+
|
231
|
+
= 文字境界
|
232
|
+
|
233
|
+
* UTF-8
|
234
|
+
* (('tag:small:1バイト文字 (00-7F) ← ASCII'))
|
235
|
+
* (('tag:small:2バイト文字 (C2-DF | 80-BF)'))
|
236
|
+
* (('tag:small:3バイト文字 (E0-EF | 80-BF | 80-BF)'))
|
237
|
+
* (('tag:small:4バイト文字 (F0-F7 | 80-BF | 80-BF | 80-BF)'))
|
238
|
+
|
239
|
+
文字境界判別しやすい
|
240
|
+
|
241
|
+
= 文字化けの原因\n\n3. 機種依存文字
|
242
|
+
|
243
|
+
= ISO-2022-JP
|
244
|
+
|
245
|
+
* いわゆる「JISコード」
|
246
|
+
|
247
|
+
* 日本語メールで使われる文字コードは未だに ISO-2022-JP が主流
|
248
|
+
|
249
|
+
* \ と ¥ を使い分けできる
|
250
|
+
|
251
|
+
* ISO-2022-JP に無い文字
|
252
|
+
|
253
|
+
* ① ② ③ Ⅰ Ⅱ Ⅲ ㈱ ㎏ ㎝ 髙 﨑 カタカナ
|
254
|
+
|
255
|
+
= ISO-2022-JP に無い文字を ISO-2022-JP と偽ってメールする奴がいる
|
256
|
+
|
257
|
+
= 文字化け
|
258
|
+
|
259
|
+
= 昔の Mac だと ① が ㈪ に見えたり
|
260
|
+
|
261
|
+
= だいたいマイクロソフトが悪い
|
262
|
+
|
263
|
+
= MS の ISO-2022-JP
|
264
|
+
|
265
|
+
* CP50221
|
266
|
+
* ISO-2022-JP に無い文字を含む
|
267
|
+
* ① ② ③ Ⅰ Ⅱ Ⅲ ㈱ ㎏ ㎝ 髙 﨑 カタカナ
|
268
|
+
* \ と ¥ の区別がつかない
|
269
|
+
|
270
|
+
= まともなメールアプリが「ISO-2022-JP」を信じると文字化け
|
271
|
+
|
272
|
+
= まともなメールアプリが責められる\n「Outlookだと見えるのに」
|
273
|
+
|
274
|
+
= ISO-2022-JP は CP50221 と\nみなして表示
|
275
|
+
|
276
|
+
= ISO-2022-JP を ISO-2022-JP として扱うアプリが絶滅
|
277
|
+
|
278
|
+
= 文字コードの置き換え
|
279
|
+
|
280
|
+
* ISO-2022-JP : CP50221
|
281
|
+
* EUC-JP : CP51932
|
282
|
+
* SHIFT_JIS : CP932
|
283
|
+
|
284
|
+
= だいたいマイクロソフトが悪い
|
285
|
+
|
286
|
+
= 文字化けの原因\n\n4. フォントが無い
|
287
|
+
|
288
|
+
= 🍣 🍺 🍮 🍢 🍜 🍶
|
289
|
+
|
290
|
+
= □ □ □ □ □ □
|
291
|
+
|
292
|
+
= 対応フォント入れれば解決
|
293
|
+
|
294
|
+
= 発表の途中ですがお知らせです
|
295
|
+
|
296
|
+
= FAQ: 下のウサギとカメは何?
|
297
|
+
|
298
|
+
= Rabbit
|
299
|
+
|
300
|
+
# image
|
301
|
+
# src = lavie.png
|
302
|
+
# align = right
|
303
|
+
# relative-height = 50
|
304
|
+
# relative-margin-top = -15
|
305
|
+
# relative-margin-right = -20
|
306
|
+
|
307
|
+
* Ruby製プレゼンツール
|
308
|
+
* http://rabbit-shocker.org/
|
309
|
+
* ウサギとカメはタイムキーパー
|
310
|
+
* カメに追い抜かされなければ時間内
|
311
|
+
* プレゼンがつまらなくても和む
|
312
|
+
* ソースはテキスト(RD / Markdown)
|
313
|
+
* PDF ビューアとしても利用可
|
314
|
+
|
315
|
+
= Ruby
|
316
|
+
|
317
|
+
= Ruby
|
318
|
+
|
319
|
+
* プログラミング言語
|
320
|
+
* オブジェクト指向スクリプト言語
|
321
|
+
* オブジェクト毎に異なる文字コードが可能
|
322
|
+
* ファイル毎に異なる文字コードが可能
|
323
|
+
* 嫌な予感…
|
324
|
+
|
325
|
+
= ファイル
|
326
|
+
|
327
|
+
同じファイルからの読み込みでも異なる文字コードになることも
|
328
|
+
|
329
|
+
# coderay ruby
|
330
|
+
|
331
|
+
f = File.open("何か.txt", "r:utf-8")
|
332
|
+
f.gets #=> 1行文字列 UTF-8
|
333
|
+
f.read(10) #=> 10バイトデータ ASCII-8BIT
|
334
|
+
|
335
|
+
= 異なる文字コード同士
|
336
|
+
|
337
|
+
# coderay ruby
|
338
|
+
|
339
|
+
utf8 = "ほげ"
|
340
|
+
sjis = "ほげ".encode("cp932")
|
341
|
+
utf8 == sjis #=> 偽
|
342
|
+
utf8 + sjis #=> エラー
|
343
|
+
utf8 =~ /#{sjis}/ #=> エラー
|
344
|
+
|
345
|
+
utf8 = "ASCII"
|
346
|
+
sjis = "ASCII".encode("cp932")
|
347
|
+
utf8 == sjis #=> 真
|
348
|
+
|
349
|
+
= 混ぜるな危険!
|
350
|
+
|
351
|
+
= 全部 UTF-8 に統一すれば安全
|
352
|
+
|
353
|
+
= MySQL
|
354
|
+
|
355
|
+
= オープンソースの RDBMS
|
356
|
+
|
357
|
+
= 文字コード
|
358
|
+
|
359
|
+
* クライアントライブラリ
|
360
|
+
* クライアント-サーバー接続
|
361
|
+
* データベース
|
362
|
+
* テーブル
|
363
|
+
* カラム
|
364
|
+
…毎に設定可能
|
365
|
+
|
366
|
+
= 嫌な予感…
|
367
|
+
|
368
|
+
= utf8 と utf8mb4
|
369
|
+
|
370
|
+
* UTF-8 文字コード
|
371
|
+
* utf8 は 3バイトまで
|
372
|
+
* utf8mb4 は 4バイトまで
|
373
|
+
* 絵文字(🍣や🍺)は4バイト
|
374
|
+
|
375
|
+
= utf8カラムに4バイト文字を入れようとすると
|
376
|
+
|
377
|
+
接続が utf8 の場合:
|
378
|
+
|
379
|
+
mysql> insert into t (c) values ('今日は🍣と🍺');
|
380
|
+
Query OK, 1 row affected, 1 warning (0.09 sec)
|
381
|
+
mysql> select * from t;
|
382
|
+
+-----------+
|
383
|
+
| c |
|
384
|
+
+-----------+
|
385
|
+
| 今日は |
|
386
|
+
+-----------+
|
387
|
+
|
388
|
+
= utf8カラムに4バイト文字を入れようとすると
|
389
|
+
|
390
|
+
接続が utf8mb4 の場合:
|
391
|
+
|
392
|
+
mysql> insert into t (c) values ('今日は🍣と🍺');
|
393
|
+
Query OK, 1 row affected, 1 warning (0.09 sec)
|
394
|
+
mysql> select * from t;
|
395
|
+
+----------------+
|
396
|
+
| c |
|
397
|
+
+----------------+
|
398
|
+
| 今日は?と? |
|
399
|
+
+----------------+
|
400
|
+
|
401
|
+
= utf8mb4カラムに4バイト文字を入れようとすると
|
402
|
+
|
403
|
+
接続が utf8mb4 の場合:
|
404
|
+
|
405
|
+
mysql> insert into t (c) values ('今日は🍣と🍺');
|
406
|
+
Query OK, 1 row affected (0.06 sec)
|
407
|
+
mysql> select * from t;
|
408
|
+
+----------------------+
|
409
|
+
| c |
|
410
|
+
+----------------------+
|
411
|
+
| 今日は🍣と🍺 |
|
412
|
+
+----------------------+
|
413
|
+
|
414
|
+
= utf8mb4カラムに4バイト文字を入れようとすると
|
415
|
+
|
416
|
+
接続が utf8 の場合:
|
417
|
+
|
418
|
+
mysql> insert into t (c) values ('今日は🍣と🍺');
|
419
|
+
Query OK, 1 row affected, 1 warning (0.06 sec)
|
420
|
+
mysql> select * from t;
|
421
|
+
+--------------------+
|
422
|
+
| c |
|
423
|
+
+--------------------+
|
424
|
+
| 今日は????と?? |
|
425
|
+
+--------------------+
|
426
|
+
|
427
|
+
= 4バイト文字を utf8 接続から取り出すと
|
428
|
+
|
429
|
+
mysql> select * from t;
|
430
|
+
+----------------+
|
431
|
+
| c |
|
432
|
+
+----------------+
|
433
|
+
| 今日は?と? |
|
434
|
+
+----------------+
|
435
|
+
|
436
|
+
= 「?」の調査
|
437
|
+
|
438
|
+
mysql> select hex(c) from t;
|
439
|
+
+------------------------------------------+
|
440
|
+
| hex(c) |
|
441
|
+
+------------------------------------------+
|
442
|
+
| E4BB8AE697A5E381AFF09F8DA3E381A8F09F8DBA | ←ちゃんと入ってる
|
443
|
+
| E4BB8AE697A5E381AF3F3F3F3FE381A83F3F | ←データが「?」
|
444
|
+
+------------------------------------------+
|
445
|
+
|
446
|
+
= 混ぜるな危険!
|
447
|
+
|
448
|
+
= 全部 utf8 / utf8mb4 に統一すれば安全
|
449
|
+
|
450
|
+
= まとめ
|
451
|
+
|
452
|
+
= 歴史的経緯により日本語には複数の文字コードが使用されている
|
453
|
+
|
454
|
+
= これからは UTF-8 を使えばみんなハッピー
|
455
|
+
|
456
|
+
= 本当に?
|
457
|
+
|
458
|
+
= ((*Unicode の闇*))
|
459
|
+
|
460
|
+
== prop
|
461
|
+
|
462
|
+
: background-color
|
463
|
+
black
|
464
|
+
|
465
|
+
= 中国語と日本語で文字が統一
|
466
|
+
|
467
|
+
# image
|
468
|
+
# src = 写真.png
|
469
|
+
# relative-height = 80
|
470
|
+
|
471
|
+
= 合成文字
|
472
|
+
|
473
|
+
* が (E3 81 8C)
|
474
|
+
|
475
|
+
* が (E3 81 8B E3 82 99)
|
476
|
+
|
477
|
+
* 「か」 +「゙ 」の二文字
|
478
|
+
|
479
|
+
* 比較には正規化が必要
|
480
|
+
|
481
|
+
= 色付き絵文字の肌色問題
|
482
|
+
|
483
|
+
* 絵文字は日本発祥
|
484
|
+
* 肌色が一種類
|
485
|
+
* 「人種差別だ!」
|
486
|
+
* 合成文字で解決
|
487
|
+
|
488
|
+
# image
|
489
|
+
# src = color-emoji.png
|
490
|
+
# relative-width = 80
|
491
|
+
|
492
|
+
(('note:これからの絵文字の実装指針、UTR #51“Unicode Emoji”とはなにか -INTERNET Watch http://internet.watch.impress.co.jp/docs/special/20150131_686161.html'))
|
493
|
+
|
494
|
+
= 俺達の戦いはこれからだ!
|
495
|
+
|
496
|
+
= おわり
|
Binary file
|
data/pepper.png
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rabbit-slide-tommy-mojibake
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- "とみたまさひろ"
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-06-16 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rabbit
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 2.0.2
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 2.0.2
|
27
|
+
description: "文字化けについて"
|
28
|
+
email:
|
29
|
+
- tommy@tmtm.org
|
30
|
+
executables: []
|
31
|
+
extensions: []
|
32
|
+
extra_rdoc_files: []
|
33
|
+
files:
|
34
|
+
- ".rabbit"
|
35
|
+
- MyBooks.jpg
|
36
|
+
- README.rd
|
37
|
+
- Rakefile
|
38
|
+
- color-emoji.png
|
39
|
+
- config.yaml
|
40
|
+
- icon.jpg
|
41
|
+
- lavie.png
|
42
|
+
- mojibake.png
|
43
|
+
- mojibake.rab
|
44
|
+
- pdf/mojibake-mojibake.pdf
|
45
|
+
- pepper.png
|
46
|
+
- "サンチーム.png"
|
47
|
+
- "メールアドレス正規表現.png"
|
48
|
+
- "写真.png"
|
49
|
+
- "文字化け.pdf"
|
50
|
+
homepage: http://slide.rabbit-shocker.org/authors/tommy/mojibake/
|
51
|
+
licenses: []
|
52
|
+
metadata: {}
|
53
|
+
post_install_message:
|
54
|
+
rdoc_options: []
|
55
|
+
require_paths:
|
56
|
+
- lib
|
57
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
63
|
+
requirements:
|
64
|
+
- - ">="
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '0'
|
67
|
+
requirements: []
|
68
|
+
rubyforge_project:
|
69
|
+
rubygems_version: 2.4.5
|
70
|
+
signing_key:
|
71
|
+
specification_version: 4
|
72
|
+
summary: "文字化け"
|
73
|
+
test_files: []
|