Skip to main content
AI agent network visualization

Isalin ang mga Xcode String Catalog sa Ilang Segundo

Tama ang mga plural form ayon sa CLDR. Napapanatili ang mga device variation. Nasusubaybayan ang mga translation state. Naisasalin ang inyong mga .xcstrings file nang hindi umaalis sa inyong IDE.

Mukhang Simple ang String Catalog Translation, Pero Kumplikado Ito

Pinalitan ng Xcode 15 ang .strings at .stringsdict ng isang JSON file — pero hindi nawala ang kumplikasyon. Kailangan ng mga plural form ang tamang CLDR category kada wika, dapat manatiling nakaugnay sa kanilang parent key ang mga device variation (iPhone vs iPad vs Mac), at dahil sa state tracking ng Xcode, isang maling field lang ay puwedeng magpawala ng bisa sa buong entry.

Bawat wika ay nangangailangan ng magkakaibang CLDR plural category — kailangan ng Arabic ang lahat ng anim, ang Japanese ay 'other' lang, at ang Russian ay nangangailangan ng apat na magkakaibang anyo

Dapat manatiling tama ang pagkakaugnay ng mga string variation na pang-device (iPhone, iPad, Mac, Apple Watch) sa kanilang parent key

Sinusubaybayan ng Xcode ang mga translation state (new, needs_review, translated, stale) — ang maling state value ay puwedeng magdulot na balewalain o maling ma-flag ng Xcode ang mga pagsasalin

Ang pag-migrate mula sa legacy na .strings/.stringsdict papuntang .xcstrings ay nagdadala ng mga pagkakaibang pang-format na hindi hinahawakan ng mga generic tool

Pinagmulan (English)
Localizable.xcstrings
{
  "sourceLanguage": "en",
  "version": "1.0",
  "strings": {
    "welcome_title": {
      "extractionState": "manual",
      "localizations": {
        "en": {
          "stringUnit": {
            "state": "translated",
            "value": "Welcome to the App"
          }
        }
      }
    },
    "item_count": {
      "localizations": {
        "en": {
          "variations": {
            "plural": {
              "zero": {
                "stringUnit": {
                  "state": "translated",
                  "value": "No items"
                }
              },
              "one": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld item"
                }
              },
              "other": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld items"
                }
              }
            }
          }
        }
      }
    },
    "device_greeting": {
      "localizations": {
        "en": {
          "variations": {
            "device": {
              "iphone": {
                "stringUnit": {
                  "state": "translated",
                  "value": "Tap to continue"
                }
              },
              "ipad": {
                "stringUnit": {
                  "state": "translated",
                  "value": "Tap or click to continue"
                }
              },
              "mac": {
                "stringUnit": {
                  "state": "translated",
                  "value": "Click to continue"
                }
              }
            }
          }
        }
      }
    }
  }
}
Naisalin (German)
Localizable.xcstrings (na may de)
{
  "sourceLanguage": "en",
  "version": "1.0",
  "strings": {
    "welcome_title": {
      "extractionState": "manual",
      "localizations": {
        "de": {
          "stringUnit": {
            "state": "translated",
            "value": "Willkommen in der App"
          }
        }
      }
    },
    "item_count": {
      "localizations": {
        "de": {
          "variations": {
            "plural": {
              "zero": {
                "stringUnit": {
                  "state": "translated",
                  "value": "Keine Elemente"
                }
              },
              "one": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld Element"
                }
              },
              "other": {
                "stringUnit": {
                  "state": "translated",
                  "value": "%lld Elemente"
                }
              }
            }
          }
        }
      }
    },
    "device_greeting": {
      "localizations": {
        "de": {
          "variations": {
            "device": {
              "iphone": {
                "stringUnit": {
                  "state": "translated",
                  "value": "Tippen zum Fortfahren"
                }
              },
              "ipad": {
                "stringUnit": {
                  "state": "translated",
                  "value": "Tippen oder klicken zum Fortfahren"
                }
              },
              "mac": {
                "stringUnit": {
                  "state": "translated",
                  "value": "Klicken zum Fortfahren"
                }
              }
            }
          }
        }
      }
    }
  }
}

Ano ang Pinapanatili ng i18n Agent

Mga Plural Form

Gumagawa ng tamang CLDR plural category para sa bawat target language — mula sa Japanese na iisang category lang hanggang sa Arabic na may anim na category

Mga Device Variation

Nananatiling tama ang pagkakaugnay ng mga string variation para sa iPhone, iPad, Mac, at Apple Watch sa kanilang parent key

Pagkilala sa State

Tamang itinatakda ang mga translation state (new, needs_review, translated) para gumana nang maayos ang localization workflow ng Xcode

Pagiging Compatible sa Format

Ganap na compatible ang output sa String Catalog editor ng Xcode at maayos na naisasama sa parehong mga bagong proyekto at mga proyektong na-migrate

Gumagana sa Buong Apple Development

Mga Xcode 15+ String Catalog
Lokalisasyon sa SwiftUI
UIKit / AppKit
Swift Packages

Paano Ito Gumagana

How i18n Agent works: Install, Translate, Done
1
2
3
terminal
$translate_filesrc/messages/en.json
 --target["de", "ja", "es"]
Done.3 languages, 142 keys translated.

Walang manual na copy-paste. Walang string extraction. Mga isinaling file lang.

Subukan ang i18n Agent Ngayon

I-drop dito ang inyong translation file

JSON, YAML, PO, XML, CSV, Markdown, Properties

o i-click para mag-browse

Mga target language

Hindi kailangan ang signupInstant na estimate

Mga Madalas Itanong

Developer kayo?

I-install ang CLI tool at isalin ang una ninyong file sa loob ng 2 minuto.

I-install ang CLI Tool

Enterprise team ba kayo?

Nakatali pa rin ba kayo sa TMS contract? Mag-usap tayo tungkol sa pag-migrate.