Skip to content
Ehsan Azish edited this page Dec 15, 2025 · 1 revision

Frequently Asked Questions

General Questions

What is this tool?

A Python application for automatically translating Xcode XLIFF localization files using Google Translate. It supports both GUI and command-line interfaces.

Is it free?

Yes! The tool is open source under the MIT License and uses the free Google Translate API through the deep-translator library.

What platforms are supported?

macOS, Linux, and Windows - anywhere Python 3.7+ runs.

Usage Questions

Do I need to know Python?

No! Just install Python and the dependencies, then use the GUI application. No coding required.

Can I use this with SwiftUI apps?

Yes! It works with any Xcode project that uses XLIFF localization files (iOS, macOS, watchOS, tvOS).

Will it overwrite my existing translations?

No. The tool only translates entries that are empty or marked as "needs-review-l10n". Existing translations are preserved.

How accurate are the translations?

Translation quality depends on Google Translate. It's best for:

  • Short UI strings
  • Common phrases
  • Standard terminology

Always review translations before production use.

Can I translate just a few languages?

Yes! Use the --only option:

python3 translate_xliff.py --only de fr ja

Technical Questions

Does it require internet?

Yes. Translations are done through Google Translate's online service.

Is there a rate limit?

Google Translate may rate-limit heavy usage. If you hit limits, wait a few minutes or translate fewer languages at once.

How are placeholders handled?

The tool intelligently preserves iOS placeholders like %@, %d, %1$@, etc. They are extracted before translation and reinserted after.

What XLIFF versions are supported?

The tool works with standard Xcode XLIFF 1.2 format.

Can I use other translation services?

Not currently, but it's on the roadmap! Future versions may support DeepL, Azure Translator, etc.

Workflow Questions

When should I use this tool?

  1. Export localizations from Xcode
  2. Run this tool to translate
  3. Import back into Xcode
  4. Review and refine translations

Should I commit translated files to Git?

Yes! Commit the translated XLIFF files so your team has them.

How do I update translations after code changes?

  1. Export updated localizations from Xcode
  2. Run the tool again (existing translations won't be overwritten)
  3. Only new/changed strings will be translated

Troubleshooting Questions

"No module named 'deep_translator'" - What do I do?

Install dependencies:

pip3 install -r requirements.txt

The GUI won't launch - Why?

You need Tkinter. Install it:

  • macOS: brew install python-tk
  • Ubuntu: sudo apt-get install python3-tk
  • Windows: Reinstall Python from python.org

Translations are failing - What's wrong?

  1. Check internet connection
  2. Verify .xcloc folder structure
  3. Try --dry-run to test
  4. Check for rate limiting (wait a few minutes)

Contributing Questions

Can I contribute?

Absolutely! See CONTRIBUTING.md for guidelines.

What features are planned?

See the roadmap in the README:

  • Other translation services (DeepL, Azure)
  • Translation memory/cache
  • Quality scoring
  • Custom placeholder patterns

How do I report bugs?

Open an issue on GitHub with:

  • Python version
  • OS
  • Error message
  • Steps to reproduce

License Questions

What license is this under?

MIT License - free to use commercially and personally.

Can I modify the code?

Yes! The MIT License allows modification and distribution.

Do I need to credit the original?

Not required by the MIT License, but appreciated!

Clone this wiki locally