Skip to content

Latest commit

 

History

History
70 lines (49 loc) · 2.28 KB

File metadata and controls

70 lines (49 loc) · 2.28 KB

XCStringsEditor

Platform Made With

XCStringsEditor is an editor built with pure SwiftUI that can edit the .xcstrings localization file introduced in Xcode 15.

XCStringsEditor

Requirements

  • macOS 14.0+
  • Xcode 15.2+

Features

  • Open, edit translation and save .xcstrings file.
  • Support plural variations. Plural variation should be added in Xcode before editing in XCStringsEditor.
  • Support device variations. Device variation should be added in Xcode before editing in XCStringsEditor.
  • Translate with Google Translate, DeepL, Baidu, or a LLM supporting OpenAI compatible Responses API. API keys must be configured in Settings.
  • LLM translation supports any OpenAI-compatible endpoint (e.g. OpenAI, Azure OpenAI, vLLM, Ollama, LM Studio). Configure URL, model name, and API key in Settings → Translation Service → LLM.
  • Reverse Translation. You can check the translation with reverse translation.
  • Filtering
    New, Translated, Modified, Needs Review, Needs Work, Translate Later, Source=Translation
  • Flag "Needs Work" or "Translate Later".
  • Show/Hide "Needs Work" and "Translate Later" flagged items.

Build

Requires Xcode and a macOS signing certificate configured in Xcode preferences.

make local          # Build for local development (no signing cert needed)
make launch-local   # Build and launch
make clean          # Clean build artifacts

Test

make test           # Xcode tests (integration test is skipped by default)
make test-llm       # Live LLM integration test (Responses API)

Environment variables for make test-llm:

  • LLM_TEST_URL (default: http://127.0.0.1:1234)
  • LLM_TEST_PATH (default: /v1/responses)
  • LLM_TEST_MODEL (default: qwen/qwen3.6-35b-a3b)
  • LLM_TEST_API_KEY (default: empty)

Plans

  • Open with .xcodeproj file.
  • Add/Remove plural variations.
  • Add/Remove device variations.
  • Support multiple files.

License

XCStringsEditor is available under the MIT license. See the LICENSE file for more info.

Acknowledgements

Pencil image on Icon: Image by xvector on Freepik