Виявлення токенів
«Виявлення токенів» — це спосіб, у який SDK визначає, що потрібно перекладати, автоматично, на основі того, як ви пишете свій інтерфейс. Є чотири будівельні блоки, кожен для свого типу вмісту.
t() — рядок у тексті коду
Основний робочий інструмент. Викличте його з вихідним текстом — і він поверне переклад для поточної локалі (або сам вихідний текст, якщо ця локаль ще не готова). Необов’язкова категорія групує пов’язані фрази й передається машинному перекладачеві як контекст; параметри підставляються в {placeholders}.
const t = useT();
// t(phrase, category?, params?)
t('Hello, {name}!', 'Greetings', { name }); <Translate> — блок контенту
Обгорніть ділянку розмітки — і SDK токенізує її в контентний блок: кожен текстовий вузол стає фразою, а при кожній зміні локалі весь блок перекладається повторно. Блок ідентифікується стабільним id, похідним від його вмісту та категорії, тож той самий блок розпізнається між рендерами та перезавантаженнями.
<Translate category="Home">
<p>Welcome to our store. Browse the catalog in your language.</p>
</Translate> <Phrase> — одне речення з розміткою
Коли речення містить вбудовану розмітку чи інтерполяцію, <Phrase> зберігає його як єдину одиницю перекладу — тож «Привіт, Sarah, у вас 3 елементи» перекладається як одне природне речення, а не розрізнені фрагменти. Підтримує параметри та множину.
<Phrase category="Cart" params={{ name: 'Sarah', count: 3 }}>
Hi %name%, you have %count% items in your cart.
</Phrase> Маркери заповнювачів. Записуйте інтерполяцію як {name}. Усередині розмітки, де фреймворк уже використовує { } (JSX, Vue, Svelte), натомість пишіть %name% — SDK перетворить це назад на {name}, коли захоплюватиме фразу.
<DontTranslate> — не чіпати
Назви брендів, код, ідентифікатори, адреси — позначте ділянку, яку не потрібно перекладати. Вона відображається як translate="no" і повністю пропускається під час виявлення.
<p>Welcome! <DontTranslate>This sentence always stays in English.</DontTranslate> Thanks for visiting!</p> Виявлення працює лише з ключем для запису. У браузері ви постачаєте ключ лише для читання, тож SDK нічого не реєструє — він лише отримує переклади, які вже існують. Реєстрація — це завдання етапу розробки. Дивіться Ключі та середовища.