feat(i18n): add Korean (ko) locale#9669
Open
moduvoice wants to merge 1 commit into
Open
Conversation
Adds a full Korean message catalog alongside the existing en/es locales, following the Paraglide/inlang setup introduced in rilldata#9570 and rilldata#9635. - web-common/src/lib/i18n/messages/ko.json: 1786 keys, full parity with en.json (including pluralized/variant messages) - Register `ko` in project.inlang/settings.json - Add `ko` option (한국어) to LanguageSwitcher.svelte - Add `language_ko` key to en.json/es.json so the switcher can render the Korean language label regardless of active locale
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
This adds Korean (
ko) translation support — to help Korean-speaking users use thisopen-source project more comfortably in their own language.
(한국 사람들의 오픈소스 이용에 도움이 되게 하기 위해서 한글화 작업을 하였습니다.)
Changes
web-common/src/lib/i18n/messages/ko.jsonwith a full Korean message catalog (1786 keys), matchingen.jsonkey-for-key, including pluralized/variant messages.koinweb-common/src/lib/i18n/project.inlang/settings.json(locales: ["en", "es", "ko"]).koentry (한국어) toLanguageSwitcher.svelte.language_kokey toen.jsonandes.jsonso the switcher can render "한국어" as a label regardless of the active locale (mirrors howlanguage_eswas added alongsideen.jsonwhen Spanish was introduced in feat(i18n): add Spanish locale with full EN/ES translations #9635).Testing
node scripts/i18n-guard.js --strict— catalog integrity (key parity across locales, no empty values, placeholder/variant consistency) passes.npm run build:i18n(paraglide-js compile) — compiles cleanly and generates correct per-locale message functions forko.npm run test -w web-common -- --run src/components/i18n—LanguageSwitcher.spec.tspasses.npm run quality(web-common scope) — no new lint/type errors introduced by this change (2 pre-existing, unrelated TS errors inExportDashboardForm.svelteare present onmainbefore this PR and untouched by it).{placeholder}set, and every pluralized message'sdeclarations/selectors/matchshape, are identical toen.json— only the Korean text differs.Checklist:
Developed in collaboration with Claude Code