• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

lib/Encode/JP/H24-Oct-2010-3,4722,914

t/H03-May-2022-2,4532,275

COPYINGH A D23-Nov-200911.1 KiB202169

ChangesH A D24-Oct-20101.6 KiB3831

MANIFESTH A D24-Oct-2010770 4140

META.ymlH A D24-Oct-2010540 2423

Makefile.PLH A D23-Nov-2009419 1714

READMEH A D24-Oct-20106.4 KiB151111

README

1NAME
2    Encode::JP::Emoji - Emoji encodings and cross-mapping tables in pure
3    Perl
4
5SYNOPSIS
6        use Encode;
7        use Encode::JP::Emoji;
8
9        # DoCoMo Shift_JIS <SJIS+F89F> octets to DoCoMo UTF-8 <U+E63E> octets
10        my $sun = "\xF8\x9F";
11        Encode::from_to($sun, 'x-sjis-emoji-docomo', 'utf8');
12
13        # KDDI Shift_JIS <SJIS+F7F5> octets to SoftBank Shift_JIS <SJIS+F747> octets
14        my $scream = "\xF7\xF5";
15        Encode::from_to($scream, 'x-sjis-e4u-kddiapp', 'x-sjis-e4u-softbank3g');
16
17        # DoCoMo UTF-8 <U+E6E2> octets to Google UTF-8 <U+FE82E> octets
18        my $keycap1 = "\xEE\x9B\xA2";
19        Encode::from_to($keycap1, 'x-utf8-e4u-docomo', 'utf8');
20
21        # Google UTF-8 <U+FE001> string to KDDI Shift_JIS <SJIS+F7C5> octets
22        my $newmoon = "\x{FE011}";
23        my $kddi = Encode::encode('x-sjis-e4u-kddiweb', $newmoon);
24
25        # SoftBank Shift_JIS <SJIS+F750> octets to SoftBank UTF-8 <U+E110> string
26        my $clover = "\xF7\x50";
27        my $softbank = Encode::decode('x-sjis-emoji-softbank3g', $clover);
28
29DESCRIPTION
30    This module provides encodings which support emoji picture characters.
31
32    The first group of encodings uses carriers' private code points as
33    Perl's internal string which has UTF-8 flag on.
34
35        Name                        Encoding    Octets Emoji    String Emoji
36        --------------------------------------------------------------------
37        x-sjis-emoji-docomo         Shift_JIS   DoCoMo          DoCoMo
38        x-sjis-emoji-kddiapp        Shift_JIS   KDDI            KDDI(app)
39        x-sjis-emoji-kddiweb        Shift_JIS   KDDI            KDDI(web)
40        x-sjis-emoji-softbank2g     Shift_JIS   SoftBank(2G)    SoftBank
41        x-sjis-emoji-softbank3g     Shift_JIS   SoftBank(3G)    SoftBank
42        x-utf8-emoji-docomo         UTF-8       DoCoMo          DoCoMo
43        x-utf8-emoji-kddiapp        UTF-8       KDDI(app)       KDDI(app)
44        x-utf8-emoji-kddiweb        UTF-8       KDDI(web)       KDDI(web)
45        x-utf8-emoji-softbank2g     UTF-8       SoftBank(2G)    SoftBank
46        x-utf8-emoji-softbank3g     UTF-8       SoftBank(3G)    SoftBank
47        --------------------------------------------------------------------
48
49    KDDI has two version of thier private code points. KDDI(app) is official
50    and documented version used in EZappli and character references.
51    KDDI(web), on the other hand, is undocumented version but used in UTF-8
52    web pages. Use KDDI(web) encoding recommended in most cases.
53
54    SoftBank also has two version of thier emoji representations.
55    SoftBank(2G) uses escape sequence style. SoftBank(3G) uses binary
56    representations. Use SoftBank(3G) encoding recommended in most cases.
57
58    The second group uses Googles's private code points internaly. This
59    means Google's encoding could be the interchange encoding for others.
60
61        Name                        Encoding    Octets Emoji    String Emoji
62        --------------------------------------------------------------------
63        x-sjis-e4u-docomo           Shift_JIS   DoCoMo          Google
64        x-sjis-e4u-kddiapp          Shift_JIS   KDDI            Google
65        x-sjis-e4u-kddiweb          Shift_JIS   KDDI            Google
66        x-sjis-e4u-softbank2g       Shift_JIS   SoftBank(2G)    Google
67        x-sjis-e4u-softbank3g       Shift_JIS   SoftBank(3G)    Google
68        x-utf8-e4u-docomo           UTF-8       DoCoMo          Google
69        x-utf8-e4u-kddiapp          UTF-8       KDDI(app)       Google
70        x-utf8-e4u-kddiweb          UTF-8       KDDI(web)       Google
71        x-utf8-e4u-softbank2g       UTF-8       SoftBank(2G)    Google
72        x-utf8-e4u-softbank3g       UTF-8       SoftBank(3G)    Google
73        --------------------------------------------------------------------
74
75    The cross-carriers mapping tables are based on emoji4unicode, Emoji for
76    Unicode, project on Google Code. See more detail on
77    <http://code.google.com/p/emoji4unicode/> about the project.
78
79    The next group also uses Google's.
80
81        Name                        Encoding    Octets Emoji    String Emoji
82        --------------------------------------------------------------------
83        x-utf8-e4u-unicode          UTF-8       Unicode Std.    Google
84        x-utf8-e4u-google           UTF-8       Google          Google
85        x-utf8-e4u-mixed            UTF-8       (mixed)         Google
86        --------------------------------------------------------------------
87
88    "x-utf8-e4u-unicode" encodes the Unicode 6.0 emojis.
89
90    "x-utf8-e4u-google" does NO translations and exists only for useful.
91
92    "x-utf8-e4u-mixed" accepts all emojis of three mobile carriers mixed. On
93    decoding, however, KDDI(app) emojis would be broken as they have
94    conflicts with SoftBank emojis. So DO NOT use KDDI(app) with this. On
95    encoding, this replaces Google emojis to others definitively. This
96    encoding is friendly for Encode::JP::Mobile and MySQL 5.4. Note that
97    MySQL before 5.5.3 does not support four bytes UTF-8 including both
98    Google and Unicode Standard emojis.
99
100    Tha last group rejects any emojis above. You would use these encodings
101    with Encode::JP::Emoji::FB_EMOJI_TEXT fallback functions.
102
103        Name                        Encoding
104        --------------------------------------------------------------------
105        x-sjis-emoji-none           Shift_JIS
106        x-utf8-emoji-none           UTF-8
107        x-sjis-e4u-none             Shift_JIS
108        x-utf8-e4u-none             UTF-8
109        --------------------------------------------------------------------
110
111DEPENDENCIES
112    This module requires Perl version 5.8.1 or later.
113
114    Unicode::Emoji::E4U is not required on run time.
115
116LINKS
117    *   Subversion Trunk
118
119        <http://emoji4unicode-ll.googlecode.com/svn/trunk/lang/perl/Encode-J
120        P-Emoji/trunk/>
121
122    *   Project Hosting on Google Code
123
124        <http://code.google.com/p/emoji4unicode-ll/>
125
126    *   Google Groups and some Japanese documents
127
128        <http://groups.google.com/group/emoji4unicode-ll>
129
130    *   RT: CPAN request tracker
131
132        <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Encode-JP-Emoji>
133
134    *   AnnoCPAN: Annotated CPAN documentation
135
136        <http://annocpan.org/dist/Encode-JP-Emoji>
137
138    *   Search CPAN
139
140        <http://search.cpan.org/dist/Encode-JP-Emoji/>
141
142AUTHOR
143    Yusuke Kawasaki, <http://www.kawa.net/>
144
145SEE ALSO
146    Encode and Unicode::Emoji::E4U
147
148COPYRIGHT
149    Copyright 2009-2010 Yusuke Kawasaki, all rights reserved.
150
151