Skip to content

2.0.0

Latest

Choose a tag to compare

@Jeehut Jeehut released this 12 Oct 09:40
· 1 commit to main since this release
54306dc

TranslateKit 2.0 focuses the package on its core: 2,000+ pre-localized UI strings in 40 languages, used as plain static properties like TK.Action.save. The #tk / #tkm macros and the Lite variants are gone – the macro only saved typing, which matters little now that most code is written with AI assistance, while every project paid for it with Xcode's "Trust & Enable" prompt. Without swift-syntax, builds are faster and Xcode never asks to trust a macro.

Every translation was also aligned with Apple's own system wording and with the form of address Apple uses in each language, so the strings read exactly like the system UI around them.

Added

  • TK.Label.top / .bottom / .left / .right and the corners .topLeft / .topRight / .bottomLeft / .bottomRight — position options in the core module (#14).
  • TK.Label.small / .medium / .large — size options in the core module (#14).
  • TK.Label.transparency in TranslateKitGraphicsAndDesign (#14).
  • TK.Label.ordered / .validated — status labels in TranslateKitBusiness, contributed by @W1W1-M (#12).
  • TK.Label.subjects in TranslateKitEducation and TK.Label.sections in TranslateKitMusic and TranslateKitMagazinesAndNewspapers — plural labels (#15).

Changed

  • TK.Action.contactSupport — moved from TranslateKitMedical into the core module; import TranslateKitMedical keeps finding it (#13).
  • Form of address — every language now speaks in the register Apple uses (e.g. formal in French, Russian and Ukrainian, informal in German and Spanish) (#10).
  • Wording — standard texts like "Bookmark" or "Learn More" now match Apple's own translations; ellipses use the single "…" character, with Apple's spacing rules (#10).
  • …Lite products → plain names — the Lite and full products are merged; TranslateKitLite is now simply TranslateKit (#11).

Removed

  • #tk / #tkm macros and the swift-syntax dependency (#11).

Migrating from 1.x

  • Lite users: drop Lite from the product name and the import (TranslateKitFinanceLite → TranslateKitFinance). Nothing else changes.
  • Macro users: replace #tk("…") / #tkm("…") with String(localized:defaultValue:comment:). The migration guide includes a prompt that lets an AI assistant convert all calls while keeping your existing translations.

Thanks to @W1W1-M for the business labels, @hanneskaeufler for the position, size and support suggestions (#6, #7), @The-Wolfson for asking about plurals and translation quality (#3), and @jessegrosjean for flagging the swift-syntax URL (#9) – resolved for good by dropping the dependency.

Full Changelog: 1.3.0...2.0.0