This project uses a single String Catalog file: ClawdHome/Stable.xcstrings.
All UI/prompt copy should use stable keys via L10n.k(...) / L10n.f(...).
zh-Hans(Simplified Chinese)en(English)
- Add or update stable keys in
ClawdHome/Stable.xcstrings. - Use semantic keys (for example
user.add.title), not sentence-as-key. - Keep placeholders consistent across languages (for example
%@,%d,\(name)). - In Swift, always reference copy by key, for example:
L10n.k("user.add.title", fallback: "Add macOS User")
L10n.f("user.remove.confirm", fallback: "Delete %@?", username)Run:
make i18n-checkCurrent checks include:
- direct hard-coded CJK UI literals in Swift
- missing translations in
Stable.xcstrings - placeholder consistency between
zh-Hansanden - keys used in code but missing in
Stable.xcstrings
- Add the language localization block for each key in
ClawdHome/Stable.xcstrings. - Keep key names unchanged.
- Keep placeholders exactly as-is.
Users can switch language in:
Settings -> Language -> Follow System / English / Simplified Chinese
The selected language applies immediately to all app windows.