Internacionalizar componentes internationalizing-components
Internacionalize seus componentes e diálogos para que suas strings da interface do usuário possam ser apresentadas em idiomas diferentes. Os componentes projetados para internacionalização permitem que as cadeias de caracteres da interface do usuário sejam externalizadas, traduzidas e importadas para o repositório. No tempo de execução, as preferências de idioma do usuário ou a localidade da página determinam qual idioma é exibido na interface do usuário.
Use o seguinte processo para internacionalizar seus componentes e fornecer a interface do usuário em diferentes idiomas:
-
Implemente seus componentes usando o código que internacionaliza as cadeias de caracteres. Seu código identifica as cadeias de caracteres a serem traduzidas e seleciona o idioma a ser apresentado no tempo de execução.
-
Criar dicionários e adicionar as strings em inglês a serem traduzidas.
-
Exportar o dicionário para o formato XLIFF, traduza as cadeias de caracteres e importar os arquivos XLIFF retornam ao AEM. Como alternativa, você pode adicionar traduções manualmente ao dicionário.
-
Incorpore o dicionário ao processo de gerenciamento de versões do seu aplicativo.
Dicionários de idioma language-dictionaries
A estrutura de internacionalização de AEM usa dicionários no repositório para armazenar strings em inglês e suas traduções em outros idiomas. A estrutura usa inglês como o idioma padrão. As cadeias de caracteres são identificadas usando sua versão em inglês. Normalmente, as estruturas de internacionalização usam IDs alfanuméricas para strings da interface do usuário. Usar a versão em inglês da string como a ID tem várias vantagens:
- O código é fácil de ler.
- O idioma padrão está sempre disponível.
As strings localizadas podem ser armazenadas em vários dicionários no repositório. Os dicionários do sistema de AEM estão localizados abaixo do /libs
nó . Você pode criar dicionários para seus componentes abaixo do /apps
nó . O quadro de internacionalização da AEM combina os dicionários e os disponibiliza no Sling como um único ResourceBundle
objeto. Quando os componentes são renderizados, eles recuperam cadeias de caracteres traduzidas do pacote de recursos. Os dicionários combinados também são implantados no servidor da Web em formato JSON para fornecer strings traduzidas ao código Javascript nas páginas da Web.
Além disso, a variável Ferramenta Tradução permite gerenciar todos os dicionários de um local central.
/libs
nó .Sobreposição de strings nos dicionários do sistema overlaying-strings-in-system-dictionaries
Strings em dicionários abaixo da variável /apps
o nó substitui cadeias de caracteres duplicadas nos dicionários que estão abaixo do /libs
nó . Se os componentes usarem strings incluídas nos dicionários do sistema de AEM, duplique a string em seu próprio dicionário. Todos os componentes usarão as cadeias de caracteres do seu dicionário.
Observe que você não pode prever qual tradução será usada quando as cadeias de caracteres forem duplicadas em dicionários que estão todos localizados abaixo do valor /apps
nó .