Archive | March 2010

Radio Tray development news

I want to thank everyone for all the contributions. I’ve received a few interesting contributions to improve radio tray functionality as well as a lot of language translations. Radio Tray now has support for 11 languages!!

There has been a lot of work on improving the development process of radio tray. One of the changes is the use of the Mercurial source code management system, instead of Subversion. All development will now be done on the Mercurial repository, which already has lots of fixes and code re-structuring. The Subversion repository will be soon closed so that no one gets confused which repository to use.
Another change is with the buid script. The tarball will have a different structure and I’m going to need some help to create distribution packages. I’ve always released both a tarball and a debian package. The problem is that, although I called it "debian", it was really meant for Ubuntu. Because of that, some users had some problems making it work on Debian. I think I’m still going to build the Ubuntu deb package, but it would be great if someone could help me do/maintain a Debian package also.

Important note: because of these changes, the code in the mercurial repository is not yet stable. I’ll tell you when everything is running smooth again.

 With all of this, I’m planning to release soon a 0.5.1 version which won’t have any special new features, just some code and gui improvements and of course the contributed translations.I’m aware of some bugs that have been reported and I hope to address those on the following version. I still haven’t decided if there will be a 0.5.2 version, with just bug fixes, or if this bug fixes will be address on version 0.6 (along with some new features).

Talking about new features, the next features (maybe not all of them on 0.6 version) I plan to implement on radio tray are: some more gui improvements and better feedback for the user, DBus interface and support for at least one more playlist format. I have a few more ideas for the future, but one step at time 😉
The cool thing about this project is that I get to learn some cool things that I wanted to learn from some time but never got the chance. DBus is one of the examples. Because I want to add a DBus interface, I now have the chance and motivation to read and learn about it.


Translating howto

For all of you that may want to help translate Radio Tray, I bring good news. Thanks to Og Maciel that kindly offered his help and introduced me to Transifex, translating Radio Tray is quite easy.

First, some information on how translation is done under the hoods. Probably most of you already know, but for those who don’t, the most used way of translating an application in Linux is with GNU gettext. Without going into much detail, gettext provides a simple way to translate an application, both from the developer and the translator point of views.
For the translator, all he has to do is fill a text file with a key-value structure. Normally, the key is the expression in english, and the value is the translated expression. Here’s an example:


msgid "Turn Off Radio"
msgstr "Desligar Radio"


 If you open the "share/radiotray/i18n/radiotray.pot" you’ll see a template ready to fill. From that folder, all subfolders represent a specific language and have a "po" file that is nothing more than a "pot" file, with the values filled in. If you want to help, you could just fill those blanks and send me the file.

However, for organising the whole translation process better, there’s Transifex. Transifex is synchronized with the sourceforge project and gives a simple interface to create and edit the "po" files. If you want to use Transifex, you just have to register and go to the Radio Tray project page.

From there, select the "trunk" component and a list of languages will be listed. If the language you want is already in the list, you can ask to edit that language. If not, you can submit a new "po" file for the language you want. You can also join a translating team or ask to create a new one. But instead of me textually explaining how all of this works, it’s better to just watch the howto video, obtained from Transifex help page.

Radio Tray has very few expressions to translate, so it won’t take you much time. The translated languages will be available in the following release of Radio Tray. If you can’t wait, you can just grab them from the SVN repository in the sourceforge project 🙂

Thank you all for contributing and happy listening!

Radio Tray 0.5 now with translation support

This is a quick post announcing version 0.5 of Radio Tray. As promised, it now has translation support 🙂 Not many languages supported yet, but slowly I hope it gets more languages added. After all, there’s not much to translate. Soon, I’ll post some information on how you can help translate Radio Tray to your language and thus help to improve the user experience for all Radio Tray users.

There’s also a lot of internal changes on how the files are organized. In part due to the translation support, but also to try to fix some bugs. I hope all of you can now use Radio Tray without problems.

Happy listening!

Adding translation

I got some time this weekend to develop Radio Tray, and as promised I started to add translation support. One gets so used to read and write in english that we end up neglecting our mother language. Everyday I read and write in english, but my mother language is portuguese. I just had to make Radio Tray available in portuguese also 🙂 Of course, that means having it available for all other languages. Well, I’m not proficient in many languages but I hope some of you will help translate the few sentences that Radio Tray has.

Right now, I added i18n support but it still has some issues. I’ll release a new version as soon as I fix these issues. And then I’ll give instructions on how you can help.

I’m also quite happy  (and a little overwhelmed) by the suggestions that keep coming. Some of them I already thought of them before (but I still didn’t have time to implement) but others I didn’t. It’s surprising to see so many possible new features for an apparently simple application.

Have fun