Localize Hinge into 17 languages with a language picker - #26
Merged
Merged
Conversation
Every string people see, from the main screen, Settings and the menu to error messages, now goes through a string catalog with translations for Simplified and Traditional Chinese, Japanese, Korean, German, French, Spanish, Italian, Brazilian Portuguese, Russian, Dutch, Turkish, Polish, Arabic and Vietnamese. Terms follow the names macOS uses in each language, such as Screen Recording and Login Items. Percentages and the open angle use the system's number formatting. Hinge follows the system language by default. Settings > Controls > Language picks another one for Hinge alone and offers to relaunch. The Default button next to the strength slider became a reset icon with a tooltip, so longer translations of the row fit. The Makefile compiles the catalog with xcstringstool, the Xcode project lists it as a resource, and the policy check treats .xcstrings files as JSON.
|
@ReffWu is attempting to deploy a commit to the MagicAPI Team on Vercel. A member of the Team first needs to authorize it. |
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (27)
📝 WalkthroughWalkthroughThe application adds 17 localized string tables, packages them in the app bundle, localizes user-facing messages, and adds persisted language selection with relaunch support. The README and validation script document and check the localization files. ChangesLocalization support
Estimated code review effort: 3 (Moderate) | ~25 minutes Change: Feature Sequence Diagram(s)sequenceDiagram
participant SettingsView
participant AppLanguage
participant UserDefaults
participant HingeApp
SettingsView->>AppLanguage: choose selected language
AppLanguage->>UserDefaults: save AppleLanguages
SettingsView->>AppLanguage: request relaunch
AppLanguage->>HingeApp: reopen application
HingeApp->>AppLanguage: initialize language at launch
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Comment |
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.
Add 17 languages including Hindi in Resources/Localizations, detect and save the system language on first launch, and allow manual language selection in Settings.
Summary by CodeRabbit
New Features
Documentation