emoji: yahoo table (Y!M)
authorMischa POSLAWSKY <perl@shiar.org>
Tue, 6 Jul 2010 22:49:32 +0000 (00:49 +0200)
committerMischa POSLAWSKY <perl@shiar.org>
Wed, 10 Nov 2010 21:40:55 +0000 (22:40 +0100)
emoji-msn.inc.pl
emoji-yahoo.inc.pl [new file with mode: 0644]
emoji.plp

index 052805c..bd88b29 100644 (file)
@@ -1,5 +1,7 @@
 # http://messenger.msn.com/Resource/Emoticons.aspx
 
+'faces',
+
 regular_smile  => [':-) :)',   '',     0x0263A,        "smile"],
 teeth_smile    => [':-D :d',   '',     0x1F610,        "open-mouthed"],
 omg_smile      => [':-O :o',   '',     0x1F602,        "surprised"],
@@ -25,6 +27,9 @@ devil_smile   => ['(6)',      '',     0x1F627,        "devil"],
 '74_74'        => ['<:o)',     'fuzzy',        0x1F389,        "party"],
 '75_75'        => ['8-)',      'todo', 0,      "eye-rolling"],
 '77_77'        => ['|-)',      '',     0x1F620,        "sleepy"],
+
+'objects',
+
 coffee => ['(C) (c)',  '',     0x02615,        "coffee cup"],
 thumbs_up      => ['(Y) (y)',  '',     0x1F447,        "thumbs up"],
 thumbs_down    => ['(N) (n)',  '',     0x1F44F,        "thumbs down"],
@@ -54,6 +59,9 @@ star  => ['(*)',      '',     0x02606,        "star"],
 envelope       => ['(E) (e)',  '',     0x1F538,        "e-mail"],
 clock  => ['(O) (o)',  '',     0x023F0,        "clock"],
 messenger      => ['(M) (m)',  'fuzzy',        0x1F465,        "MSN Messenger icon"],
+
+'secondary',
+
 '53_53'        => ['(sn)',     '',     0x1F40A,        "snail"],
 '70_70'        => ['(bah)',    '',     0x1F411,        "black sheep"],
 '55_55'        => ['(pl)',     '',     0x1F374,        "plate"],
diff --git a/emoji-yahoo.inc.pl b/emoji-yahoo.inc.pl
new file mode 100644 (file)
index 0000000..f7ced7e
--- /dev/null
@@ -0,0 +1,120 @@
+# http://messenger.yahoo.com/features/emoticons/
+
+'part 1',
+
+1      => [':)',       'eminent',      0,      "happy"],
+2      => [':(',       'eminent',      0,      "sad"],
+3      => [';)',       'eminent',      0,      "winking"],
+4      => [':D',       'eminent',      0,      "big grin"],
+5      => [';;)',      '',     0,      "batting eyelashes"],
+6      => ['>:D<',     '',     0,      "big hug"],
+7      => [':-/',      'eminent',      0,      "confused"],
+8      => [':x',       '',     0,      "love struck"],
+9      => [':">',      'eminent',      0,      "blushing"],
+10     => [':P',       'eminent',      0,      "tongue"],
+11     => [':-*',      'eminent',      0,      "kiss"],
+12     => ['=((',      '',     0,      "broken heart"],
+13     => [':-O',      'eminent',      0,      "surprise"],
+14     => ['X(',       'eminent',      0,      "angry"],
+15     => [':>',       'eminent',      0,      "smug"],
+16     => ['B-)',      'eminent',      0,      "cool"],
+17     => [':-S',      'eminent',      0,      "worried"],
+18     => ['#:-S',     '',     0,      "whew!"],
+19     => ['>:)',      'eminent',      0,      "devil"],
+20     => [':((',      'eminent',      0,      "crying"],
+21     => [':))',      'eminent',      0,      "laughing"],
+
+'part 2',
+
+22     => [':|',       'eminent',      0,      "straight face"],
+23     => ['/:)',      '',     0,      "raised eyebrows"],
+24     => ['=))',      '',     0,      "rolling on the floor"],
+25     => ['O:-)',     '',     0,      "angel"],
+26     => [':-B',      '',     0,      "nerd"],
+27     => ['=;',       '',     0,      "talk to the hand"],
+101    => [':-c',      '',     0,      "call me"],
+100    => [':)]',      '',     0,      "on the phone"],
+102    => ['~X(',      '',     0,      "at wits' end"],
+103    => [':-h',      '',     0,      "wave"],
+104    => [':-t',      '',     0,      "time out"],
+105    => ['8->',      '',     0,      "day dreaming"],
+28     => ['I-)',      '',     0,      "sleepy"],
+29     => ['8-|',      '',     0,      "rolling eyes"],
+30     => ['L-)',      '',     0,      "loser"],
+31     => [':-&',      'eminent',      0,      "sick"],
+32     => [':-$',      '',     0,      "don't tell anyone"],
+33     => ['[-(',      '',     0,      "no talking"],
+34     => [':O)',      '',     0,      "clown"],
+35     => ['8-}',      '',     0,      "silly"],
+36     => ['<:-P',     '',     0,      "party"],
+
+'part 3',
+
+37     => ['(:|',      'eminent',      0,      "yawn"],
+38     => ['=P~',      '',     0,      "drooling"],
+39     => [':-?',      'eminent',      0,      "thinking"],
+40     => ['#-o',      '',     0,      "d'oh"],
+41     => ['=D>',      '',     0,      "applause"],
+42     => [':-SS',     '',     0,      "nail biting"],
+43     => ['@-)',      '',     0,      "hypnotized"],
+44     => [':^o',      '',     0,      "liar"],
+45     => [':-w',      '',     0,      "waiting"],
+46     => [':-<',      '',     0,      "sigh"],
+47     => ['>:P',      '',     0,      "phbbbbt"],
+48     => ['<):)',     '',     0,      "cowboy"],
+109    => ['X_X',      '',     0,      "I don't want to see"],
+110    => [':!!',      '',     0,      "hurry up!"],
+111    => ['\m/',      '',     0,      "rock on!"],
+112    => [':-q',      '',     0,      "thumbs down"],
+113    => [':-bd',     '',     0,      "thumbs up"],
+114    => ['^#(^',     '',     0,      "it wasn't me"],
+pirate_2       => [':ar!',     'web',  0,      "pirate"],
+
+# http://messenger.yahoo.com/features/hiddenemoticons/
+
+'hidden 1',
+
+108    => [':o3',      'hidden',       0,      "puppy dog eyes"],
+106    => [':-??',     'hidden',       0,      "I don't know"],
+107    => ['%-(',      'hidden',       0,      "not listening"],
+49     => [':@)',      'hidden',       0,      "pig"],
+50     => ['3:-O',     'hidden',       0,      "cow"],
+51     => [':(|)',     'hidden',       0,      "monkey"],
+52     => ['~:>',      'hidden',       0,      "chicken"],
+53     => ['@};-',     'hidden',       0,      "rose"],
+54     => ['%%-',      'hidden',       0,      "good luck"],
+55     => ['**==',     'hidden',       0,      "flag"],
+56     => ['(~~)',     'hidden',       0,      "pumpkin"],
+57     => ['~O)',      'hidden',       0,      "coffee"],
+58     => ['*-:)',     'hidden',       0,      "idea"],
+
+'hidden 2',
+
+59     => ['8-X',      'hidden',       0,      "skull"],
+60     => ['=:)',      'hidden',       0,      "bug"],
+61     => ['>-)',      'hidden',       0,      "alien"],
+62     => [':-L',      'hidden',       0,      "frustrated"],
+63     => ['[-O<',     'hidden',       0,      "praying"],
+64     => ['$-)',      'hidden',       0,      "money eyes"],
+65     => [':-"',      'hidden',       0,      "whistling"],
+66     => ['b-(',      'hidden',       0,      "feeling beat up"],
+67     => [':)>-',     'hidden',       0,      "peace sign"],
+68     => ['[-X',      'hidden',       0,      "shame on you"],
+69     => ['\:D/',     'hidden',       0,      "dancing"],
+
+'hidden 3',
+
+70     => ['>:/',      'hidden',       0,      "bring it on"],
+71     => [';))',      'hidden',       0,      "hee hee"],
+76     => [':-@',      'hidden',       0,      "chatterbox"],
+77     => ['^:)^',     'hidden',       0,      "not worthy"],
+78     => [':-j',      'hidden',       0,      "oh go on"],
+79     => ['(*)',      'hidden',       0,      "star"],
+72     => ['o->',      'hidden',       0,      "hiro"],
+73     => ['o=>',      'hidden',       0,      "billy"],
+74     => ['o-+',      'hidden',       0,      "april"],
+75     => ['(%)',      'hidden',       0,      "yin yang"],
+115    => [':bz',      'hidden',       0,      "bee"],
+transformer    => ['[..]',     'hidden web',   0,      "transformer"],
+
+# vi:ts=15
index 2bb0b9a..176b339 100644 (file)
--- a/emoji.plp
+++ b/emoji.plp
@@ -13,22 +13,34 @@ Html({
 });
 
 :>
-<h1>MSN emoticons</h1>
+<h1>IM emoticons</h1>
 
 <:
-my @info = do 'emoji.inc.pl' or die $@;
-my $MSNURL = '<img src="http://messenger.msn.com/Resource/emoticons/%s.gif">';
+my %ICONURL = (
+       msn   => 'http://messenger.msn.com/Resource/emoticons/%s.gif',
+       yahoo => 'http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/%s.gif',
+#      yahoo-web => 'http://l.yimg.com/a/i/us/msg/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;
+print "<ul>\n";
+
+for my $system (qw'msn yahoo') {
+       my @info = do "emoji-$system.inc.pl";
+       printf '<div class="section"><h3>%s</h3>'."\n\n", $system;
+       print '<table><tbody>'."\n";
+       for (my $i = 0; $i <= $#info; $i++) {
+               my $name = $info[$i];
+               unless (ref $info[$i+1] eq 'ARRAY') {
+                       printf '</table><table><tbody>'."\n", $name;
+                       next;
+               }
+               my ($input, $attr, $char, $desc) = @{ $info[++$i] };
+               printf('<tr><th><img src="'.$ICONURL{$system}.'"><td><kbd>%s</kbd><td>%s%s'."\n",
+                       $name, EscapeHTML($input), $desc // $name, $char ? '<td>'.chr($char) : '',
+               );
        }
-       printf "<tr><th>%s<td><kbd>%s</kbd><td>$MSNURL<td>%s\n",
-               $name, EscapeHTML($input), $desc, chr($char);
+       print "</table></div>\n\n";
 }
-print "</table>\n";
+
+print "</ul><hr>\n\n";