Monthly Archives: September 2010

An Instant Messenger Emoticon Theme Generator

For the regular readers of this blog this post is a little different, because it’s in English instead of German as usual. The reason is, this is an announcement of a tool I put together over the last months, which I consider interesting not only for German speaking users. So I hereby announce a smiley theme generator software for different instant messenger programs, but let’s start at the beginning.

In 2007 I took the smiley graphic files from a local internet community1 to build my own emoticon theme for the Jabber client Psi. This was basically putting together a description file and installing it and I described and announced it in this blog.2 Last year I started using Perl Template Toolkit 2 for building my personal homepage and thought this would be a great tool to build this smiley stuff in a more automatic way and for more than one instant messenger. Although I barely remember, it seems I also wrote about it in this blog.3

This year now I made some new friends with different messengers and started reworking the whole thing, especially to add some more messengers and to be able to use it for more graphic themes and here it is: a possibility to put your smiley graphics in a folder, write one description file for the mapping from smiley codes in the text (like :-) or :’-( and so on) to your graphic files, run the build script and have ready to install smiley theme packages for a bunch of different instant messenger programs. Let me quote the README file:

The purpose of this software is to create installable smiley iconset files for various instant messenger programs with a templating mechanism (using Perl Template Toolkit). This means smiley theme authors only have to provide the graphics and write one simple template file with the definitions which texts are related to which graphics, e.g. ‘:-)’ to the smiling graphics file. Add a little metadata, call the build script and you’re done. With help of the templates the definition file formats of the different messengers are created and a packing script does the rest of the magic. You don’t have to worry about a dozen different formats for definition files and packing conventions.

To use this software you need Subversion to check out the sources, an operating system running Perl and the Perl Template Toolkit 2, you must be able to execute shell scripts like from Bash or Zsh and have tar, gzip and zip ready. So every Unix or Linux like OS should work, on Microsoft Windows you could try your luck with cygwin, however I didn’t test this because I run Debian/GNU Linux. ;-)

Check out the tool with your preferred subversion client from and see the file README inside which contains all the necessary descriptions how to use the software. It is licensed under a BSD style license so you are free to use and change it to your needs. We also have a wiki page for it in our bugtracking system. You can also view the sourcecode and create tickets there.

For demonstrating the power of the templating approach I took the very nice (and free) smileys from and let the software build smiley themes for all the already supported instant messengers. You can download pre-build theme files for Adium, Kopete, Miranda, Pidgin and Psi from

Of course these five messengers are not all. If you have a template file for another one, don’t hesitate to contact me. Also if you have free smiley graphics and build a description file we could integrate in the subversion repository, I would be delighted if you just send it in.

In the hope this is useful for anybody else, have fun with it! :-)

  1. WebUni []
  2. WebUni Iconset für Psi []
  3. Mit Kanonen auf Smileys []