Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Pseudolocalização
Introdução
Ao criar um jogo, o processo de localização geralmente começa quando o desenvolvimento termina. Isso significa que as traduções não estão disponíveis durante o desenvolvimento para testar se o projeto está devidamente internacionalizado.
O Godot oferece a pseudolocalização como uma forma de testar o quão robusto o projeto é em relação a mudanças de idioma. A pseudolocalização simula alterações que podem ocorrer durante a localização. Dessa forma, quaisquer problemas relacionados à internacionalização podem ser reconhecidos logo cedo durante o desenvolvimento.
Ver também
Você pode ver como a pseudolocalização funciona em ação usando o projeto de demonstração de Pseudolocalização.
Ativando e configurando a pseudolocalização
Ativar a pseudolocalização e as configurações relacionadas a ela é tão simples quanto alternar uma caixa de seleção nas configurações do projeto. Essas configurações podem ser encontradas em após ativar a alternância na caixa de diálogo de configurações do projeto:
A pseudolocalização também pode ser alternada em tempo de execução a partir de um script.
Configurações de pseudolocalização
A pseudolocalização no Godot pode ser configurada de acordo com o caso de uso específico do projeto. Aqui estão as propriedades de pseudolocalização que podem ser configuradas através das configurações do projeto:
replace_with_accents: Substitui todos os caracteres na string por suas variantes acentuadas. "The quick brown fox jumped over the lazy dog" será convertido para "Ŧh̀é q́üíćḱ ḅŕôŵή f́ôx́ ǰüm̀ṕéd́ ôṽéŕ ŧh̀é łáźý d́ôǵ" quando esta configuração estiver ativa. Isso pode ser usado para detectar strings não traduzidas que não terão acentos, mas também é útil para verificar glifos ausentes na(s) fonte(s) utilizada(s) pelo projeto.double_vowels: Duplica todas as vogais na string. É uma boa aproximação para simular a expansão do texto durante a localização. Isso pode ser usado para verificar textos que transbordariam de seu contêiner (como botões).fake_bidi: Texto bidirecional falso (simula texto da direita para a esquerda). Isso é útil para simular sistemas de escrita da direita para a esquerda para verificar possíveis problemas de layout que ocorreriam em idiomas que usam escritas da direita para a esquerda.override: Substitui todos os caracteres na string por um asterisco (*). Isso é útil para encontrar rapidamente textos que não estão sendo localizados.expansion_ratio: Pode ser usado em casos onde duplicar as vogais não é uma aproximação suficiente. Esta configuração preenche a string com underscores (_) e a expande pela razão estipulada. Uma razão de expansão de0.3é suficiente para a maioria dos casos práticos; ela aumentará o comprimento da string em 30%.prefixesuffix: Essas propriedades podem ser usadas para especificar um prefixo e um sufixo para envolver o texto.skip_placeholders: Pula marcadores de posição para formatação de string como%se%f. Isso é útil para identificar locais onde mais argumentos são necessários para que a string formatada seja exibida corretamente.
Todas essas propriedades podem ser alternadas conforme necessário, de acordo com o caso de uso do projeto.
Configurando a pseudolocalização em tempo de execução
A pseudolocalização pode ser alternada em tempo de execução usando a propriedade pseudolocalization_enabled no TranslationServer. No entanto, se a configuração em tempo de execução das propriedades de pseudolocalização for necessária, elas podem ser configuradas diretamente usando ProjectSettings.set_setting(property, value) e então chamando TranslationServer.reload_pseudolocalization(), o que analisa novamente as propriedades de pseudolocalização e recarrega a pseudolocalização. O seguinte snippet de código deve ativar as propriedades replace_with_accents e double_vowels e então chamar reload_pseudolocalization() para que as alterações sejam refletidas:
ProjectSettings.set_setting("internationalization/pseudolocalization/replace_with_accents", true)
ProjectSettings.set_setting("internationalization/pseudolocalization/double_vowels", true)
TranslationServer.reload_pseudolocalization()