Internacionalizar componentes internationalizing-components

Internacionalize seus componentes e caixas de diálogo para que suas cadeias de caracteres da interface do usuário possam ser apresentadas em idiomas diferentes. Os componentes projetados para internacionalização permitem que as sequências de caracteres da interface sejam externalizadas, traduzidas e, em seguida, importadas para o repositório. No tempo de execução, as preferências de idioma do usuário ou o local da página determinam qual idioma é exibido na interface do usuário.

chlimage_1-9

Use o processo a seguir para internacionalizar seus componentes e fornecer a interface do usuário em diferentes idiomas:

  1. Implemente seus componentes usando um código que internacionalize strings. O código identifica as cadeias de caracteres a serem traduzidas e seleciona o idioma a ser apresentado no tempo de execução.

  2. Criar dicionários e adicionar as sequências de caracteres em inglês a serem traduzidas.

  3. Exportar o dicionário para o formato XLIFF, traduza as cadeias de caracteres e importar os arquivos XLIFF de volta no AEM. Como alternativa, você pode adicionar traduções manualmente ao dicionário.

  4. Incorpore o dicionário no processo de gerenciamento de versões do seu aplicativo.

NOTE
Os métodos descritos aqui para internacionalizar componentes destinam-se a traduzir strings estáticas. Quando espera-se que as cadeias de caracteres do componente mudem, você deve usar fluxos de trabalho de tradução convencionais. Por exemplo, quando os autores podem editar uma sequência de caracteres da interface usando propriedades na caixa de diálogo Editar de um componente, você não deve usar um dicionário de idioma para internacionalizar a sequência.

Dicionários de idiomas language-dictionaries

A estrutura de internacionalização do 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 idioma padrão. As cadeias de caracteres são identificadas usando a versão em inglês. Normalmente, as estruturas de internacionalização usam IDs alfanuméricas para strings de interface. O uso da versão em inglês da string como ID tem várias vantagens:

  • O código é fácil de ler.
  • O idioma padrão está sempre disponível.

As cadeias de caracteres localizadas podem ser armazenadas em vários dicionários no repositório. Os dicionários do sistema AEM estão localizados abaixo do /libs nó. Você pode criar dicionários para os seus componentes abaixo de /apps nó. A estrutura de internacionalização do AEM combina os dicionários e os disponibiliza no Sling como um único ResourceBundle objeto. Quando os componentes são renderizados, eles recuperam as strings traduzidas do conjunto de recursos. Os dicionários combinados também são implantados no servidor Web no formato JSON para fornecer strings traduzidas para o código JavaScript em páginas da Web.

Além disso, a variável Ferramenta Tradução O permite gerenciar todos os dicionários de uma localização central.

chlimage_1-10

NOTE
Não modifique os dicionários do sistema AEM localizados abaixo de /libs nó.

Sobreposição de strings em dicionários do sistema overlaying-strings-in-system-dictionaries

Cadeias de caracteres em dicionários abaixo do /apps substituem as cadeias de caracteres duplicadas nos dicionários que estão abaixo de /libs nó. Se os componentes usarem strings incluídas nos dicionários do sistema AEM, duplique a string no seu próprio dicionário. Todos os componentes usarão as strings do seu dicionário.

Observe que você não pode prever qual tradução é usada quando as cadeias de caracteres são duplicadas em dicionários localizados abaixo de /apps nó.

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2