Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
めくるめくEmojiの世界/emoji-world
Search
ima1zumi
January 30, 2021
5
2.9k
めくるめくEmojiの世界/emoji-world
ima1zumi
January 30, 2021
Tweet
Share
More Decks by ima1zumi
See All by ima1zumi
Reline 1分 Cooking
ima1zumi
0
4
続・mruby/cにUTF-8 を実装する
ima1zumi
0
3
UTF-8 is coming to mruby/c
ima1zumi
3
4.4k
たのしいString
ima1zumi
1
440
Watchから始めるOSS生活
ima1zumi
0
44
String meets Encoding
ima1zumi
2
2.4k
Emojiの正規表現
ima1zumi
0
3
RubyKaigiで話した話
ima1zumi
1
340
漢字が文字コードになる前の話
ima1zumi
0
3
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
164
13k
Documentation Writing (for coders)
carmenintech
60
3.9k
Practical Orchestrator
shlominoach
182
9.7k
The Cost Of JavaScript in 2023
addyosmani
16
3.8k
Web development in the modern age
philhawksworth
202
10k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
The Language of Interfaces
destraynor
151
23k
How GitHub (no longer) Works
holman
304
140k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
In The Pink: A Labor of Love
frogandcode
138
21k
Music & Morning Musume
bryan
41
5.6k
Transcript
めくるめく めくるめく Emojiの世界 Emojiの世界 2021-01-30 BuriKaigi 2021 1
⾃⼰紹介 ⾃⼰紹介 Twitter: GitHub: Blog: ⾔語: Ruby, Ruby on Rails
FJORD BOOT CAMP / 永和システムマネジメント 最近良く使うEmojiは ima1zumi ima1zumi いまブログ 2
Emojiに興味を持ったきっかけ Emojiに興味を持ったきっかけ RubyのREPL(irb)でEmojiに関するバグを踏む issueを上げる PRを送ってマージされた ⽂字コードとUnicodeとEmojiについて調べる ⾯⽩い! 3
今⽇話すこと 今⽇話すこと Emojiの歴史 厄介なEmoji 4
絵⽂字とは何だろう 絵⽂字とは何だろう 1. 表意⽂字 ⽂字が意味を表す 表⾳⽂字: ⽂字が発⾳を表す 2. ⽂字や⾔葉の代わりとなるもの 3.
⽂章に⾃分の感情を付加する 5
絵⽂字のおこり 絵⽂字のおこり インターネットの普及 BBS(電⼦掲⽰板) エモティコン :-) 顔⽂字 (^_^) 6
ポケベル ポケベル ポケベル ❤ の絵⽂字が存在 「オコッテルノ」「オコッテルノ❤ 」 7
iモード iモード ドコモのiモードに絵⽂字が乗る(1998) ⽂字数の節約、感情表現 表⽰領域の狭さを解決 12x12のドット絵 著作権を取得できない 各キャリアが追従 8
Unicode 6.0 に採択される Unicode 6.0 に採択される ⽇本では10年程度絵⽂字が使われていた 外字領域を使っていて、良い状態ではなかった Google, Apple
からの提案で絵⽂字がUnicodeに⼊ る(2010.10) ⽇本市場での重要性 iOS5でEmojiを使⽤できるようになる(2011.10) スマートフォンの普及とともにEmojiも普及 9
Unicode 6.0 で⼊ったEmojiの⼀部 Unicode 6.0 で⼊ったEmojiの⼀部 ☺ ❤ ✋ ✌
☝ ✊ 10
Emojiの⽂字コードの話 Emojiの⽂字コードの話 ⽂字コード:コードポイント UTF-8 11
闇の制御⽂字たち 闇の制御⽂字たち ZERO WIDTH JOINER SKIN TONE MODIFIER REGIONAL CHARACTER
VARIATION SELECTOR-16 (VS16) COMBINING ENCLOSING KEYCAP 12
ZERO WIDTH JOINER (ZWJ) ZERO WIDTH JOINER (ZWJ) ゼロ幅結合⼦ U+200D
⽂字と⽂字の間に置くと字形が変わる⽂字がある Emojiと別のEmojiを組み合わせて違うEmojiを表 現するために使われる 例: = + ZWJ + U+1F9D1 U+200D U+1F4BB 参考: Recommended Emoji ZWJ Sequences, v13.1 13
SKIN TONE MODIFIER SKIN TONE MODIFIER 肌の⾊を表現する制御⽂字 U+1F3FB 〜 U+1F3FF
例: : U+1F44B : U+1F44B U+1F3FB ref: Full Emoji Modifier Sequences, v13.1 14
REGIONAL INDICATOR REGIONAL INDICATOR 国旗の絵⽂字を表現するときに使う⽂字 U+1F1E6 ( ) 〜 U+1F1FF
( ) 国名コード(ISO 3166-1)に対応 例: = + = + , = + 15
VARIATION SELECTOR-16 (VS16) VARIATION SELECTOR-16 (VS16) Emojiの⽂字表現と絵⽂字表現どちらを使うか指定 するための制御⽂字 HEAVY BLACK
HEART ❤ (U+2764 ) / RED HEART ❤ (U+2764 U+FE0F ) 参照:UTS #51: Unicode Emoji 16
COMBINING ENCLOSING KEYCAP COMBINING ENCLOSING KEYCAP 囲み⽂字 U+0030 U+FE0F U+20E3
0, VALIATION SELECTOR, COMBINING ENCLOSING KEYCAP U+1F51F ... 17
プログラムでEmojiを扱うとき プログラムでEmojiを扱うとき ⽂字数カウントで想定と異なる挙動をしがち 書記素(grapheme cluster )単位で扱う ⾒た⽬の1⽂字を1⽂字として扱う 参考:Rubyで⽂字コードを扱うコードを書くとき に便利なメソッド集 -
Qiita 18
まとめ まとめ Emojiは⽇本で作られ、今は世界中で使われている Emojiを使うと⽂章に感情表現を乗せられて⾯⽩い 実装が複雑なので⾯⽩い 19
参考資料 参考資料 絵⽂字はどのようにして⽣まれ、世界に広がって いったのか? Unicode Emoji v13.1 Index of /Public/emoji/13.1
Emoji - Wikipedia グーグルが絵⽂字を世界標準に提案した理由--国際 化エンジニアに聞くプロジェクトの舞台裏(前編) - CNET Japan ⽣みの親が語る「ケータイ絵⽂字」14年の軌跡と 新たな⼀歩 - ⽇経トレンディネット 20
参考資料 参考資料 Designing the Dumpling Emoji | Yiying Lu -
YouTube Unicodeとは? その歴史と進化、開発者向け基礎 知識 - Build Insider これからの絵⽂字の実装指針、UTR #51 Unicode Emoji とはなにか - INTERNET Watch Watch 21
BuriKaigi BuriKaigi お疲れさまでした お疲れさまでした 22