Skip to main content
AI agent network visualization

Käännä .strings-tiedostoja rikkomatta sovellustasi

Avaimiin ei kosketa, muotomääritteet säilyvät ja monikkosäännöt ovat oikein. Localizable.strings-tiedostosi käännetään sekunneissa päivien sijaan.

Apple:in .strings-tiedostojen kääntäminen on hidasta ja virhealtista

Viet Localizable.strings-tiedoston, annat sen kääntäjälle tai liität yleiseen työkaluun ja saat takaisin rikkoutuneita muotomääritteitä, virheellisiä escape-sekvenssejä ja sekaisin menneitä monikkosääntöjä. Sitten selvität tuntikausia, miksi sovellus kaatuu käynnistyessään japaniksi.

Yleiset työkalut kääntävät, järjestävät uudelleen tai poistavat muotomääritteet, kuten %@, %d ja %1$@

Escape-sekvenssit (\n, \", \t) rikkoutuvat tai kaksoisescapetaan, jolloin merkkijonojen jäsentäminen epäonnistuu

Stringsdictin monikkosäännöt vaativat kielikohtaisia CLDR-luokkia, jotka useimmat työkalut sivuuttavat kokonaan

Kääntäjien kommentit ja kontekstivihjeet poistetaan, mikä johtaa vääriin käännöksiin

Lähde (englanti)
Base.lproj/Localizable.strings
/* Localizable.strings (English) */

"welcome_title" = "Welcome to MyApp";
"login_button" = "Sign In";
"greeting" = "Hello, %@!";
"items_count" = "%d items in your cart";
"transfer" = "Send %1$@ to %2$@";
Käännetty (japani)
ja.lproj/Localizable.strings
/* Localizable.strings (Japanese) */

"welcome_title" = "MyAppへようこそ";
"login_button" = "サインイン";
"greeting" = "%@さん、こんにちは!";
"items_count" = "カートに%d個のアイテム";
"transfer" = "%2$@に%1$@を送信";

Mitä i18n Agent säilyttää

Muotomääritteet

Sijaintiin perustuvat (%1$@) ja tyyppikohtaiset (%d, %f, %@) määritteet tunnistetaan ja jätetään muuttamatta

Escape-sekvenssit

Rivinvaihdot (\n), sarkaimet (\t), lainausmerkit (\") ja Unicode-escapet säilytetään oikein

Stringsdict-monikko

CLDR-monikkoluokat (zero, one, two, few, many, other) määritetään oikein kohdekielen mukaan

Kommentit ja konteksti

Kääntäjien kommentit ja kehittäjien huomautukset säilytetään käännöskontekstin ylläpitämiseksi

Toimii kaikilla Apple-alustoilla

SwiftUI
UIKit / AppKit
Xcode String Catalog -luettelot
macOS-sovellukset
watchOS / tvOS
Swift-paketit

Avoimen lähdekoodin iOS-lokalisointityökalut

i18n Agent Xcode:ille

macOS:n valikkorivis toimiva sovellus lisää Xcode:iin lokalisoinnin yhdellä napsautuksella. Se tunnistaa aktiivisen projektin automaattisesti, kääntää .strings-, .xcstrings- ja .stringsdict-tiedostot ja kirjoittaa ne oikeisiin .lproj-hakemistoihin. Voit lähettää nykyiset käännökset käännösmuistiksi ja saada yhdenmukaiset tulokset koko projektiin.

Tunnistaa aktiivisen Xcode-projektisi automaattisesti AppleScriptillä
Pull: kääntää tiedostot ja kirjoittaa ne oikeisiin .lproj-hakemistoihin
Push: lataa nykyiset käännökset käännösmuistiksi
Toimii valikkorivillä ja tukee .strings-, .xcstrings- ja .stringsdict-tiedostoja
Näytä GitHub:issa

LocaleChain

iOS:ssa on tunnettu puute: jos käyttäjän alueellinen kielialue, kuten pt-BR, puuttuu, järjestelmä siirtyy suoraan englantiin kokeilematta läheistä kielialuetta, kuten pt-PT:tä. LocaleChain on Swift-paketti, joka korjaa tämän määritettävillä varaketjuilla. Yksi määritysrivi eikä muutoksia nykyiseen koodiin.

Yhden rivin määritys: LocaleChain.configure()
Toimii huomaamattomasti NSLocalizedStringin, SwiftUI Textin ja .stringsdictin kanssa
Sisäänrakennetut varaketjut portugalille, espanjalle, ranskalle, saksalle ja muille kielille
Asennetaan Swift Package Manager:illa, MIT-lisensoitu
Näytä GitHub:issa

Näin se toimii

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.

Ei manuaalista kopiointia tai merkkijonojen poimintaa. Vain käännetyt tiedostot.

Kokeile i18n Agent:ia nyt

Pudota käännöstiedostosi tähän

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

tai valitse napsauttamalla

Kohdekielet

Rekisteröitymistä ei tarvitaVälitön arvio

Usein kysytyt kysymykset

Kehittäjä?

Asenna CLI-työkalu ja käännä ensimmäinen tiedostosi kahdessa minuutissa.

Asenna CLI-työkalu

Yritystiimi?

Oletko yhä jumissa TMS-sopimuksessa? Keskustellaan siirtymisestä.