Protecção contra desvio de chaves de tradução
Usar strings em inglês como chaves de tradução é conveniente até alguém editar o inglês. A chave deixa de corresponder, todos os locales caem para a chave, e a página é apresentada em inglês sem erro, sem aviso e sem nenhum teste a falhar. A regressão é invisível até um falante nativo reparar.
CATEGORIA
SEO internacional
FORMATO
translation-key-drift-guard.md
QUANDO USAR ISTO
Use em qualquer site cujas chaves de tradução sejam o texto original em inglês, onde editar um título reverte silenciosamente todas as outras línguas.
O ficheiro da competência
translation-key-drift-guard.md
---
name: translation-key-drift-guard
description: Use em qualquer site cujas chaves de tradução sejam o texto original em inglês, onde editar um título reverte silenciosamente todas as outras línguas.
---
# Protecção contra desvio de chaves de tradução
Usar strings em inglês como chaves de tradução é conveniente até alguém editar o inglês. A chave deixa de corresponder, todos os locales caem para a chave, e a página é apresentada em inglês sem erro, sem aviso e sem nenhum teste a falhar. A regressão é invisível até um falante nativo reparar.
## O que precisa primeiro
- A árvore de código que contém as chamadas de tradução
- Os ficheiros de locale
## Método
1. Extraia todos os literais passados à função de tradução em templates e código da aplicação, tratando os dois estilos de aspas.
2. Compare esse conjunto com as chaves presentes em cada ficheiro de locale. Tudo o que esteja no código mas falte num locale é uma string que vai ser apresentada em inglês em silêncio.
3. Verifique a paridade de placeholders nos dois sentidos: uma chave que contém um placeholder nomeado cuja tradução o deixou cair produz uma frase partida em runtime, não um erro.
4. Reporte as chaves presentes num locale mas ausentes do código como órfãs - seguras de remover, e um sinal de que uma string inglesa foi editada.
5. Ligue a verificação ao caminho de release para que termine com código diferente de zero. Uma verificação que ninguém corre não é uma verificação.
6. Prove que falha: apague uma chave e confirme que a execução parte, depois reponha. Uma asserção que nunca se viu falhar não é de confiança.
## O que isto produz
Um relatório por locale com chaves em falta, discrepâncias de placeholders e órfãs, com uma saída diferente de zero capaz de bloquear um deploy.
## Onde isto corre mal
- Construir a verificação mas nunca confirmar que falha mesmo perante uma regressão real
- Ignorar a paridade de placeholders, que parte frases em vez de apenas as reverter
- Tratar as chaves órfãs como ruído quando são normalmente prova de que o texto inglês foi editado sem actualizar os locales
---
Da biblioteca de competências da QuQi - https://www.quqi.io/pt/skills/translation-key-drift-guard
Transferência gratuita · sem conta, sem e-mail
O que precisa primeiro
-
A árvore de código que contém as chamadas de tradução
-
Os ficheiros de locale
Método
-
01
Extraia todos os literais passados à função de tradução em templates e código da aplicação, tratando os dois estilos de aspas.
-
02
Compare esse conjunto com as chaves presentes em cada ficheiro de locale. Tudo o que esteja no código mas falte num locale é uma string que vai ser apresentada em inglês em silêncio.
-
03
Verifique a paridade de placeholders nos dois sentidos: uma chave que contém um placeholder nomeado cuja tradução o deixou cair produz uma frase partida em runtime, não um erro.
-
04
Reporte as chaves presentes num locale mas ausentes do código como órfãs - seguras de remover, e um sinal de que uma string inglesa foi editada.
-
05
Ligue a verificação ao caminho de release para que termine com código diferente de zero. Uma verificação que ninguém corre não é uma verificação.
-
06
Prove que falha: apague uma chave e confirme que a execução parte, depois reponha. Uma asserção que nunca se viu falhar não é de confiança.
O que isto produz
Um relatório por locale com chaves em falta, discrepâncias de placeholders e órfãs, com uma saída diferente de zero capaz de bloquear um deploy.
Onde isto corre mal
-
Construir a verificação mas nunca confirmar que falha mesmo perante uma regressão real
-
Ignorar a paridade de placeholders, que parte frases em vez de apenas as reverter
-
Tratar as chaves órfãs como ruído quando são normalmente prova de que o texto inglês foi editado sem actualizar os locales
Mais em SEO internacional