Translation

How to translate the tesselle packages.

You can contribute to the translations using the web interface (Section 1) or by manually editing files (Section 2).

If you want to contribute to the translation of one of the tesselle packages, make sure the package has started the process of providing translations by checking Table 1 (or look for the po/ directory in the package root). If the process has not started, you may want to create an issue to see if we are ready to receive translations.

Web interface

We use the Weblate instance provided by Codeberg to manage translations. It provides an easy to use graphical user interface for translators, so you don’t need to code if you want to contribute.

If you would like to contribute as a translator, first read about translating using Weblate. Then, go to the component you want to contribute to (see links in Table 1) and get started.

Table 1: Available translations of the tesselle packages (*: WIP packages).
Weblate English French
aion yes yes
alkahest - -
ananke * *
arkhe yes yes
dimensio yes yes
folio - -
isopleuros - -
kairos yes yes
khroma - -
kinesis * *
nexus - -
tabula yes yes
tesselle yes yes

Translation files

As a translator, you’ll mainly be working with .po files. If you’re not familiar with these files, it’s best to use the potools package. This package will make your translation task much easier. Start by reading the vignette for translators, the gist of which is given below.

## Install
install.packages("potools")

## Load
library(potools)

If no translation exists, run po_create('<language code>') to create a .po file for the language you are translating. If you want to update an existing translation, run po_update() to update the .po files.

Next, open the .po file with your favourite text editor. You’ll see some metadata at the top of the file, start by updating Last-Translator to your email address.

The rest of the file consists of pairs of msgid and msgstr. The msgid is the string that appears in the R source (be it an error, warning, message, etc.). The msgstr is the translated equivalent: just go through the file and fill in the translated strings.

Finally, the plain text .po files are converted into binary .mo files to be distributed with the package, either by you or by the package developer, using po_compile().

Code of Conduct

Please note that the tesselle project is released with a Contributor Code of Conduct. By contributing to this project you agree to abide by its terms.