OneLocale

OneLocale – Notes for Translators

Thank you for helping make someone’s app feel native!

Save as a new file

Language tags

👉 It’s easiest to use OneLocale_FindLangID to find tags by partial language name - for example, entering “spa” or “esp” below lists all Spanish dialects:

OneLocale_FindLangID

Important Rules

Formatting

See Microsoft’s docs for details of both Access Keys and Accelerators.

GUI elements

Watch out for translated strings becoming too long to display properly. Experiment. Run the app and see how it looks. Try to re-word your translation to make it fit in the space available.

As a rule of thumb, messages should be no more than ~120% longer than the base language, although this depends on how much room the developer gave you.

If your shortened translation sacrifices important meaning, you can explain further in the element’s Tooltip, if it has one.

Tooltips

List contents

Multi-line sections

Multi-line sections look different because they don’t have ‘=’ on every line like normal sections. Multi-line text should be labeled with a comment - something like: ; • Entire section should be translated - but many times they aren’t.

Error messages

Questions? Open an issue on the GitHub repo – we’re friendly.


The 2025 way

👉 Just give the entire .lang file to Grok / Claude / ChatGPT and say: Translate this AutoHotkey OneLocale language file to German. Never touch keys or %variables% and attach a copy of these Notes.

A good AI will give you a near-perfect file in seconds. You only need to skim for tone.

(Yes, this is how most translations will happen from now on.) 😀

– the OneLocale team (and Grok says hi)

Back to README