Version 0.4 of CoyIM is coming in February 2022. When you read this, it might already be out there! This release contains many important improvements and new functionality. One of the more important ones is that this is the first release of CoyIM which is available in more than one language.
During a large part of the development process, CoyIM was made completely in English. But we also knew that sooner or later we would want to make it available to other audiences around the world. And frankly, having the development happen in Ecuador and not having a Spanish translation always felt a bit weird. So, as part of the development process, we made sure to diligently mark all the places where we would need to do translation later. This is something that translation tools can use to significantly reduce the work for actually translating an application.
What this means is that once we decided to start translating CoyIM, we could simply begin, and be reasonably certain we would be able to cover everything. With this in place, we managed to get translations done for Spanish, Portuguese, French and Swedish. The choice of languages was really mostly based on the availability of translators. But what is important is that now that we have the tool support in place, adding new languages will be quite easy - we simply need contributions from people that can translate other languages.
Technically speaking, the process of managing languages was a bit restricted because we use the GTK toolkit for graphical presentation. That also means we needed to use the translation support in GTK. This can often be very easy, depending on what kind of application you use. Often, GTK applications are distributed using installers and using the traditional frameworks for managing this kind of installation on free software systems. The most important aspect of these systems is that you have to install the translation files on the file system, since the underlying translation system only reads physical files. But CoyIM is a differenty type of application. We believe that having to install files in various places on the harddrive is not necessarily the right kind of thing to do. Especially not if you are running from read-only media, or in situations where you don’t want to leave any traces of executing an encrypted chat client.
So how did we solve this in CoyIM? In order to support this kind of translation, we will automatically unpack the translation files into a temporary place where GTK can read them. We keep track of the version of the translation files so that we can update them whenever they have been changed. This means that CoyIM is still a single-executable in almost all situations. Everything the application needs to run is available inside the application. On Linux, you can simply download the program and run it.
This doesn’t necessarily mean much for most users. The end result is the same. CoyIM will automatically use the language defined in your operating system, assuming it’s one of the languages we support. So, you will simply see things in your own language. As time goes on, we hope that we will be able to add more translations as well. CoyIM is meant for people in every part of the world - not just the western world.
One final word. If you would like to support CoyIM and you happen to have knowledge in a language that we are currently not supporting, please visit https://hosted.weblate.org/engage/coyim/ to see if you can help. We use Weblate for managing translations, and it has been a huge boon for us. So contributions there will automatically be available to us in a format that can be quickly integrated in the next release.