Alfa
O Compiler da Lingo.dev está em fase alfa. É instável, não é recomendado para utilização em produção e as APIs podem mudar entre versões.
O atributo data-lingo-override dá-lhe controlo preciso sobre traduções específicas. Quando precisa de uma tradução exata para uma marca, texto jurídico ou um título de marketing, adicione o atributo a qualquer elemento JSX e o Compiler utiliza as traduções que forneceu, em vez de as gerar com IA.
Utilização básica#
Passe um objeto que associa códigos de idioma a traduções:
<h1 data-lingo-override={{ es: "Bienvenido", de: "Willkommen", fr: "Bienvenue" }}>
Welcome
</h1>O Compiler utiliza o valor da substituição para cada idioma especificado. Para os idiomas que não constam do objeto de substituição, o Compiler gera as traduções normalmente.
Como funcionam as substituições#
O Compiler encontra um elemento JSX com data-lingo-override
Durante a fase de análise da AST, o Compiler deteta o atributo data-lingo-override no elemento.
Os valores de substituição são extraídos
A associação entre idioma e tradução é lida a partir do valor do atributo.
As substituições têm prioridade
Para cada idioma presente no objeto de substituição, o Compiler utiliza a tradução fornecida. A tradução por IA é ignorada para esses idiomas. Os idiomas que não constam da substituição são traduzidos normalmente.
Casos de utilização#
| Caso de utilização | Porquê substituir | Exemplo |
|---|---|---|
| Nomes de marcas | A IA pode localizar nomes que devem manter-se consistentes entre idiomas | data-lingo-override={{ es: "Lingo.dev", de: "Lingo.dev" }} |
| Texto de marketing | Formulação específica criada por um copywriter | data-lingo-override={{ es: "Tu motor de localizacion" }} |
| Texto jurídico | Os requisitos regulamentares exigem uma formulação exata | data-lingo-override={{ de: "Datenschutzerklarung" }} |
| Expressões idiomáticas e trocadilhos | Jogos de palavras que exigem criatividade humana | data-lingo-override={{ fr: "C'est la vie" }} |
| UI com limites rigorosos de caracteres | As traduções por IA podem exceder as restrições de espaço | data-lingo-override={{ ja: "OK" }} |
Exemplos#
Texto de parágrafo#
<p data-lingo-override={{ es: "Crea un motor de localizacion en Lingo.dev" }}>
Create a localization engine on Lingo.dev
</p>Atributos#
As substituições aplicam-se ao conteúdo de texto do elemento. No caso de atributos traduzíveis como placeholder, alt ou aria-label, o Compiler trata-os separadamente através do pipeline padrão de tradução de atributos.
Substituições parciais#
Não precisa de fornecer substituições para todos os idiomas de destino. Forneça apenas os idiomas que precisam de controlo manual:
<h2 data-lingo-override={{ ja: "はじめに" }}>
Getting Started
</h2>Neste exemplo, o japonês utiliza a substituição, enquanto todos os outros idiomas de destino recebem traduções geradas por IA.
Quando utilizar substituições vs. outras abordagens#
| Abordagem | Quando utilizar |
|---|---|
data-lingo-override | Elementos específicos para os quais conhece a tradução exata. |
| Glossário (Lingo.dev Engine) | Termos que devem ser traduzidos de forma consistente em toda a aplicação. |
| voz da marca (Lingo.dev Engine) | Preferências de tom e estilo que se aplicam a todas as traduções. |
| Prompts personalizados | instruções gerais de tradução para todo o conteúdo. |
As substituições são a opção mais granular — aplicam-se a um único elemento. Para garantir consistência em todo o projeto, utilize antes um glossário ou a voz da marca através do motor de localização da Lingo.dev.
