Skip to content

feat(i18n): add Turkish localization across macOS, Windows and Linux - #700

Closed
Ohualtex wants to merge 3 commits into
Louis-CFM:mainfrom
Ohualtex:codex/turkish-localization-refresh
Closed

Ohualtex wants to merge 3 commits into
Louis-CFM:mainfrom
Ohualtex:codex/turkish-localization-refresh

Conversation

@Ohualtex

@Ohualtex Ohualtex commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Adds Turkish to language selection and system locale detection across macOS, Windows and Linux. Covers the current catalog, including Flow dictation, the Notetaker, voice commands and phone-link settings, while preserving all existing languages and generated-table keys.

Built directly on current main to replace #414 with a focused diff. Includes 650 localized Apple catalog entries and all 391 Windows/Linux-only entries; regenerates the 605-entry shared table. Preserves formatting placeholders and Turkish counted noun forms.

Validation: 404 frontend tests and 5 isolated Rust i18n tests pass; TypeScript, generator freshness, plist parsing and diff checks pass. Browser previews checked settings and Flow content. Full native Tauri/macOS builds were not run. The existing sidebar does not redraw immediately on live language changes; its implementation is unchanged.

Supersedes #414. Closes #410.

Related localization: #701 adds German independently. When combining both, retain both tr and de in the shared language registries and regenerate the shared table. Related macOS-only Turkish contribution: #684.

@Ohualtex

Copy link
Copy Markdown
Contributor Author

Follow-up: #705 fixes the existing Windows/Linux live-language limitation noted in this PR. Changing the interface language now refreshes the sidebar labels, Notch group heading and dictation status while preserving the selected page and navigation nodes. It is a separate fix against main, with three regression tests, and does not depend on this localization PR.

Louis-CFM pushed a commit that referenced this pull request Oct 20, 2026
Ohualtex's Turkish translation, re-applied onto current main the same way
as German:
- Localizable.xcstrings: the "tr" localization of every main key #700
  translates, nothing else changed; the newer whatsapp.* and update.*
  strings stay in English for now (whatsapp.remove and step.needs-input
  are translated: Windows shows them).
- Türkçe in the language picker, CFBundleLocalizations of both Mac
  targets.
- Windows and Linux: "tr" in the language lists, #700's Turkish values for
  extra.json, strings.json regenerated, and #700's tests (its registration
  check is the one the German commit already has).

Co-Authored-By: Ohualtex <230626673+Ohualtex@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LJm3SRL9k3gBPaVtfPhwcT
Louis-CFM pushed a commit that referenced this pull request Oct 20, 2026
shawn-t516's Traditional Chinese translation:
- Localizable.xcstrings: the "zh-Hant" localization of every key, from
  #314 (plus the update.* and step.needs-input strings main gained since),
  and 繁體中文 in the language picker after 简体中文;
  CFBundleLocalizations of both Mac targets.
- #314's wrapping of hard-coded English in String(localized:): outfit
  names (MochiWardrobe), PillCatalog category titles and subtitles, and the
  DeepSeek, Qwen and Moonshot "key saved" messages. Pill ids are unchanged.
  The catalog gains #314's new keys (those, plus literals the code already
  shows that the catalog lacked, and the plan card's Change plan, Auto mode
  and Manual buttons), each translated in every language; the
  ones Windows already translates in extra.json reuse those translations
  (and #701/#700's German and Turkish) and leave extra.json, since the Mac
  catalog now has them. Brand names and URLs keep their English text.
- scripts/test-localization.py and its CONTRIBUTING note, now also run by
  the macOS Build workflow.

Co-Authored-By: shawn-t516 <180199675+shawn-t516@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LJm3SRL9k3gBPaVtfPhwcT
@Ohualtex

Copy link
Copy Markdown
Contributor Author

Integrated into main through #821, with attribution preserved. Closing this PR because a separate merge is no longer needed. Thank you!

@Ohualtex Ohualtex closed this Oct 23, 2026
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.

Add Turkish (tr) localization

1 participant