Offtopic: Don't even ask me why I got into this topic, because I will tell you all about it. :P
I was investigating how to convert emoticons/smilies found on this blog (this is quite simple and I already knew what I needed to do, but stealing pre-made scripts is far easier :) ) when I had a bright idea (in retrospect, it's probably a dumb idea). Knowing that Google Chat in GMail converts your smilies on the fly, I decided to see how the smart folks at Google did it.
Google Chat emoticons are actually what...‽
That was a bad idea. First off, the smiley javascript is compressed (whitespace trimmed, single letter variables and functions), which makes it a pain to read.Secondly, Google doesn't implement emoticons like other (normal) people. What do I mean? Well, you'd expect the images of emoticons to be in the .gif format, right? (Most smilies I see are in gif or Flash.) At Google, that would get you nowhere. Google Chat smilies are actually .png files.
Why Google? Why?
I suspect the reason they did this is to make them animated when your cursor hovers them. This is accomplished with some clever javascript being executed when your cursor hits a smiley.The smiley is first trapped in a 12px high image tag. A script manipulates a smiley's y-position (vertical position) values via the background-position attribute. It starts from 0px and increments by 1 till (the height of the image - height of smiley image tag, which is 12px), thus simulating an animation.
Or at least that's what I think is happening. :) I don't think there's any way of replicating this effect with gifs unless they're reloaded, although it's possible with Flash (Flash plugin required though).
No Full List of Google Chat Emoticons‽
The third reason why I shouldn't have gone the Google way may interest some of you. You can't find the full listing of available Google Chat Emoticons. Believe me I tried googling for it. I came across the official listing and some unofficial ones (which more or less list the official ones) but no full listing.The Unofficial Full List of Google Chat Emoticons
This is why I've decided to make an unofficial full list of Google Chat Emoticons that you can use. It probably serves no purpose at all besides giving you a chance to try all of them out and admire how they look in Google Chat. (Update: I've uncovered even more undocumented emoticons here!)To start off, I ripped the official listing and placed them here. :)
Emoticon | Key Combination |
![]() Heart/Love | <3 |
![]() It's a monkey! | :(|) |
![]() Rock out. | \m/ |
![]() Shocked | :-o |
![]() Grin | :D |
![]() Frown | :( |
![]() Angry | x-( |
![]() Cool | B-) |
![]() Cry | :'( |
![]() Equal Grin | =D |
![]() Wink | ;) |
![]() Straight Face | :-| |
![]() Equal Smile | =) |
![]() Nose Grin | :-D |
![]() Big nose wink | ;^) |
![]() Nose wink | ;-) |
![]() Nose smile | :-) |
![]() Slant | :-/ |
![]() Tongue | :P |
Here are the rest of the smilies that are missing from the above list.
Emoticon | Key Combination |
![]() Cowbell | +/'\ |
![]() Crab | V.v.V |
![]() Devil | }:-) |
![]() Equal sad | =( |
![]() Equal slant | =/ |
![]() Equal tongue | =P |
![]() Nose sad | :-( |
![]() Smile | :) |
![]() Wince | >.< |
![]() Nose tongue | :-P |



































