Getting started

Welcome to the translation adventure in R! 🚀

In a world that thrives on interconnectedness and global communication, translation plays a pivotal role in bridging linguistic divides. Translation, the art of rendering one language into another, shatters those confines, unlocking a world of possibilities for understanding and collaboration.

Translation dashboards

So if you want to start, you can contribute by following these steps:

  1. Sign up to the R Contributors Slack and introduce yourself in the #core-translations channel;

  2. Create an account on Weblate (currently maintained by @daroczig) and read the Translations chapter on the R Development guide;

  3. Read the Conventions for translation section of this Wiki, for some conventions that should be followed;

  4. Read the guidelines for the specific language you want to contribute to. If a guideline for your language doesn’t exist yet, please feel free to submit a pull request and create it.

Portuguese (Brazilian)
  1. You can start translating!

You can check the guide on how Weblate works and check this short demo on how to use the Weblate interface. You can also get access to complete documentation of Weblate through this link.

What is being translated?

All outputs in base R and recommended packages (such as messages emitted by stop(), warning(), or message()) are eligible for translation, as are menu labels in the GUI.


We use the dedicated reviewers workflow on Weblate. We currently manage 3 roles in the platform. Languages without dedicated reviewers have their translations directly approved without review.


Every registered user on Weblate can act as a translator. All translations are reviewed unless there is no reviewer assigned for that language. If you are not sure about a translation you can make a suggestion instead. You can also use the Glossary to check which terms you shouldn’t translate and discuss with the community to add new ones if you don’t find the word you are looking for.

Admins/team leaders

Admins/team leaders keep the list of admins and reviewers by language up to date. The team leader(s) of a particular language is(are) the initial dedicated reviewer(s).


Reviewers have an editor role who approves the work of translators and ensures the overall cohesion of the translation work in one language. For adding new reviewers or peer reviewers to Weblate, please reach out to the respective team leaders via the #core-translation channel on the R Contributors Slack workspace.

Possible state of a string:

  • Untranslated: Translation is empty, it might or not be stored in the file, depending on the file format.
  • Needs editing: Translation needs editing, this is usually the result of a source string change, fuzzy matching or translator action. If you are unsure about how to translate something, make a suggestion, do not click the “Needs editing” button.
  • Waiting for review: Translation is made, but not reviewed.
  • Approved: Translation has been approved in the review. It can no longer be changed by translators, but only by reviewers.

Sustainability of the translations community

  • The #core-translation channel on the R Contributors Slack workspace is the main space of communication for the translations community. Join this Slack to communicate with the community and share feedback.
  • We encourage people interested in translations to organize and conduct local/regional level events to promote and raise awareness about translations.
  • Highlight milestones (overall and by language)!

About Weblate

Space for feedback

You can open an issue in this repository if you find something that is not working as expected in Weblate. If you want to discuss about translations and convictions you can use the Slack channels dedicated to that.


Some interesting guides, glossaries and handbooks:

Code of Conduct

Future work

  • Explore possible integration of dictionaries into Weblate?
  • Add demos from the translator and reviewer’s perspective