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
3.1k
めくるめくEmojiの世界/emoji-world
ima1zumi
January 30, 2021
Tweet
Share
More Decks by ima1zumi
See All by ima1zumi
Exploring Reline: Enhancing Command Line Usability
ima1zumi
0
32
10年物のRailsアプリにキャッチアップ!〜コードを読まずに理解したかった〜
ima1zumi
0
55
RubyKaigiの登壇者一覧ページを作った
ima1zumi
0
220
Relineのその後の生活
ima1zumi
0
180
IRB and Reline Kaigi 2024
ima1zumi
0
7
Exploring Reline: Enhancing Command Line Usability
ima1zumi
3
13k
Reline 1分 Cooking
ima1zumi
0
22
続・mruby/cにUTF-8 を実装する
ima1zumi
1
22
UTF-8 is coming to mruby/c
ima1zumi
4
5.2k
Featured
See All Featured
Making Projects Easy
brettharned
116
5.9k
Agile that works and the tools we love
rasmusluckow
328
21k
Thoughts on Productivity
jonyablonski
67
4.4k
Site-Speed That Sticks
csswizardry
2
190
The World Runs on Bad Software
bkeepers
PRO
65
11k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
RailsConf 2023
tenderlove
29
940
The Cult of Friendly URLs
andyhume
78
6.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
98
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