Repository navigation
Add Turkish (Türkçe) UI language support - #946
Open
furkansandal wants to merge 19 commits into
Open
furkansandal wants to merge 19 commits into
furkansandal wants to merge 19 commits into
Conversation
Introduce a locale store with system detection, persisted preference, cross-window sync through the storage event, and a typed catalog split per feature area. Turkish is typed against the English source, so a missing or mis-shaped key fails `tsc`. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Fill the typed catalogs with English source text and Turkish translations. English output is unchanged; Turkish follows docs/i18n.md. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Add Language under Settings > Appearance with System default, English, and Türkçe. The choice applies immediately and persists across windows. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Move the title bar, sidebar, project rail, usage footer, update notices, and release notes onto the message catalog. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Localize mode labels, command descriptions, usage limit text, reminders, and session status copy. Prompts sent to agents stay in English. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Localize the transcript, composer, model and access pickers, pane chrome, markdown tools, previews, and find/jump controls. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Localize schedule labels, weekday names, and templates. Date formatting follows the active language. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
…kish Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Add common.* keys for generic labels used across dialogs, pickers, and the date picker. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Only text shown in the UI is localized. Provider protocol parsing keeps matching the English CLI output. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Add set_app_locale. The choice persists to the app config directory, so menus are built in the right language at launch. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Contributor
|
Important Review skippedToo many files! This PR contains 316 files, which is 16 over the limit of 300. To get a review, reduce the PR to 300 files or fewer by splitting it into smaller PRs or changing its base branch. Usage-priced reviews support at most 300 files. ⚙️ Run configuration
📒 Files selected for processing (316)
You can disable this status message by setting the
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Resolve conflicts in UsageFooter, transcriptActivity, MarkdownModeToggle, and worktrees: keep upstream's new behavior and route its user-visible labels through the message catalog. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Resolve conflicts from the Mono rail and overview redesign and the sidebar, source control, and Mono intro changes. Keep upstream's new layout and labels, and route the user-visible text through the message catalog. The Mono activity panel is removed upstream, so it is dropped here too. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
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.
What changed
Adds Turkish (Türkçe) UI support. Settings > Appearance > Language offers System default, English, and Türkçe. The choice applies immediately, persists, and syncs across MonoCode windows. Native menus, the tray, and the Dock menu follow the language through a new
set_app_localecommand.src/shared/i18n/: a locale store with system detection, a typed catalog split by feature area, andt/useT().tris typed against the English source, so a missing or mis-shaped key failstsc.docs/i18n.mddocuments the rules and a Turkish glossary.Why
MonoCode is used by Turkish-speaking developers who want the app in their language.
Deliberately not translated
Known gaps
host/daemon still appear in English. The host build cannot import the app catalog yet.UI
No screenshots yet. Happy to add before/after captures if useful.
Checklist
tsc --noEmit,vitest(480 files, 5295 tests),cargo fmt --check,cargo clippy -D warnings,cargo test(652),test:browser(38 passing on Chromium and WebKit), andtest:hoston Node 24 (CI's version).main, so Prettier reformatted those files wholesale. Those reformatting hunks are noise in the diff, not behavior changes.Commits are grouped by area. Each commit's message describes its scope.
🤖 Generated with Claude Code
Sync
The branch was merged with upstream
main(41b7243) to pick up 19 new upstream commits. Four conflicts were resolved: UsageFooter, transcriptActivity, MarkdownModeToggle, and worktrees. Upstream behavior is kept, and its visible labels now go through the catalog. The checks above were re-run after the merge.Second sync
Merged upstream
mainagain (226ec5b), including the Mono rail and overview redesign. Conflicts were resolved in App, MonoRailSection, Sidebar, MonoIntro, MonoOverview, and GitChangesPanel. The new Mono activity panel was removed upstream, so this branch drops it too. Upstream's MonoIntroCard now uses the catalog, and a new habit-run fallback message is translated. All checks above were re-run after this merge.