How to Translate Audacity: Localization Guide

Audacity relies on a global community of volunteer translators to make its open-source audio editing software accessible in dozens of languages. Contributing localizations involves obtaining the latest source strings, translating them using standard localization tools, and submitting the completed files to the development team. Whether you are updating an existing language pack or introducing a new language entirely, this guide outlines the direct process for getting involved.

1. Contact the Translation Team

Before beginning work, connect with the Audacity team to avoid duplicating efforts and to verify if someone is already maintaining your target language:

  • Subscribe to the audacity-translation mailing list, the primary communication channel for localization announcements, string freezes, and questions.
  • Introduce yourself and state the language you wish to translate or update. The localization coordinator will confirm the current status of that language.

2. Choose Your Translation Workflow

Audacity strings are managed using GNU gettext (.po) files. You can work with these files in one of two ways:

  • Dedicated Translation Software (Recommended): Download and install an offline translation editor such as Poedit. It provides a clean interface for editing .po files, flags syntax errors, and validates translation placeholders automatically.
  • Text or Web-Based Platforms: In some release cycles, Audacity coordinates projects via web platforms like Transifex or GitHub. Check the mailing list for any active online workspace links.

3. Obtain the Latest Translation Template

To ensure you are working with the most up-to-date strings:

  • Access the Audacity source repository on GitHub.
  • Navigate to the locale directory.
  • If updating an existing language, download the corresponding .po file (e.g., de.po for German, fr.po for French).
  • If starting a new language from scratch, download the audacity.pot template file and rename it to your target language's ISO code with a .po extension (e.g., es.po).

4. Translate the Strings

Open the file in your chosen editor and begin translating the user interface text:

  • Preserve Variables and Formatting: Keep all special characters, format specifiers (like %s, %d), and XML/HTML tags exactly as they appear in the original string.
  • Keyboard Accelerators: Many strings contain ampersands (e.g., &File), which designate keyboard shortcuts. Ensure the assigned accelerator keys make sense in your target language and do not conflict within the same menu.
  • Consistency: Adhere to established audio production terminology in your target language.

5. Test Your Translation

Before submission, compile and test your translation locally to confirm that strings fit within dialog boxes and display correctly:

  1. Use Poedit or the msgfmt command-line tool to compile your .po file into a binary .mo file (msgfmt -o audacity.mo your_language.po).
  2. Locate the Audacity installation directory on your system.
  3. Replace the existing .mo file for your locale within the Languages or locale folder with your newly generated file.
  4. Launch Audacity, switch to your language in Preferences > Interface, and verify your changes.

6. Submit Your Contribution

Once the translation is complete and verified:

  • Mailing List: Send your completed .po file as an attachment to the Audacity translation mailing list.
  • GitHub Pull Request: If you are comfortable using Git, open a pull request directly against the main Audacity repository with your updated .po file.

After review by the maintainers, your localization will be merged and packaged into the next official Audacity release.