Repository navigation
feat(i18n): add Japanese, Korean and Russian, and translate the README - #790
Merged
Merged
Conversation
ja, ko and ru join en, pt-BR, es and zh-CN as interface languages, in the web and the native window, and as prompt languages, so the briefings, relay notes and handoffs lich types into a session read in them too. Russian counts in one, few and many. The Go prompt catalog and the native window gain its CLDR integer rules (the web already asks Intl.PluralRules), and each side checks that every form a locale's rule selects for 0..199 is in its catalog. TestCatalogParity now lets a locale's one form use the arguments of English's other form: Russian one also covers 21, so it shows the count where English one does not. The test asserted a form-by-form match the contract never promised; no form may still drop or invent an argument. The native window picks the CJK face by interface language, since Han characters are drawn differently in Japanese, Chinese and Korean, and the font offer that only knew Noto Sans SC now offers Noto Sans JP or KR, pinned to the same noto-cjk commit, when no face draws the chosen language. The README is now also in Brazilian Portuguese, Spanish, Japanese, Korean and Russian, with a seven-language switcher in each, and CLAUDE.md and the lich-i18n skill put a provider gap row in every translated README.
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.
Adds Japanese (
ja), Korean (ko) and Russian (ru) as interface and prompt languages, in the web and the native window, and translates the README into pt-BR, es, ja, ko and ru.What changes
ja,koandrucatalogs for the web (frontend/src/lib/i18n/locales/), the native window (native/i18n/locales/) and the prompt language (internal/prompt/{ja,ko,ru}.go), registered everywhere the lich-i18n skill lists for a new language.native/i18n; the web usesIntl.PluralRules. Each side checks that every form a locale's rule picks for 0..199 exists in its catalog.README.pt-BR.md,README.es.md,README.ja.md,README.ko.md,README.ru.md, a seven-language switcher in every README; CLAUDE.md invariant 5 and the lich-i18n skill now name every translated README for provider gap rows.Test changes
TestCatalogParity: a locale'sOneform may now also use the arguments of English'sOther. Reason: the test asserted something the contract never promised (form-by-form argument equality); Russianonecovers 21, so it must show the count where Englishonedoes not. No form may drop or invent an argument.TestEveryLocaleIsNamedInItselfand the nativeneedsHanFont/launchLanguagetables: the contract changed (new locales; CJK languages wait for their own font, not only Chinese).Verification
Local gate, each step alone:
biome ci .,pnpm build,gofmt -l .,go vet ./...,go test ./...,pnpm test, andgofmt/go vet ./.../go test ./...innative/. Native shots of Settings > General in ja, ko and ru, the Pulls screen and the palette in ru, and the JP/KR font offer.Follow-ups
ja/ko/ruprompt catalogs (branchfeat/ja-ko-ru-prompt-languagesthere), released after this.을(를)); Russian uses "одобрил(а)" for an author of unknown gender.