Konwerter Localizable.strings do .xcstrings

Upuść pliki Localizable.strings (po jednym na język): narzędzie łączy je w jeden String Catalog .xcstrings do pobrania. Darmowe, bez rejestracji, a pliki nigdy nie opuszczają przeglądarki.

Konwertuj pliki .strings

Lub wklej zawartość pliku

Konwersja w przeglądarce: żaden plik nie jest wysyłany.

Edytuj katalog bez wracania do Xcode

LocalePilot to aplikacja desktopowa, która otwiera pliki .xcstrings, sprawdza placeholdery (%@, %1$@, %d), tłumaczy z lokalnym AI, jeśli chcesz, i zapisuje plik w stylu Xcode: niezmieniony katalog wychodzi identyczny co do bajtu. Wersja na macOS jest na ostatniej prostej: zostaw e-mail, a damy znać o premierze.

Co robi konwerter

  • Czyta pliki .strings (UTF-8 lub UTF-16, komentarze /* … */ i //, sekwencje \n, \" i \U00e9).
  • Łączy wszystkie języki jednej tabeli w jeden katalog (Localizable.xcstrings, InfoPlist.xcstrings…): jeden wpis na klucz, z tłumaczeniem każdego języka w stanie translated. Tabele nigdy się nie mieszają.
  • Komentarz nad kluczem staje się komentarzem wpisu.
  • Wskazuje klucze brakujące w danym języku, klucze zdefiniowane dwukrotnie i wiersze, których nie da się odczytać.

Plik jest zapisywany w stylu Xcode (wcięcie na 2 spacje, spacja przed każdym dwukropkiem), więc diff w Gicie pozostaje czytelny.

Jak przekonwertować Localizable.strings do xcstrings

  1. Zbierz plik Localizable.strings z każdego folderu xx.lproj.
  2. Upuść folder projektu albo pliki pojedynczo, a potem sprawdź język każdego pliku.
  3. Wybierz język źródłowy, pobierz Localizable.xcstrings i dodaj go do projektu Xcode.
  4. Zbuduj projekt i przejrzyj diff: klucze oznaczone jako Stale, nowe klucze wyciągnięte z kodu i specyfikatory formatu omawia poradnik o migracji do String Catalogu.

Czego konwerter nie robi

Nie czyta plików .stringsdict: liczba mnoga i warianty urządzeń zostają dla Xcode lub edytora katalogów. Nie skanuje kodu, więc nie dodaje tekstów, które Xcode wyciągnąłby z literałów SwiftUI. Dla całego projektu punktem odniesienia pozostaje polecenie Migrate to String Catalog w Xcode; to narzędzie jest do pojedynczych plików, eksportu od tłumacza lub szybkiego testu.

Najczęściej zadawane pytania

Czy moje pliki .strings są wysyłane na serwer?

Nie. Pliki są czytane lokalnie, a katalog powstaje na stronie: pobieranie odbywa się z przeglądarki, bez komunikacji z serwerem.

Skąd narzędzie wie, w jakim języku jest każdy plik?

Odczytuje go z nazwy folderu xx.lproj, gdy upuścisz folder, albo z nazwy pliku (Localizable_pl.strings). W przeciwnym razie wpisujesz go sam przed wygenerowaniem katalogu.

Dlaczego nie użyć migracji w Xcode?

Dla całego projektu użyj jej: obsługuje też .stringsdict i zna Twój kod. Ten konwerter jest do pojedynczych plików, bez otwierania projektu, na przykład eksportu od tłumacza albo testu.

Czy liczba mnoga z .stringsdict jest konwertowana?

Nie, czytane są tylko pliki .strings. Liczbę mnogą odtwarzasz w Xcode jako warianty plural w katalogu.

Mój plik .strings jest w UTF-16, czy to problem?

Nie, kodowanie UTF-16 plików generowanych przez Xcode jest wykrywane automatycznie, tak jak UTF-8.

Czy wygenerowany katalog jest poprawny?

To JSON w formacie String Catalog (wersja 1.0). Kompiluje się narzędziem xcstringstool z Xcode, ale otwórz go w Xcode i przejrzyj diff przed commitem.

Czym to się różni od LocalePilot?

To narzędzie konwertuje pliki jednorazowo. LocalePilot to aplikacja desktopowa, kończona właśnie na macOS, która edytuje .xcstrings, sprawdza placeholdery, tłumaczy z AI i eksportuje z kopią zapasową.

Daj mi znać o premierze

LocalePilot jest na etapie finalizacji. Zostaw swój adres e-mail, aby dowiedzieć się o premierze.

  • macOS 12 lub nowszy · Ollama lub LM Studio opcjonalnie
  • Interfejs aplikacji po angielsku, francusku, hiszpańsku, włosku i portugalsku.