What are the changes with XCStrings in Xcode 26?

Asked on 2025-10-08

1 search

In Xcode 26, there have been several enhancements to XCStrings, particularly in the context of localization and string management:

  1. Type-Safe Swift Symbols: Xcode 26 introduces type-safe Swift symbols for localized strings. This means that developers can define strings directly in the string catalog, which then produces Swift symbols that can be accessed in code. These symbols also appear as autocomplete suggestions, making it easier to work with localized strings.

  2. Symbol Generation: New projects created with Xcode 26 have symbol generation enabled by default. This feature allows developers to use generated symbols for manually added strings, providing a type-safe API for referencing strings. This can be particularly useful for maintaining precise control over strings and avoiding boilerplate code.

  3. String Catalog Enhancements: String catalogs have been improved to automatically generate comments that describe string context, which assists translators by providing the right context for accurate translation. Xcode analyzes where and how a localized string is used in the project to generate these comments.

  4. Workflow Improvements: Xcode 26 supports two workflows for managing strings: extracting them from code and referencing them with a type-safe API. Developers are encouraged to start by relying on string extraction, which allows for easier reading and understanding of the code.

For more detailed information, you can refer to the session Code-along: Explore localization with Xcode (17:50) and What’s new in Xcode (09:41).