emoji: page listing msn emoticon i/o and unicode equivalents
authorMischa POSLAWSKY <perl@shiar.org>
Fri, 2 Jul 2010 19:24:41 +0000 (21:24 +0200)
committerMischa POSLAWSKY <perl@shiar.org>
Tue, 6 Jul 2010 21:17:52 +0000 (23:17 +0200)
emoji-msn.inc.pl [new file with mode: 0644]
emoji.plp [new file with mode: 0644]
index.plp

diff --git a/emoji-msn.inc.pl b/emoji-msn.inc.pl
new file mode 100644 (file)
index 0000000..052805c
--- /dev/null
@@ -0,0 +1,73 @@
+# http://messenger.msn.com/Resource/Emoticons.aspx
+
+regular_smile  => [':-) :)',   '',     0x0263A,        "smile"],
+teeth_smile    => [':-D :d',   '',     0x1F610,        "open-mouthed"],
+omg_smile      => [':-O :o',   '',     0x1F602,        "surprised"],
+tongue_smile   => [':-P :p',   '',     0x1F60A,        "tongue out"],
+wink_smile     => [';-) ;)',   '',     0x1F625,        "wink"],
+sad_smile      => [':-( :(',   '',     0x02639,        "sad"],
+confused_smile => [':-S :s',   '',     0x1F604,        "confused"],
+what_smile     => [':-| :|',   '',     0x1F603,        "disappointed"],
+cry_smile      => [":'(",      '',     0x1F618,        "crying"],
+red_smile      => [':-$ :$',   '',     0x1F60F,        "embarrassed"],
+shades_smile   => ['(H) (h)',  '',     0x1F628,        "hot"],
+angry_smile    => [':-@ :@',   '',     0x1F600,        "angry"],
+angel_smile    => ['(A) (a)',  '',     0x1F626,        "angel"],
+devil_smile    => ['(6)',      '',     0x1F627,        "devil"],
+'47_47'        => [':-#',      'fuzzy',        0x1F637,        "don't tell anyone"],
+'48_48'        => ['8o|',      'todo', 0,      "baring teeth"],
+'49_49'        => ['8-|',      'fuzzy',        0x1F453,        "nerd"],
+'50_50'        => ['^o)',      'todo', 0,      "sarcastic"],
+'51_51'        => [':-*',      '',     0,      "secret telling"],
+'52_52'        => ['+o(',      'fuzzy',        0x1F60E,        "sick"],
+'71_71'        => [':^)',      'fuzzy',        0x1F61D,        "i don't know"],
+'72_72'        => ['*-)',      '',     0x1F61E,        "thinking"],
+'74_74'        => ['<:o)',     'fuzzy',        0x1F389,        "party"],
+'75_75'        => ['8-)',      'todo', 0,      "eye-rolling"],
+'77_77'        => ['|-)',      '',     0x1F620,        "sleepy"],
+coffee => ['(C) (c)',  '',     0x02615,        "coffee cup"],
+thumbs_up      => ['(Y) (y)',  '',     0x1F447,        "thumbs up"],
+thumbs_down    => ['(N) (n)',  '',     0x1F44F,        "thumbs down"],
+beer_mug       => ['(B) (b)',  '',     0x1F37A,        "beer mug"],
+martini        => ['(D) (d)',  '',     0x1F378,        "martini glass"],
+girl   => ['(X) (x)',  '',     0x1F467,        "girl"],
+guy    => ['(Z) (z)',  '',     0x1F466,        "boy"],
+guy_hug        => ['({)',      '',     0,      "left hug"],
+girl_hug       => ['(})',      '',     0,      "right hug"],
+bat    => [':-[ :[',   '',     0,      "vampire bat"],
+cake   => ['(^)',      '',     0x1F382,        "birthday cake"],
+heart  => ['(L) (l)',  '',     0x02665,        "red heart"],
+broken_heart   => ['(U) (u)',  '',     0x1F493,        "broken heart"],
+kiss   => ['(K) (k)',  '',     0x1F48A,        "red lips"],
+present        => ['(G) (g)',  '',     0x1F381,        "gift with a bow"],
+rose   => ['(F) (f)',  '',     0x1F339,        "red rose"],
+wilted_rose    => ['(W) (w)',  '',     0,      "wilted rose"],
+camera => ['(P) (p)',  '',     0x1F547,        "camera"],
+film   => ['(~)',      '',     0x1F3A5,        "filmstrip"],
+cat    => ['(@)',      '',     0x1F62A,        "cat face"],
+dog    => ['(&)',      'fuzzy',        0x1F435,        "dog face"],
+phone  => ['(T) (t)',  '',     0x1F52E,        "telephone receiver"],
+lightbulb      => ['(I) (i)',  '',     0x1F4A1,        "light bulb"],
+note   => ['(8)',      '',     0x0266A,        "note"],
+moon   => ['(S)',      '',     0x1F31C,        "sleeping half-moon"],
+star   => ['(*)',      '',     0x02606,        "star"],
+envelope       => ['(E) (e)',  '',     0x1F538,        "e-mail"],
+clock  => ['(O) (o)',  '',     0x023F0,        "clock"],
+messenger      => ['(M) (m)',  'fuzzy',        0x1F465,        "MSN Messenger icon"],
+'53_53'        => ['(sn)',     '',     0x1F40A,        "snail"],
+'70_70'        => ['(bah)',    '',     0x1F411,        "black sheep"],
+'55_55'        => ['(pl)',     '',     0x1F374,        "plate"],
+'56_56'        => ['(||)',     '',     0x1F35C,        "bowl"],
+'57_57'        => ['(pi)',     '',     0x1F355,        "pizza"],
+'58_58'        => ['(so)',     'fuzzy',        0x1F3C8,        "soccer ball"],
+'59_59'        => ['(au)',     '',     0x1F597,        "auto"],
+'60_60'        => ['(ap)',     '',     0x02708,        "airplane"],
+'61_61'        => ['(um)',     '',     0x02602,        "umbrella"],
+'62_62'        => ['(ip)',     '',     0x1F334,        "island with a palm tree"],
+'63_63'        => ['(co)',     '',     0x1F50B,        "computer"],
+'64_64'        => ['(mp)',     '',     0x1F540,        "mobile phone"],
+'66_66'        => ['(st)',     'todo', 0,      "stormy cloud"],
+'73_73'        => ['(li)',     'fuzzy',        0x02607,        "lightning"],
+'69_69'        => ['(mo)',     '',     0x1F501,        "money"],
+
+# vi:ts=15
diff --git a/emoji.plp b/emoji.plp
new file mode 100644 (file)
index 0000000..2bb0b9a
--- /dev/null
+++ b/emoji.plp
@@ -0,0 +1,34 @@
+<(common.inc.plp)><:
+
+Html({
+       title => 'emoji cheat sheet',
+       version => 'v1.0',
+       description => [
+               "MSN emoticons",
+       ],
+       keywords => [qw'
+               sheet cheat emoticon smiley emoji msn
+       '],
+       stylesheet => [qw'light dark red'],
+});
+
+:>
+<h1>MSN emoticons</h1>
+
+<:
+my @info = do 'emoji.inc.pl' or die $@;
+my $MSNURL = '<img src="http://messenger.msn.com/Resource/emoticons/%s.gif">';
+
+print '<table class="glyphs"><tbody>'."\n";
+for (my $i = 0; $i <= $#info; $i++) {
+       my $name = $info[$i++];
+       my ($input, $char, $desc) = @{ $info[$i] };
+       if ($char < 0) {
+               # inexact
+               $char = -$char;
+       }
+       printf "<tr><th>%s<td><kbd>%s</kbd><td>$MSNURL<td>%s\n",
+               $name, EscapeHTML($input), $desc, chr($char);
+}
+print "</table>\n";
+
index 91c5b39..cc4c9af 100644 (file)
--- a/index.plp
+++ b/index.plp
@@ -51,6 +51,7 @@ but you're free to use, print, alter, and redistribute under the AGPL license.
 <ul>
 <li><a href="/countries">country codes</a>
 <li><a href="/termcol">terminal colours</a>
+<li><a href="/emoji">emoticons</a>
 </ul>
 </div>