Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

This project is based on @twostraws (Paul Hudson) AutoTranslate project. It has new features, improvements and functionalities of my convenience. Feel free to fork the repository and make it yours, or even make some merge request.

Notifications You must be signed in to change notification settings

Erikote04/AutoTranslate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

37 Commits

Repository files navigation

ζŒ‡ AutoTranslate

AutoTranslate is a macOS app built with SwiftUI that simplifies the process of creating, editing, and updating Xcode .xcstrings localization files. It allows you to input source texts and automatically generate translations into multiple target languages using Apple’s Translation framework.

πŸš€ Features

πŸ”€ Multi-language Translation

  • Automatically translates text from a source language (e.g., Spanish) into several selected target languages.
  • Supports multiple languages simultaneously, including Dutch, French, English, German and Portuguese.

πŸ“‚ File Management

  • Open existing .xcstrings documents: Load and update your current localization files.
  • Save & Export: Save changes to an open document or export new ones with a single click.
  • New documents: Start fresh with a new translation file at any time.

🧠 Smart Input Parsing

  • Automatically parses text input in the form key = value.
  • Detects and preserves keys when creating or updating translation documents.
  • Supports plural syntax with forms like key[one] = value or key[other] = values.

πŸ”’ Plural Support

  • Supports full plural variation structures according to Apple’s .xcstrings format: zero, one, two, few, many, other
  • Plural entries are automatically parsed and preserved in the resulting localization document.
  • Each plural form is translated individually per target language.
count[one] = 1 value
count[other] = %d values

πŸͺ„ Interactive Translation Workflow

  • Displays the current file name and translation state.
  • Provides visual feedback during translation (progress indicators and button states).
  • Automatically saves translations for all selected languages.

πŸ–₯️ macOS Command Menu Integration

  • (⌘+N) β€” New document
  • (⌘+O) β€” Open document
  • (⌘+T) β€” Translate document
  • (⌘+S) β€” Save document

βš™οΈ Installation

Follow these steps to set up and run the project locally:

  1. Clone the repository
  2. Open AutoTranslate project in Xcode
  3. In the Project Navigator, select the project file (the top-level blue icon).
  4. Click on the AutoTranslate target.
  5. Navigate to the Signing & Capabilities tab.
  6. From the "Team" dropdown menu, select your developer team.
  7. Select My Mac as the run destination in the Xcode toolbar.
  8. Press Command-R (⌘+R) to build and run the app.

πŸ•ΉοΈ Usage Guide

  1. Create or Open a Document
  • Press Command-N (⌘+N) to start a new translation file.
  • Press Command-O (⌘+O) to import an existing .xcstrings file.
  1. Enter Source Text
  • Use the text editor to input strings. Follow the key = value pattern:
greeting = Hola Mundo
farewell = AdiΓ³s
  • To add plurals, use bracketed forms after the key:
apple[one] = 1 manzana
apple[other] = %d manzanas

Note

The app supports the following plural keys: zero, one, two, few, many, other.

  1. Select Target Languages
  • Choose which languages you want to generate translations for (English, French, etc.) using the toggle list on the left sidebar.

Warning

The app will ask you to download the languages that are not installed in your machine.

  1. Translate
  • Click Translate to automatically generate translations.
  1. Save or Export
  • Press Command-S (⌘+S) to export the new file to a location of your choice or save changes in an existing file

πŸ“ File Format

AutoTranslate works with Apple’s .xcstrings format, structured as JSON for Xcode localization catalogs. Each entry includes localized versions of strings under their language identifiers (e.g., "es", "en", "fr").

About

This project is based on @twostraws (Paul Hudson) AutoTranslate project. It has new features, improvements and functionalities of my convenience. Feel free to fork the repository and make it yours, or even make some merge request.

Topics

Resources

Stars

Watchers

Forks

Languages

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /