forge i18n

Contributor1 min readUpdated

In short

The translation commands: interface strings, guide texts in other languages, and English left on screen.

forge i18n checks and edits Polestar's translations: the interface strings of Polestar and the Recorder (addon/<addon>/Locales/<locale>.lua), a pack's guide texts in other languages (<pack>/locales/<locale>/) and the English a non-English client would still show. It is the forge-i18n crate (rust/crates/forge-i18n). Translating is the translators' guide; this page has the commands.

CommandWhat it does
forge i18n status [--markdown]every language: its status, translators and how much of it is translated
forge i18n check [<locale>...]fails (exit 1) on a file Lua cannot load, a stale key, a key set twice or a broken format; glossary drift only warns. CI runs it
forge i18n sync [<locale>...]adds the keys the code gained, commented out, and moves translations of keys it lost to the end; never rewrites a translation
forge i18n keysevery interface key with where it is used
forge i18n import <locale> <file.lua>...merges translations written apart into a locale's file
forge i18n leaks [<locale>...]runs the addon on the client stub in each language and lists the English left on screen
forge i18n guides sync|check|statsa pack's texts files: write them, check them, size the work

Every command reads the checkout above the working directory (or above the forge binary); `--root

<dir>` names another one. `--json` prints one document; `--addon Polestar_Recorder` limits status, check, sync, keys and import to the Recorder.
shell
forge i18n --help
forge i18n status
forge i18n check
forge i18n keys

The data the commands read is in data/i18n/: the glossary (glossary/<locale>.json), the leaks allow list (leaks-allow.json) and the names no source has in a language (leaks-baseline.json). forge i18n leaks needs the Codex and the quest database built (forge data codex, forge data questdb); without them every scene is skipped.

The names addons are forge data names (Forge data). One subcommand still runs on the JS tools: node tools/polestar.js i18n fit (it needs the preview renderer).

Was this page helpful?

Start with, or act

  • PlayersInstall and first run
  • PlayersCommunity guides
  • PlayersFAQ
  • Guide authorsWriting a community guide
  • Guide authorsGuide format cheatsheet
  • ContributorsContributing
  • ActionCopy the AddOns folder (Windows)C:\Program Files (x86)\World of Warcraft\_classic_beta_\Interface\AddOns
  • ActionCopy the AddOns folder (macOS)/Applications/World of Warcraft/_classic_beta_/Interface/AddOns
  • ActionFind an optionEvery setting with its default; type its name here to jump to it.
  • ActionEvery slash command