Skip to content

Complete Guide for Translators

Adrian Goral edited this page May 11, 2024 · 2 revisions

I am looking for translators!

If you enjoy using my application or would like to make your first contribution to someone else's project and you speak language, that is not yet included in KeepMyPassword for Desktop, keep on reading!

Since v3.0.0 I have added multi-language support for my application, so it is time to access wider audience.

For now (29.03.2022) only polish and english languages are supported. I wish that my app would be more accessible for people from another countries. So if you are interested in translating my app, here's a guide how to do it.

Forking project and choosing your language tag

First thing you have to do, is to make a fork of my project. You can do that, by clicking this icon on your screen:

image

Then, a clone of my project will appear in your profile. It will be named after your username, e.g.: testUser/KeepMyPassword-Desktop.

After successfully cloning my project, navigate to this specific location in files:

image

As you can see on the picture, there are two files named: language_<lang_tag>.properties.

So what now?

Choose a language that you want to translate to. Then go to this site: Oracle Language Tags and find your language.

For polish, language tag is pl-PL, for american english language tag is en-US and so on.

Now, create copy of one the already existing .properties files (I recommend using english), and put chosen langauge tag in lower case.

For example, German language translation file, would be named as follows: langauge_de-de.properties.

Now you are fully prepared to translate created file.

Translating Guidelines

When you open one of the files (I will use english in order to explain), you will notice specific key=value pairs:

add=Add
adding.new.password=Adding new password
appName=Keep My Password
cancel=Cancel
choose-your-language-prompt=Choose your language
conf-file-empty-err=Configuration file is empty.
conf-file-exists-err=Configuration file already exists
confirmation-question=Are you sure?
confirmation.dialog=Confirmation Dialog
...

There are two main things, that you need to follow:

  1. Do not change the keys, only the values of each pair!
  2. You shouldn't change the appName value, as it stays the same for every language.

Also, be aware, that I code on daily basis, so it is possible that you may have outdated version of source file. But don't worry - we will resolve conflicts in differencies in files together.

Now it's time to translate every single value according to template you have copied. You don't need to change anything in code, as it is automated for detecting new translation files.

Creating a pull request

After you completed your translation, you need to create a pull request for me to review it. If everything will be good, your language will become avaiable in next update!

In order to create a new pull request, after commiting changes to your new translation file, go to main page of your fork (that's where README.md is shown) and just simply click Compare & pull request:

image

And that's it! Congratulations, you have become a contributor for my project!

Thank you very much!