Skip to content

feat(i18n): add Italian interface language - #113

Merged
wassgha merged 1 commit into
wassgha:mainfrom
bluzername:feat/italian-locale
Oct 29, 2026
Merged

wassgha merged 1 commit into
wassgha:mainfrom
bluzername:feat/italian-locale

Conversation

@bluzername

Copy link
Copy Markdown

What

For #97 (the Italian part).

Add it as a supported UI language: a full lib/i18n/messages/it.ts catalog (every key from the English one), an electron/locale/it.ts for the desktop app menu, and both registered in their catalogs. it is also added to UI_LOCALES / UI_LOCALE_META / MATCH_ORDER in lib/i18n/locales.ts, with NSIS code it_IT.

That is all the new code needs. Language detection, the Settings language picker, the boot script and the NSIS installer language list are already data-driven off UI_LOCALES, so they pick Italian up automatically, no other file change it.

Why

The issue ask for Italian support so Italian creators can use Rescript in their own language. The translations try to match the register already used in es.ts / fr.ts / pt.ts (same short, plain UI voice, same handling of {placeholders}).

Tests

tests/i18n-test.ts is the repo's own completeness check (every locale must have every English key, non-empty). I added two Italian-specific assertions there too (it-IT system-language detection, common.settings translation, NSIS code present) — they fail with "italian detection" / module errors before this change (Italian is not a known locale yet) and pass after.

npm run test:i18n          # ALL I18N TESTS PASSED
npx next typegen && npx tsc --noEmit   # clean
npm run typecheck:electron # clean
npm run lint                # clean
npm run build                # compiles, prerenders

Not run: test:ffmpeg (needs the bundled native ffmpeg binary, unrelated to this change) and the Electron package/dist steps.

Checklist

For wassgha#97.

Add it as a supported UI locale: messages/it.ts with every key from
the English catalog, electron/locale/it.ts for the desktop app menu,
both registered in their catalogs, and it added to UI_LOCALES /
UI_LOCALE_META / MATCH_ORDER (nsis code it_IT) so detection, the
language picker and the NSIS installer all pick it up without any
other code change, since those are already data-driven from this list.

Added italian detection/translation assertions to tests/i18n-test.ts
(it fail before this change, it pass after), and the existing
completeness loop now also check it has every key.

Signed-off-by: bluzername <bluzerasi@gmail.com>

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 12, 2026

Copy link
Copy Markdown

Someone is attempting to deploy a commit to the wassgha's projects Team on Vercel.

A member of the Team first needs to authorize it.

@wassgha
wassgha merged commit c22829f into wassgha:main Oct 29, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants