Czym jest lokalizacja oprogramowania?
Lokalizacja oprogramowania to proces dostosowywania produktu programistycznego — jego interfejsu użytkownika, komunikatów o błędach, procesu wdrażania, powiadomień, treści pomocy i opisów w sklepach z aplikacjami — tak aby działał naturalnie dla użytkowników posługujących się innym językiem i na innym rynku. Obejmuje oprogramowanie desktopowe, aplikacje SaaS i webowe, aplikacje mobilne na iOS i Androida, gry oraz pliki zasobów dla programistów, z których te produkty są budowane.
Lokalizacja oprogramowania różni się od tłumaczenia dokumentu na trzy sposoby. Treść to zbiór kluczy (ciągów znaków), a nie stron. Zmienia się z każdym sprintem, a nie jednorazowo. I trafia do kompilacji, a nie do czytelnika, więc uszkodzony placeholder lub zniekształcony tag może spowodować awarię aplikacji lub zablokować wydanie. Dlatego dedykowana platforma do lokalizacji oprogramowania zarządza ciągami znaków, kluczami i formatami plików zamiast dokumentami.
Lokalizacja oprogramowania a lokalizacja aplikacji a lokalizacja formatów plików
„Lokalizacja oprogramowania” to termin nadrzędny. „Lokalizacja aplikacji” oznacza zwykle aplikacje mobilne na iOS i Androida, z ich własnymi formatami zasobów i opisami w sklepach z aplikacjami. „Lokalizacja formatów plików” to praktyczna warstwa leżąca u podstaw obu: tłumaczenie plików XLIFF, JSON, PO, XML, YAML i plików z ciągami znaków bez naruszania ich struktury. Ten przewodnik obejmuje wszystkie trzy.
Miejsce lokalizacji oprogramowania w Twoim zestawie narzędzi lokalizacyjnych
Lokalizacja oprogramowania to jeden z obszarów pracy w ramach szerszego programu lokalizacji. Jeśli wybierasz platformę, która go obsługuje — zarządzanie tłumaczeniami, edytor CAT, pamięć tłumaczeniowa, terminologia i dostawcy — zacznij od naszego przewodnika po platformach lokalizacyjnych i systemach TMS, na którym opiera się ten przewodnik. Tutaj skupiamy się na tym, co jest specyficzne dla oprogramowania: ciągach znaków, formatach, procesach pracy programistów i cyklu wydań.
Podejście Smartcat polega na uczynieniu platformy głównym źródłem prawdy dla tekstów produktowych. Proces lokalizacji produktów wykorzystuje Współpracownika ds. Produktu i Inżynierii, który automatyzuje wyodrębnianie, tłumaczenie i publikowanie treści produktów i aplikacji oraz integruje się z Twoim potokiem CI/CD, a strona poświęcona oprogramowaniu do zarządzania projektami lokalizacyjnymi pokazuje, jak programiści, menedżerowie i recenzenci dzielą jedną przestrzeń roboczą z dostępem przez API i konektory do GitHuba, Figmy i innych narzędzi. Wydanie z marca 2023 roku, które wprowadziło wspólne projekty lokalizacji oprogramowania, wyjaśnia dlaczego: autorzy tekstów UX i menedżerowie produktu mogą samodzielnie zmieniać teksty, nie odciągając programistów od pracy.
Podstawy internacjonalizacji (i18n)
Internacjonalizacja — w skrócie i18n, od 18 liter między „i” a „n” w angielskim słowie „internationalization” — to prace inżynieryjne, dzięki którym oprogramowanie jest gotowe do lokalizacji. Lokalizacja (l10n) to dostosowywanie go do każdego rynku. Ta różnica ma znaczenie: internacjonalizacja to zadanie programistyczne wykonywane raz w bazie kodu, a lokalizacja to powtarzalne zadanie dotyczące treści, wykonywane dla każdego języka i każdego wydania. Przewodnik Smartcat dla początkujących po internacjonalizacji w projektowaniu oprogramowania dzieli i18n na trzy obszary — projektowanie interfejsu użytkownika, format i przechowywanie danych oraz procesy i narzędzia — i wyjaśnia, jak znaleźć w firmie orędownika internacjonalizacji.
Lista kontrolna i18n przed rozpoczęciem lokalizacji
Wyodrębnij każdy ciąg znaków widoczny dla użytkownika
Przenieś tekst z kodu do plików zasobów — JSON lub YAML w aplikacjach webowych, strings.xml w Androidzie, .strings lub String Catalogs w iOS, pliki PO w projektach opartych na gettext. Nadaj każdemu ciągowi znaków stały klucz, aby tłumaczenia przetrwały refaktoryzację.
Używaj placeholderów i reguł liczby mnogiej zamiast konkatenacji
Konstrukcji „You have ” + n + „ files” nie da się poprawnie przetłumaczyć. Używaj nazwanych placeholderów i składni uwzględniającej liczbę mnogą, takiej jak ICU MessageFormat, którą Smartcat obsługuje natywnie lub jako surowe ciągi znaków w projektach lokalizacji oprogramowania.
Projektuj z myślą o wydłużeniu tekstu i kierunku pisma
Teksty po niemiecku i fińsku są dłuższe niż po angielsku; arabski i hebrajski zapisuje się od prawej do lewej. Unikaj przycisków o stałej szerokości i testuj układy wcześnie — najlepiej w pliku projektu, zanim powstanie kod (zobacz Figma i lokalizacja interfejsu użytkownika (UI)).
Przechowuj i formatuj dane zgodnie z ustawieniami regionalnymi
Używaj wszędzie kodowania UTF-8, a daty, liczby, waluty i adresy formatuj za pomocą bibliotek uwzględniających ustawienia regionalne zamiast zakodowanych na stałe wzorców.
Internacjonalizacja to także problem organizacyjny. Zespół lokalizacji Zendesk opisuje, w jaki sposób włącza lokalizację w prace działów produktu i inżynierii, w materiale podejście Zendesk, dostępnym również jako nagranie wystąpienia, a panel poświęcony strategii produktu gotowego na rynki globalne gromadzi liderów lokalizacji, którzy rozmawiają o rozwoju zawodowym i mentoringu w branży globalizacji.
Jak działa lokalizacja oprogramowania w Smartcat
Oprócz standardowych projektów dokumentów Smartcat oferuje projekty lokalizacji oprogramowania, które zarządzają kluczami bezpośrednio. Klucze są przechowywane w kolekcjach; projekt może zawierać kilka kolekcji, a Smartcat pilnuje, by klucze w każdej z nich były unikalne. Typowy przepływ pracy, opisany w dokumentacji dla programistów dotyczącej projektów lokalizacji oprogramowania, wygląda następująco:
Utwórz projekt i zaimportuj klucze
Utwórz projekt lokalizacji oprogramowania, wybierz języki źródłowe i docelowe oraz zaimportuj klucze w formacie JSON, YAML, iOS .strings, Android XML lub LocJSON — ręcznie, przez API lub CLI albo automatycznie z repozytorium GitHub, GitLab lub Bitbucket.
Dodaj kontekst i edytuj tekst źródłowy
Dodawaj etykiety i kontekst, np. zrzuty ekranu, a także twórz lub edytuj klucze i tekst źródłowy bezpośrednio w edytorze CAT — w tym klucze ze wszystkimi formami liczby mnogiej.
Tłumacz z AI i weryfikuj
Agent Lokalizacji Oprogramowania tłumaczy z wykorzystaniem Twojej pamięci tłumaczeniowej i glosariuszy; wynik zatwierdzają wewnętrzni recenzenci lub specjaliści zatrudnieni za pośrednictwem platformy usług lokalizacji aplikacji.
Eksportuj lub synchronizuj z powrotem do kodu
Programiści eksportują potrzebny im podzbiór kluczy w wybranym formacie albo pozwalają, by integracja z Gitem automatycznie przesyłała tłumaczenia z powrotem — po ich ukończeniu lub zaraz po osiągnięciu wybranego etapu przepływu pracy.
Smartcat nazywa to podejście „źródłem prawdy dla tekstów w Twoim oprogramowaniu”: menedżerowie produktu i autorzy tekstów UX odpowiadają za treść, a programiści z niej korzystają. Ogólny przegląd z perspektywy biznesowej znajdziesz na stronie lokalizacja aplikacji, która łączy tłumaczenie AI z weryfikacją przez ekspertów i lokalizacją treści w sklepach z aplikacjami.
Lokalizacja aplikacji mobilnych dla systemów iOS i Android
Lokalizacja aplikacji wiąże się z własnymi ograniczeniami: formatami zasobów specyficznymi dla platformy, małą ilością miejsca w interfejsie, opisami i zrzutami ekranu w sklepach z aplikacjami oraz częstymi wydaniami. Proces lokalizacji aplikacji mobilnych w Smartcat składa się z czterech kroków — załóż konto, połącz aplikację na Androida, iOS lub w Javie, przetłumacz ją za pomocą Agenta Lokalizacji Oprogramowania i recenzentów, a następnie prześlij przetłumaczoną treść z powrotem do aplikacji. Obszerny przewodnik lokalizacja aplikacji mobilnych: wszystko, co powinni wiedzieć programiści omawia strategię i proces dla obu platform.
Lokalizacja aplikacji iOS
Aplikacje iOS przechowują ciągi znaków w plikach .strings i .stringsdict, a nowsze projekty — w katalogach ciągów Xcode (.xcstrings); wszystkie trzy formaty znajdują się na liście plików obsługiwanych przez Smartcat. Integracja z Gitem dla iOS automatycznie wyszukuje i pobiera pliki .strings z repozytorium oraz przesyła z powrotem przetłumaczone pliki zasobów — po ich ukończeniu lub po osiągnięciu wybranego etapu przepływu pracy. Przydaje się to, gdy chcesz mieć w repozytorium ciągi przetłumaczone maszynowo jeszcze przed zakończeniem weryfikacji przez ludzi. Strona lokalizacja w Xcode omawia zarządzanie kluczami i formy liczby mnogiej, a wtyczka do tłumaczenia iOS dla Xcode i Gita podsumowuje konfigurację. Szczegółowy opis krok po kroku znajdziesz w artykule jak zlokalizować treść aplikacji iOS, który obejmuje implementację, testowanie i debugowanie, wdrożenie oraz najlepsze praktyki.
Lokalizacja aplikacji na Androida
Aplikacje na Androida przechowują ciągi znaków w pliku res/values/strings.xml, z osobnym folderem values dla każdej wersji regionalnej. Integracja Gita z Androidem pobiera zasoby ciągów XML z repozytorium do Smartcat i automatycznie przesyła z powrotem przetłumaczone pliki, w tym częściowo ukończone tłumaczenia, jeśli stosujesz hybrydowy przepływ pracy łączący tłumaczenie maszynowe i ludzkie. Wtyczka do tłumaczenia Androida łączy się za pomocą klucza SSH zarejestrowanego na serwerze Git (lub użytkownika Smartcat dodanego jako współpracownik repozytorium), pozwala wybrać przepływ pracy oparty wyłącznie na AI lub AI z weryfikacją i umożliwia planowanie automatycznych synchronizacji. Powiązane strony dotyczą zlokalizowanych ciągów w Androidzie, usług lokalizacji aplikacji na Androida, tłumaczenia aplikacji na Androida oraz wtyczki do lokalizacji w Android Studio. Przewodnik po lokalizacji aplikacji na Androida wyjaśnia kwestie wersji regionalnych, narzędzi, kolejnych kroków, wskaźników sukcesu i typowych wyzwań.
Opisy w sklepach z aplikacjami i strony produktów
Lokalizacja nie kończy się na pliku binarnym. Tytuły, opisy, słowa kluczowe i zrzuty ekranu w sklepie decydują o tym, czy użytkownicy na nowym rynku w ogóle pobiorą aplikację. Przepływ pracy lokalizacji produktu obejmuje lokalizację stron produktów aplikacji wraz ze zlokalizowanymi zrzutami ekranu, tytułami, opisami i słowami kluczowymi, a ta sama konfiguracja AI z weryfikacją ma zastosowanie ogólnie do lokalizacji aplikacji.
Lokalizacja aplikacji w praktyce
Dwie historie klientów pokazują, jak wygląda to w przypadku aplikacji konsumenckich: jak aplikacja dotycząca zdrowia kobiet Flo usprawniła lokalizację w sytuacji, gdy precyzyjna terminologia medyczna jest niezbędna, oraz jak zespół stojący za Simple: Intermittent Fasting App zlokalizował ją na sześć języków i dlaczego kluczowy okazał się dobrze zbudowany zespół.
Formaty plików lokalizacyjnych: XLIFF, JSON, PO, XML, YAML i inne
Oprogramowanie rzadko trafia do tłumaczenia w postaci dokumentów Word. Najczęściej są to pliki zasobów i pliki wymiany, których klucze, tagi, symbole zastępcze i zagnieżdżenia muszą przejść przez tłumaczenie nienaruszone. Centrum pomocy Smartcat zawiera listę wszystkich obsługiwanych formatów plików; w przypadku lokalizacji są to m.in. XLIFF 1.2 i 2.0, SDLXLIFF, MQXLIFF, PO/POT, Android XML, RESX, JSON, LocJSON, YAML, Apple .strings, .stringsdict i .xcstrings, Java .properties oraz Markdown. Każdy z głównych formatów wymienionych poniżej ma osobną stronę, która wyjaśnia, co zostaje zachowane.
| Format | Zwykle używane do | Co zachowuje Smartcat |
|---|---|---|
| XLIFF 1.2 / 2.0, SDLXLIFF | Wymiana danych między systemami CMS, narzędziami autorskimi a narzędziami CAT | Kody śródliniowe chronione; jednostki translate="no" zablokowane; eksport do XLIFF 1.2 |
| JSON | Pliki lokalizacyjne dla stron internetowych i aplikacji | Te same klucze i zagnieżdżenia; tłumaczone są tylko wartości tekstowe; symbole zastępcze blokowane regułami regex |
| Gettext PO / POT | Oprogramowanie open-source i po stronie serwera (GNU gettext) | Zmienne takie jak %s i {name} stają się chronionymi tagami; komentarze programistów wyświetlane jako kontekst |
| XML | Pliki konfiguracyjne, eksporty zawartości, zasoby Androida | Znaczniki, atrybuty i sekcje CDATA nienaruszone; elementy do tłumaczenia wybierane za pomocą XPath |
| YAML, iOS .strings, Android XML | Zasoby ciągów aplikacji i frameworka | Importowane i eksportowane jako klucze w projektach lokalizacji oprogramowania |
| IDML | Układy Adobe InDesign (instrukcje, przewodniki po interfejsie, opakowania) | Tekst wyodrębniany z wątków (stories); przetłumaczony plik IDML eksportowany z zachowaniem formatowania |
XLIFF i SDLXLIFF
XLIFF (XML Localization Interchange File Format) to standardowy sposób przenoszenia treści do tłumaczenia między systemami. Edytor XLIFF w Smartcat importuje pliki XLIFF 1.2 i 2.0, wyświetla tekst źródłowy i docelowy obok siebie z chronionymi kodami śródliniowymi, pozostawia zablokowane jednostki translate="no" i eksportuje do XLIFF 1.2 — wersji, którą większość narzędzi importuje bez problemów. Obsługę XLIFF 2.0 ogłoszono w 2022 roku; Smartcat automatycznie wykrywa wersję niezależnie od tego, czy przesyłasz plik ręcznie, czy przez API. Jeśli potrzebujesz szybkiego rozwiązania w przeglądarce, zobacz bezpłatny edytor XLIFF online oraz tłumacz XLF; użytkownicy Trados mogą przenieść pliki .sdlxliff do tłumacza SDLXLIFF, który stosuje pamięć tłumaczeniową, glosariusze i weryfikację przez ludzi.
Aby poznać sam format, zacznij od artykułu czym jest plik XLIFF?, a następnie przeczytaj XLIFF w lokalizacji oprogramowania, gdzie wyjaśniono, kiedy XLIFF sprawdza się w przypadku ciągów znaków i jak agenci AI automatyzują przepływ pracy. Zespoły e-learningowe eksportujące treści z narzędzi autorskich docenią artykuł wielojęzyczny XLIFF w tłumaczeniu kursów oraz artykuł pomocy o tym, jak tłumaczyć pliki XLIFF; ten drugi zaleca XLIFF 1.2 jako format zapewniający najczystszy eksport i ponowny import.
JSON
JSON to domyślny format plików regionalnych w większości aplikacji internetowych i JavaScript. Tłumacz JSON analizuje plik, tłumaczy tylko wartości tekstowe i zwraca plik z tymi samymi kluczami i zagnieżdżeniami, a tokeny symboli zastępczych są blokowane jako tagi zgodnie z regułami regex, które definiujesz raz. Ponieważ ciągi zachowują identyfikatory kluczy, pamięć tłumaczeniowa może dopasowywać zarówno klucz, jak i tekst. Na wejściu jeden plik en.json, na wyjściu de.json, ja.json i pt-BR.json.
W przypadku pojedynczego pliku bezpłatny tłumacz JSON to ten sam silnik z przepływem pracy w przeglądarce, dostępny w ramach 15-dniowego okresu próbnego z 15 000 Smartwords i bez karty kredytowej. Powiązane strony dotyczą tłumaczenia JSON online, tłumaczenia plików JSON z AI, edytora plików tłumaczeń JSON, platformy lokalizacji JSON dla zespołów programistów, tłumacza JSON z AI do lokalizacji aplikacji oraz przepływu pracy JSON–Excel dla zespołów, których recenzenci wolą arkusze kalkulacyjne.
Pliki Gettext PO
Plik PO (Portable Object) to format tekstowy używany przez GNU gettext: każdy wpis łączy ciąg źródłowy (msgid) z jego tłumaczeniem (msgstr), więc jeden plik PO zawiera jeden język. Tłumaczenie plików Gettext PO w Smartcat zamienia zmienne takie jak %s i {name} w chronione tagi, wyświetla tłumaczom komentarze programistów jako kontekst i oferuje trzy parsery — Default PO, Serge.io PO i Monolingual PO. W przypadku parsera Serge.io ponowne przesłanie pliku powoduje ponowne przetworzenie tylko tych ciągów, których tekst źródłowy się zmienił. Artykuł pomocy o tłumaczeniu plików PO w Smartcat wyjaśnia działanie każdego parsera oraz sposób przesyłania szablonu .pot.
XML i YAML
Zwykłe narzędzia do tłumaczenia psują pliki XML, ponieważ traktują znaczniki, atrybuty i sekcje CDATA jak tekst. Tłumacz XML korzysta z konfigurowalnego parsera: raz określasz za pomocą XPath, które elementy i atrybuty zawierają tekst do tłumaczenia, a wszystko poza tymi ścieżkami pozostaje nietknięte, dzięki czemu pobrany plik jest poprawnym składniowo XML-em, który Twój system może przetworzyć. Pliki konfiguracyjne i regionalne YAML — powszechne w Ruby on Rails, Symfony i wielu generatorach stron statycznych — obsługuje tłumacz YAML, który importuje, edytuje i eksportuje pliki YAML w ramach tego samego przepływu pracy lokalizacji oprogramowania.
InDesign i IDML
Zespoły tworzące oprogramowanie dostarczają również materiały drukowane i PDF — skrócone instrukcje obsługi, opakowania, karty z opisem interfejsu — zwykle przygotowywane w programie Adobe InDesign. Tłumacz IDML wyodrębnia tekst z wątków (stories) pliku i eksportuje przetłumaczony plik IDML, który otwierasz w InDesign, aby jednorazowo dopracować układ. Zobacz także tłumaczenie Adobe InDesign z AI, lokalizację plików InDesign oraz usługę tłumaczenia InDesign z weryfikacją przez ekspertów. Informacje o plikach Word, PowerPoint, Excel i innych formatach biurowych znajdziesz w przewodniku po tłumaczeniu dokumentów.
Przepływy pracy programistów: API, CLI i integracje z Gitem
Ręczna wymiana plików przestaje się sprawdzać już po kilku wydaniach. Smartcat daje programistom kilka sposobów na połączenie lokalizacji z ich potokiem — od konektorów niewymagających kodowania po REST API.
Lokalizacja oparta na Gicie
Dla większości zespołów produktowych integracja z Gitem to najszybsza droga do automatyzacji: Smartcat synchronizuje pliki źródłowe z repozytorium, tłumaczy je i przesyła zlokalizowaną treść z powrotem bez ręcznej obsługi plików. Zespoły mobilne mogą korzystać z opisanych wyżej integracji Git dla Androida i Git dla iOS przeznaczonych dla konkretnych platform.
Smartcat CLI
Smartcat CLI pozwala uruchamiać kroki lokalizacji z poziomu terminala lub zadania CI. Po wykonaniu smartcat login możesz importować i eksportować kolekcje kluczy, przesyłać i pobierać pliki oraz uruchamiać kroki synchronizacji pull i push; plik .smartcat w folderze roboczym przechowuje ustawienia danego projektu. Przewodnik dla programistów dotyczący projektów lokalizacji oprogramowania przedstawia CLI i API obok siebie, w tym kolekcję Postman, szablony ścieżek plików, dodawanie języków docelowych i obsługę form liczby mnogiej.
API tłumaczeń
Gdy potrzebujesz kontroli programowej — tworzenia projektów z poziomu własnego systemu, wysyłania treści w momencie publikacji lub natychmiastowego tłumaczenia maszynowego wewnątrz produktu — użyj API. Przewodniki po API omawiają uwierzytelnianie, limity zapytań, dokumenty, statystyki, śledzenie statusu, eksport, wywołania zwrotne (callbacks) i API czasu rzeczywistego; pamiętaj, że API jest dostępne z kont firmowych, a nie z kont freelancerów. Strona bezpłatnego API tłumaczeń wyjaśnia, jak przetestować integrację w ramach 15-dniowego okresu próbnego, podaje limit 4 zapytań na sekundę dla każdej metody i wymienia formaty lokalizacji oprogramowania dodawane przez API (json, structured-json, yaml, structured-yaml, ios-strings i android-xml).
Strony poświęcone konkretnym językom i technologiom pokazują tę samą platformę z różnych perspektyw: API tłumaczeń dla JavaScriptu, API tłumaczeń dla PHP, API tłumaczeń dla języków gudźarati i urdu oraz API tłumaczeń dla CMS, które wykrywa nowe lub zaktualizowane treści i automatycznie pobiera je do tłumaczenia. W przypadku stron internetowych API do tłumaczenia językowego dla stron internetowych wyjaśnia, kiedy API jest jedynie punktem wyjścia — a przewodnik po tłumaczeniu stron internetowych szczegółowo omawia aplikacje webowe, systemy CMS i witryny wielojęzyczne. Aby zobaczyć przepływy pracy oparte na API z perspektywy dostawcy usług językowych, obejrzyj wystąpienie na temat przepływów pracy tłumaczeniowej opartych na API.
Konektory dla pozostałych narzędzi
Nie każde źródło ciągów znaków jest repozytorium. Wtyczka do tłumaczenia dla Jiry pobiera dokumenty załączone do zgłoszeń Jira spełniających Twoje kryteria, tłumaczy je z użyciem Twoich glosariuszy i pamięci tłumaczeniowych, a następnie przesyła pliki z powrotem do pierwotnych zgłoszeń; ogłoszenie integracji z Jirą wskazuje, że synchronizacja odbywa się co 15 minut. Zespoły korzystające już z innego narzędzia do zarządzania ciągami mogą je podłączyć za pomocą integracji z Lokalise, która synchronizuje projekty Lokalise ze Smartcat przy użyciu klucza API i przesyła tłumaczenia z powrotem. Centra dla programistów i dokumentację API zbudowane w ReadMe można przetłumaczyć za pomocą wtyczki do tłumaczenia ReadMe.
Lokalizacja ciągła dla zespołów zwinnych
Lokalizacja ciągła oznacza, że tłumaczenie odbywa się równolegle z rozwojem oprogramowania, a nie po nim: nowe lub zmienione ciągi są wykrywane, tłumaczone i zwracane automatycznie, dzięki czemu każde wydanie trafia do użytkowników we wszystkich językach. Najtrudniejszy jest zwykle proces, a nie narzędzia. Strona oprogramowania do zarządzania projektami lokalizacyjnymi wyjaśnia, jak włączenie lokalizacji w zwinne cykle pozwala zespołom wydawać wielojęzyczne produkty jednocześnie, z wbudowanymi automatycznymi kontrolami i weryfikacją w kontekście.
Trzy filary lokalizacji ciągłej
(1) automatycznego wyzwalacza — synchronizacji z Gitem, kroku CLI w CI lub wywołania API przy każdym scaleniu; (2) przetwarzania przyrostowego, dzięki któremu tłumaczone są tylko nowe lub zmienione ciągi znaków (na przykład parser Serge.io PO ponownie przetwarza tylko zmieniony tekst źródłowy); oraz (3) automatycznego zwracania tłumaczeń do repozytorium, najlepiej bez blokowania kompilacji, jeśli weryfikacja wciąż trwa.
Przykłady z praktyki pokazują, jak zespoły osiągnęły ten cel:
Xsolla, globalny dystrybutor gier wideo, wdrożyła ciągłą lokalizację ze Smartcat i narzędziem open-source Serge, aby nadążyć za cyklami wydawniczymi liczonymi w tygodniach. Infobip, globalna platforma komunikacyjna, przeprowadził niskoryzykowny eksperyment, aby dopasować lokalizację do swoich zwinnych ram pracy — a później w prelekcji o trójkącie tłumaczeniowym przedstawił, jak na nowo zdefiniował współpracę z dostawcami. Zespół ds. dokumentacji i lokalizacji firmy Kaspersky, który tworzy i lokalizuje teksty interfejsu oraz artykuły pomocy dla jej mobilnych aplikacji zabezpieczających, opisuje, jak przeszedł na bardziej niezawodny, zwinny i zautomatyzowany proces. Z kolei Dataduck pokazuje, że ciągła lokalizacja nie jest zarezerwowana wyłącznie dla oprogramowania: agencja cyfrowa zastosowała to samo podejście do materiałów reklamowych.
Figma i lokalizacja interfejsu użytkownika (UI)
Lokalizacja na etapie projektowania pozwala wykryć wydłużenie tekstu, ucięte przyciski i problemy z układem od prawej do lewej, zanim trafią one do kodu. Wtyczka do tłumaczenia w programie Figma od Smartcat tłumaczy projekty na ponad 280 języków z zachowaniem układu i generuje podglądy na żywo, dzięki czemu recenzenci mogą sprawdzać tłumaczenia w kontekście w Edytorze Smartcat bez dodatkowych licencji Figma.
Dla zespołów programistycznych najważniejsze jest to, że Figma łączy się z tym samym przepływem pracy lokalizacji oprogramowania co Twój kod. Przyjazna dla programistów integracja z Figmą (2023) pozwala określać klucze bezpośrednio w Figmie, wysyłać je do projektu lokalizacji oprogramowania w Smartcat do przetłumaczenia i pobierać je z powrotem do interfejsu. W październiku 2026 roku wtyczka zyskała zarządzanie kluczami, warianty i eksport do JSON: każdy obiekt tekstowy otrzymuje klucz, którego nazwę można zmienić, jeden element może przechowywać kilka stanów treści (pusty, ładowanie, błąd), zduplikowane klucze są scalane, konflikty są oznaczane, a gotowa lokalizacja jest eksportowana jako plik JSON gotowy do użycia przez programistów.
Aktualizacja z lutego 2024 roku dodała możliwość wykluczania elementów lub ramek (nazw marek, CTA) z tłumaczenia, wieloetapowe przepływy pracy, obsługę komponentów Figma oraz formatowania tekstu. Konfiguracja oraz tryby Software Localization i Asset Translation są opisane w przewodniku pomocy dotyczącym łączenia Figmy ze Smartcat.
Testowanie lokalizacji i kontrola jakości
Przetłumaczone ciągi znaków to tylko połowa pracy; zlokalizowana wersja musi też działać. Testowanie lokalizacji sprawdza jakość językową (dokładność, terminologię, ton), jakość wizualną (ucięcia, nakładanie się elementów, czcionki, układ od prawej do lewej) oraz jakość funkcjonalną (symbole zastępcze, formy liczby mnogiej, formaty dat i liczb, sortowanie, wprowadzanie danych). Przewodnik po testowaniu lokalizacji omawia proces krok po kroku, trzyetapową listę kontrolną oraz sposób automatyzacji testów w Smartcat.
| Sprawdzenie | Co idzie nie tak | Jak wykryć to wcześniej |
|---|---|---|
| Symbole zastępcze i tagi | Zmienne przetłumaczone, przeniesione lub usunięte; kompilacja kończy się błędem | Parsery uwzględniające format, które blokują symbole zastępcze jako tagi (JSON, PO, XML, XLIFF) |
| Formy liczby mnogiej | Niepoprawne gramatycznie liczebniki w językach z kilkoma formami liczby mnogiej | Natywne klucze liczby mnogiej lub ICU MessageFormat w edytorze |
| Wydłużenie tekstu | Ucięte przyciski i etykiety | Tłumaczenie i podgląd w Figmie przed etapem kodu; weryfikacja w kontekście |
| Terminologia | Nazwy produktów i terminy interfejsu tłumaczone niespójnie | Glosariusze i pamięć tłumaczeniowa stosowane do każdego ciągu znaków |
| Kontekst | Niejednoznaczne krótkie ciągi znaków („Open”, „Save”) tłumaczone błędnie | Zrzuty ekranu, etykiety i komentarze programistów dołączone do kluczy |
Weryfikacja przez człowieka pozostaje zabezpieczeniem w przypadku tekstów interfejsu. Zespoły bez wewnętrznych recenzentów mogą zatrudnić specjalistów za pośrednictwem platformy usług lokalizacji aplikacji, która wykorzystuje dopasowywanie oparte na AI, aby znaleźć specjalistów ds. lokalizacji dla dowolnej pary językowej.
Zastosowania lokalizacji oprogramowania, w tym gier
Te same elementy składowe — klucze, formaty, konektory i weryfikacja — służą bardzo różnym zespołom.
Zespoły SaaS i produktowe
Firmy SaaS lokalizują ciągi znaków interfejsu w każdym sprincie, a do tego komunikaty w aplikacji, e-maile i treści pomocy. Strony poświęcone przepływowi pracy lokalizacji produktu, platformie lokalizacji oprogramowania i zarządzaniu projektami lokalizacyjnymi opisują, jak zespoły produktowe, inżynieryjne i lokalizacyjne dzielą jeden obszar roboczy. Historie Zendesk, Infobip i Kaspersky opisane w tym przewodniku są tego przykładami.
Aplikacje mobilne
Aplikacje konsumenckie lokalizują ciągi znaków, opisy w sklepach z aplikacjami i zrzuty ekranu, często na wiele języków jednocześnie. Zacznij od lokalizacji aplikacji mobilnych oraz studiów przypadku Flo i Simple w sekcji lokalizacja aplikacji.
Lokalizacja gier
Gry łączą w sobie wszystkie trudne problemy lokalizacyjne: duże ilości ciągów znaków interfejsu, dialogi i fabułę wymagające kreatywnej adaptacji, limity znaków oraz jednoczesne premiery. Praktyce tej poświęcone są dwie prelekcje z Localization Hub Smartcat: budowanie scentralizowanego zespołu lokalizacyjnego w branży gier wideo, przedstawiona przez szefa działu lokalizacji dużego studia, oraz wzloty i upadki tłumaczenia w branży gier, relacja studia z lokalizacji nagradzanego tytułu. Ciągami znaków z gier można zarządzać w tych samych projektach lokalizacji oprogramowania i przepływach pracy Git opisanych powyżej, a konfiguracja ciągłej lokalizacji firmy Xsolla wywodzi się właśnie z branży gier.
Dokumentacja dla programistów i e-learning
Portale dla programistów zbudowane na ReadMe można tłumaczyć za pomocą wtyczki ReadMe, a zespoły e-learningowe eksportujące pliki XLIFF z narzędzi autorskich mogą skorzystać z przewodnika po XLIFF dla twórców kursów. Strony internetowe i aplikacje webowe renderujące treści z systemu CMS omówiono w przewodniku po tłumaczeniu stron internetowych.
Narzędzia i zasoby do lokalizacji oprogramowania
Wszystkie strony Smartcat dotyczące lokalizacji oprogramowania, aplikacji i formatów plików, pogrupowane według zadań.
Lokalizacja oprogramowania i produktów
Aplikacje mobilne (iOS i Android)
XLIFF i formaty dwujęzyczne
JSON, PO, XML i YAML
InDesign i IDML
API i integracje
Przewodniki, studia przypadków i prelekcje dotyczące lokalizacji oprogramowania
Szczegółowe przewodniki, historie klientów i nagrane prelekcje z Localization Hub poświęcone lokalizacji oprogramowania i aplikacji.
Centrum pomocy i dokumentacja dla programistów
Dokumentacja produktowa i dla programistów krok po kroku dotycząca lokalizacji oprogramowania w Smartcat.