Skip to content

Add Korean localization - #554

Open
himomohi wants to merge 7 commits into
rileytestut:mainfrom
himomohi:codex/add-korean-localization
Open

Add Korean localization#554
himomohi wants to merge 7 commits into
rileytestut:mainfrom
himomohi:codex/add-korean-localization

Conversation

@himomohi

@himomohi himomohi commented Aug 9, 2026

Copy link
Copy Markdown

Mark the type contribution you are making:

  • Experimental feature (new functionality that can be selectively enabled/disabled)
  • Bug fix (non-breaking change which fixes an issue)

Description

Adds first-party Korean localization support for Delta and addresses #507.

This change:

  • adds Korean translations for 834 runtime strings, storyboard/XIB resources, and privacy usage descriptions
  • registers ko resources in the Xcode project for all existing localized resource variants
  • enables Swift string extraction for the Delta Debug and Release configurations
  • converts remaining user-visible hardcoded strings in settings, controller editing, repair flows, What's New, RetroAchievements, Patreon, and Lu to localized lookups
  • preserves product names, URLs, format placeholders, newlines, logging behavior, and dynamic attributed-string ranges

Korean gaming terminology is kept consistent throughout the app, including:

  • Save State → 세이브 스테이트
  • Game Save → 세이브 파일
  • Cheat → 치트
  • Controller Skin → 컨트롤러 스킨

Testing

No iOS device or simulator configuration has been tested yet. This pull request is intentionally a draft because the current environment has Command Line Tools but not the full Xcode app, so xcodebuild, ibtool, simulator, and physical-device runtime validation are not available.

Static validation completed:

  • plutil -lint Delta/ko.lproj/*.strings Delta.xcodeproj/project.pbxproj
  • git diff --check origin/main...HEAD
  • parsed every modified Swift source with swiftc -frontend -parse
  • verified 834 unique Korean Localizable.strings keys with no duplicates
  • verified all 585 pre-existing extracted keys remain present
  • verified placeholder token, newline, and URL parity
  • verified all 11 localized Xcode resource variant groups include ko
  • verified storyboard/XIB source files themselves are unchanged
  • independently reviewed the frozen diff with no actionable P0–P3 findings

Tested Configurations:

  • Static validation only — full Xcode and iOS runtime testing pending

Checklist

General (All PRs)

  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings — requires a full Xcode build
  • I've tested my changes with different device + OS version configurations

Experimental Feature-specific

  • Added property to ExperimentalFeatures struct annotated with @Feature
  • Uses @Option's to persist all feature-related data
  • Locked all behavior changes behind ExperimentalFeatures.shared.[feature].isEnabled runtime check
  • Isolates changes to separate files as much as possible (e.g. via Swift extensions)

@himomohi
himomohi marked this pull request as ready for review August 9, 2026 22:45
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.

1 participant